2008-02-08  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/xmldoc.c:
	msxml3: Corrected test text.

2008-02-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Separate modifier from charset before detecting the charset codepage.

2008-02-08  Reece H. Dunn <msclrhd@hotmail.com>

	* dlls/user32/tests/listbox.c:
	user32: Make the listbox tests pass in directories other than dlls/user32/tests.

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

	* dlls/winspool.drv/info.c:
	winspool: Use the backend for AddPrinterDriverEx.

	* dlls/localspl/localspl_main.c:
	localspl: Implement fpAddPrinterDriverEx.

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

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Skip rest of the tests if we fail.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Change test for Windows 2003.

2008-02-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Upload p8 palette using GL_ALPHA instead of GL_RED.

2008-02-02  Lei Zhang <thestig@google.com>

	* dlls/quartz/main.c, dlls/quartz/quartz_private.h, dlls/quartz/regsvr.c,
	  dlls/quartz/videorenderer.c, include/uuids.h:
	quartz: Add VideoRendererDefault.

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

	* dlls/ws2_32/async.c, dlls/ws2_32/socket.c:
	ws2_32: Remove unneeded casts.

	* dlls/wnaspi32/winaspi16.c:
	wnaspi32: Remove unneeded cast.

2008-02-07  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Merge the encrypting and decrypting states, as encrypting and decrypting
	are allowed with the same key.

2008-02-07  Johan Gardell <gardin@gmail.com>

	* dlls/user32/sysparams.c:
	user32: Added support for SPI_SETMOUSESPEED in SystemParametersInfoW.

2008-02-07  Colin Finck <mail@colinfinck.de>

	* tools/widl/write_msft.c:
	widl: Write the TLB file in binary mode, so the line endings won't be changed.

	* tools/widl/utils.c, tools/widl/widl.c:
	widl: Support Windows paths in dup_basename and make_token.

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

	* dlls/localspl/localspl_main.c:
	localspl: Avoid sizeof in a trace.

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

	* dlls/comctl32/animate.c:
	comctl32: Move the getting of the DC outside of ANIMATE_DrawFrame.
	This allows the handle to the DC to be passed in the WM_CTLCOLORSTATIC
	message sent to the parent.

2008-02-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Restore the Window size on reset.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/tests/device.c:
	d3d9: Implement the device lost state.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Reject unsupported modes when restting the device.

	* dlls/wined3d/directx.c:
	wined3d: Add some ATI cards to the version database.

	* dlls/wined3d/directx.c:
	wined3d: Add infrastructure for faking driver versions.
	Often the Linux / MacOS graphics driver version is of no use for
	finding a proper driver version to report to the D3D app. So this
	patch adds some infrastructure for easy hardcoding of card specific
	driver versions to report to the application. This helps applications
	which make assumptions based on the driver version, like bug
	workarounds.

2008-01-26  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/comctl32/tests/datetime.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Vista sends an unidentified message when destroying datetime and
	monthcal windows.

2008-02-07  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/uxtheme/tests/system.c:
	uxtheme: Fix the system tests so they pass on Vista.

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

	* dlls/advapi32/tests/security.c, dlls/kernel32/tests/actctx.c,
	  dlls/kernel32/tests/toolhelp.c, dlls/ntdll/tests/exception.c,
	  dlls/ole32/tests/marshal.c, dlls/rpcrt4/tests/server.c,
	  dlls/shell32/tests/shellpath.c, dlls/user32/tests/cursoricon.c,
	  include/wine/test.h:
	tests: Add a helper routine to wait for a child process and propagate its
	result correctly.

2008-02-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Test using carriage returns in SQL queries and imported tables.

2008-02-05  Andrey Esin <andrey@esin.name>

	* programs/cmd/Ru.rc:
	cmd: Additions to Russian translation.

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

	* dlls/url/url.spec, dlls/url/url_main.c:
	url: Add a stub for AddMIMEFileTypesPS.

2008-02-05  Christopher Harvey <arbuckle911@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Added WGL_BIND_TO_TEXTURE_DEPTH_NV to ConvertAttribWGLtoGLX.

2008-02-03  Bang Jun-young <junyoung@mogua.com>

	* dlls/comctl32/listview.c:
	comctl32: Fix invalid syntax.

2008-01-29  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_main.c:
	shell32: Use LocalFree in CommandLineToArgvW.

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

	* dlls/msvfw32/drawdib.c:
	msvfw32: Avoid possible dereference of NULL pointer (Coverity).

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

	* dlls/gdi32/gdi32.spec, dlls/gdi32/printdrv.c:
	gdi32: Add stub for GdiInitSpool and GdiGetSpoolMessage.

2008-01-30  Lars-Ake Fredlund <fred@babel.ls.fi.upm.es>

	* dlls/winex11.drv/palette.c:
	winex11: Don't create a mapping if X11DRV_PALETTE_VIRTUAL is set.

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

	* dlls/user32/combo.c, dlls/user32/defwnd.c, dlls/user32/listbox.c,
	  dlls/user32/nonclient.c, dlls/user32/painting.c, dlls/user32/spy.c,
	  dlls/user32/uitools.c, dlls/user32/winpos.c:
	user32: Use wine_dbgstr_rect() in traces.

	* dlls/comctl32/comboex.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/pager.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/trackbar.c,
	  dlls/comctl32/treeview.c:
	comctl32: Use wine_dbgstr_rect() in traces.

2008-02-06  Eric Pouech <eric.pouech@orange.fr>

	* dlls/dbghelp/msc.c:
	dbghelp: Disable the S_PUB_FUNC_XXX msc symbols until we know what they do
	(the first guess is wrong anyway).

	* dlls/dbghelp/symbol.c:
	dbghelp: When sending back information about a global symbol, only demangle
	the class & field/method name.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Attempt to cache some basic symbol types for easier and faster code.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: Extended the internal enumeration information so that we know the
	underlying integral type.

	* dlls/dbghelp/type.c:
	dbghelp: Added basic support for base class information.
	As we don't support C++ for now, we just return FALSE for all cases.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Added support for labels outside functions (and used it in msc parsing).

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h, tools/winedump/msc.c:
	dbghelp: Added preliminary support for a strange stack variable object.

	* dlls/dbghelp/msc.c:
	dbghelp: Added support for register v3 in msc.

	* dlls/dbghelp/msc.c:
	dbghelp: Added support for some V3 fields in structure parsing.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h:
	dbghelp: Added HRESULT as new basic type (and some doc about basic types ids).

	* include/wine/mscvpdb.h:
	dbghelp: Fix mixed up return and this type in MFunction V2.

	* dlls/dbghelp/msc.c:
	dbghelp: Pass the 'details' flags to _fetch_type so that we can simplify some
	code around.

	* dlls/dbghelp/msc.c:
	dbghelp: Added missing basic types for booleans and integers.

2008-02-07  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/cursoricon.c:
	user32: winex11.drv has support for color cursors now.

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

	* dlls/wintab32/wintab32.c:
	wintab32: Remove unneeded cast.

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

	* dlls/comctl32/animate.c:
	comctl32: Don't get the background colour in ANIMATE_PaintFrame as this can
	be called inside a critical section.
	This could therefore create a deadlock if the processing for
	WM_CTLCOLORSTATIC ends up sending certain messages to the animate control.
	So move the retrieval of the background colour into the callers of
	ANIMATE_PaintFrame but outside of any critical section.

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

	* dlls/urlmon/binding.c:
	urlmon: Fixed ref count leak.

	* dlls/urlmon/tests/Makefile.in, dlls/urlmon/tests/url.c:
	urlmon: Added gecko_installer_workaround to url.c tests.

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

	* dlls/winex11.drv/xinerama.c:
	winex11: Only update the virtual screen rect once in xinerama_init to minimize
	race conditions.

	* dlls/winex11.drv/keyboard.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Use the gdi display when initializing the keyboard to avoid creating
	a second display connection.

	* dlls/winex11.drv/winpos.c:
	winex11: Don't erase the desktop window synchronously on resizes to prevent
	deadlocks.

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

	* dlls/wintrust/tests/crypt.c:
	wintrust/tests: Use GetModuleHandleA instead of LoadLibraryA.

2008-01-26  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Improve the failure reporting in the bitmap tests.

2008-01-27  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Spelling fixes in the d3d test output.

2008-01-26  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/cabinet/tests/fdi.c:
	cabinet: Make the fdi tests pass on Vista.

2008-01-29  Jens Nestler <nessi@nessi-online.de>

	* dlls/kernel32/path.c:
	kernel32: Don't fail unconditionally in MoveFile for directories with flag
	MOVEFILE_REPLACE_EXISTING.

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

	* programs/explorer/systray.c:
	systray: Add support for NIS_HIDDEN flag.

	* dlls/shell32/systray.c, dlls/shell32/tests/systray.c,
	  programs/explorer/systray.c:
	systray: Properly track errors.

2008-01-24  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/tests/cursoricon.c:
	user32: Test destroying the cursor of a parent process.

2008-02-05  Paul Chitescu <paulc@voip.null.ro>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implement MmPageEntireDriver and MmResetDriverPaging.

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

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  include/richedit.h:
	riched20: Fix the name of the lpUsedDefChar field of GETTEXTEX.

2008-01-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Some drivers return a refresh rate of 0.

2008-02-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Create VBOs.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Separate OpenGL and driver version.

	* dlls/wined3d/directx.c:
	wined3d: Move the highpart of the driver version to the gl structure.
	While 6.14 is a sane default, we might want to override it on a
	per-driver basis, if we have really old Windows drivers on some cards.

	* dlls/wined3d/device.c:
	wined3d: Tear down the dummy textures before resetting.
	In theory the opengl library should release the gl resources when we
	destroy the context, and the stateblock reset will recreate the dummy
	textures, but I think it is cleaner to do this explicitly.

	* dlls/wined3d/device.c:
	wined3d: Restore the stateblock after Reset.

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

	* dlls/winmm/message16.c, dlls/winmm/winmm.c:
	winmm: Remove unneeded casts.

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

	* dlls/wined3d/surface_base.c:
	wined3d: Redownload the surface data in case of a palette change. This fixes
	a lot of redrawing problems in Red Alert.

	* dlls/wined3d/surface.c:
	wined3d: Allow read back of P8 surfaces. This fixes some of the redrawing
	issues in Red Alert.

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

	* dlls/wined3d/surface.c:
	wined3d: Reload the palette on a color key change. This fixes the ddex4/ddex5
	samples from the dx7 sdk.

	* dlls/wined3d/surface.c:
	wined3d: Make sure to set the color key when it is needed including for
	index_in_alpha.

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

	* dlls/msi/format.c:
	msi: Fix "type of 'x' defaults to 'int'" warnings.

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

	* dlls/winspool.drv/info.c, dlls/winspool.drv/wspool.c,
	  dlls/winspool.drv/wspool.h:
	winspool: Use the backend for GetPrinterDriverDirectory.

	* dlls/localspl/localspl_main.c:
	localspl: Implement fpGetPrinterDriverDirectory.

	* dlls/localspl/localspl_main.c:
	localspl: Initialize pointers in struct PRINTPROVIDOR.

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

	* dlls/gdi32/dc.c, dlls/gdi32/gdi_private.h:
	gdi32: DC_GetDCPtr and DC_ReleaseDCPtr are not longer used.

	* dlls/gdi32/palette.c:
	gdi32: Get rid of DC_GetDCPtr in the palette functions.

	* dlls/winex11.drv/palette.c:
	winex11: Add a critical section for the palette global variables instead of
	relying on the GDI lock.

	* dlls/gdi32/brush.c, dlls/gdi32/gdiobj.c, dlls/gdi32/pen.c:
	gdi32: Get rid of DC_GetDCPtr in the GDI object functions.

	* dlls/gdi32/font.c:
	gdi32: Get rid of DC_GetDCPtr in font functions.

	* dlls/gdi32/freetype.c:
	gdi32: Use a separate critical section for freetype locking instead of relying
	on the GDI lock.

	* dlls/gdi32/bitmap.c:
	gdi32: Avoid locking in BITMAP_CopyBitmap.

	* dlls/gdi32/bitmap.c:
	gdi32: Don't hold the GDI lock when calling DC_InitDC.

	* dlls/gdi32/brush.c, dlls/gdi32/dib.c, dlls/gdi32/font.c:
	gdi32: Get rid of a few more uses of DC_GetDCPtr.

	* dlls/gdi32/bitmap.c:
	gdi32: Avoid locking in CreateCompatibleBitmap.

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

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/datetime.c,
	  dlls/comctl32/tests/header.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/rebar.c, dlls/comctl32/tests/treeview.c:
	comctl32/tests: Call InitCommonControlsEx() if available, fall back to
	InitCommonControls() for the older controls, and skip the tests altogether
	for the newer ones.

2008-02-04  Reece H. Dunn <msclrhd@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix the domdoc test failures.

2008-02-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Recreate the contexts on _Reset.

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move vertex buffer vbo creation to PreLoad.

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

	* dlls/wined3d/directx.c:
	wined3d: Move the float format check to the big switch statement.

	* dlls/wined3d/directx.c:
	wined3d: Fix dxtn format check.
	We can't return WINED3D_OK straight away because we have yet to check
	the other flags, like sRGB correction.

	* dlls/wined3d/directx.c:
	wined3d: Correct the srgb reading check.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Accept the rejection of non-standard fixed function attrib types.

2008-02-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Be less picky about X8L8V8U8 precision.

	* dlls/d3d9/tests/visual.c:
	wined3d: Some texture transform test corrections.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/basetexture.c:
	wined3d: D3DTADDRESS_WRAP on conditional NP2 textures clamps to edge.
	Conditional NP2 textures in Direct3D do not support D3DTADDRESS_WRAP
	texture addressing. Similarly, GL_ARB_texture_rectangle textures do
	not support GL_REPEAT. This patch adds a test which shows that _WRAP
	clamps to the texture edge and implements that.

2008-01-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Update the gl rectangle when adjusting surface sizes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make Clear aware of the depth stencil sharing.

	* dlls/d3d9/tests/device.c:
	d3d9: Some drivers allow non-aligned offsets.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: De-Statify depth blit opengl resources.

2008-01-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/basetexture.c:
	wined3d: Mark textures dirty on UnLoad.

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/texture.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move some UnLoad code to the base texture class.

	* dlls/wined3d/device.c:
	wined3d: Destroy FBOs and reset pointers on Reset.

	* dlls/wined3d/surface.c:
	wined3d: Unload implicit depth stencil buffers correctly.
	We have to destroy potential fbo renderbuffers, and make sure the
	texture is gone

	* dlls/wined3d/device.c:
	wined3d: Update the auto depth stencil buffer size on reset.

	* dlls/wined3d/device.c:
	wined3d: Beware of texture_rectangle NP2 support in Reset.

2008-02-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Fix handling of the NULL separator when writing registry values.

2008-01-30  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Child fonts need to be scaled like their parent. With input from Dmitry
	Timoshkov.

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

	* dlls/d3dx8/d3dx8_main.c, include/d3dx8core.h:
	d3dx8: Fix the D3DXAssembleShaderFromFileA/W() prototypes.

	* include/Makefile.in, include/d3dx8.h, include/d3dx8core.h,
	  include/d3dx8mesh.h:
	d3dx8: Add the d3dx8mesh.h header and move the relevant function declarations
	there.
	Include d3dx8mesh.h in d3dx8.h and add some commented out ones as reminders.

	* include/d3dx8core.h:
	d3dx8: Make d3dx8core.h C++ compatible.

	* dlls/d3dx8/math.c, include/d3dx8math.h:
	d3dx8: Fix the D3DXMatrixAffineTransformation() prototype.

	* include/d3dx8core.h:
	d3dx8core.h: Remove some extraneous #include directives.

	* tools/winapi/win32.api:
	winapi_check: Update win32.api for d3dx8.dll.

	* tools/winapi/win32.api:
	winapi_check: Assorted win32.api updates.

	* tools/winapi/win32.api:
	winapi_check: Update win32.api for acledit.dll, ctapi32.dll and inetcomm.dll.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: __CxxDetectRethrow() and __CxxQueryExceptionSize() are implemented
	now so export them.

2008-02-04  Francois Gouget <fgouget@free.fr>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: Add some API documentation stubs to make winapi_check happy.

	* dlls/ntdsapi/ntdsapi.c:
	ntdsapi: Add an API documentation stub to make winapi_check happy.

	* dlls/mapi32/util.c:
	mapi32: Add an API documentation stub to make winapi_check happy.

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

2008-02-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Reimplement MsiFormatRecord.

	* dlls/msi/tests/format.c:
	msi: Add more tests for MsiFormatRecord.

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

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix potential memory leaks on error paths in RPCRT4_io_thread.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix potential memory leaks in RPCRT4_Receive.

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

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/urlcache.c, dlls/wininet/utility.c:
	wininet: Remove unneeded casts.

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Remove unneeded casts.

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

	* dlls/ws2_32/socket.c:
	ws2_32: Add a FIXME for WS_SIO_GET_EXTENSION_FUNCTION_POINTER in WSAIoctl.

	* server/named_pipe.c:
	server: Always try return a named pipe server that is listening from
	find_available_server.
	We still fallback to an idle server, but this prevents a client from
	connecting to a named pipe server that isn't listening.

	* dlls/ntdll/file.c:
	ntdll: The FileMailslotSetInformation and FileCompletionInformation cases of
	NtSetInformationFile don't need the fd.
	So don't do an extra server call to get the fd to avoid a performance
	penalty and to make these cases work when an fd isn't available.

2008-02-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_MORE_DATA if the size is too small.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return the string length even if the string is NULL.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Leave room for the NULL terminator.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_FILE_INVALID if the file has no version information.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_INVALID_PARAMETER if a string pointer is non-NULL and the
	size pointer is NULL.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Translate ERROR_BAD_PATHNAME into ERROR_FILE_NOT_FOUND.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Only convert output strings if the call succeeded.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetFileVersion.

	* dlls/msi/streams.c:
	msi: Implement the MSIMODIFY_ASSIGN action of MsiViewModify for the streams
	table.

	* dlls/msi/tests/db.c:
	msi: Add tests for using single quotes in an INSERT query.

	* dlls/version/info.c, dlls/version/tests/info.c:
	version: Return ERROR_RESOURCE_DATA_NOT_FOUND if the file does not have
	version information.

	* dlls/kernel32/tests/version.c:
	kernel32: Factor out the VerifyVersionInfo tests into their own function.

2008-02-03  Reece H. Dunn <msclrhd@hotmail.com>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Fix the bezier arc path test on all Windows platforms.

	* dlls/comctl32/trackbar.c:
	comctl32: Proper fix redrawing the trackbar background with themes enabled.

2008-02-01  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/olecli32/olecli.h, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli_main.c:
	olecli: Remove duplicated typedefs/enums.
	Use a local header file for them.

2008-02-01  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/service.c:
	advapi32: Fix the failing QueryServiceConfig2 test on platforms win2k3 and vista.

2008-01-30  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/stringformat.c:
	gdiplus: Add GdipSetStringFormatFlags stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusenums.h:
	gdiplus: Add GdipSetPenMode stub.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/process.c:
	kernel32: Add RegisterApplicationRestart stub.

2008-01-28  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Use GCC's -Wtype-limits if possible.

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

	* dlls/dbghelp/msc.c:
	dbghelp: Fixed the types we want to load at first.

	* dlls/riched20/editor.h, dlls/riched20/richole.c, dlls/riched20/run.c:
	riched20: Make use of the size info in REOBJECT if present.

	* dlls/riched20/editor.c:
	riched20: Start implementing object reading out RTF stream.

	* dlls/riched20/editor.c, dlls/riched20/rtf.h:
	riched20: Added support for image reading from RTF stream.

	* dlls/riched20/editor.c:
	riched20: Support a couple of paragraphs attributes out of RTF stream reading.

	* dlls/riched20/richole.c:
	riched20: Invert graphics when they are under the selection.

	* dlls/riched20/wrap.c:
	riched20: Correctly handle the wrapping when graphics are used.
	Get rid of infinite loops when run's width was larger than the global
	available width.

	* dlls/riched20/richole.c:
	riched20: Handle the zoom in OLE objects.

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/list.c, dlls/riched20/paint.c, dlls/riched20/richole.c,
	  dlls/riched20/run.c, dlls/riched20/undo.c:
	riched20: Start handling OLE objects inside richedit.

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

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Fix permissions of newly-created directories.

	* dlls/winex11.drv/bitmap.c:
	winex11: Remove unneeded check on bitmap depth, screen bpp cannot be 15.

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Abstract the depth->bpp conversion and use it in
	X11DRV_DIB_CreateDIBFromPixmap.

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

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/clipboard.c,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/wintab.c:
	winex11.drv: Remove unneeded casts.

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/type1afm.c:
	wineps.drv: Remove unneeded casts.

	* dlls/winemp3.acm/interface.c, dlls/winemp3.acm/layer2.c:
	winemp3.acm: Remove unneeded casts.

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

	* programs/winedbg/gdbproxy.c:
	winedbg: Implemented the pXX request in gdb proxy.

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

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Add zero value content length header to POST requests only.

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

	* dlls/wininet/http.c:
	wininet: Send HTTP/1.1 requests by default.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Make sure not to overwrite any caller supplied authorization header.

2008-01-31  Andre Wisplinghoff <andre@myhost.localdomain>

	* programs/winecfg/libraries.c:
	winecfg: Enable add button when choosing lib from combobox (Libraries tabsheet).

2008-02-01  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/xmldoc.c, dlls/msxml3/xmldoc.c:
	msxml3: Correct createElement return value for an invalid type.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Corrected Entity Reference Test.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Validated attribute name.

2008-02-01  Bang Jun-young <junyoung@mogua.com>

	* dlls/riched20/writer.c:
	riched20: Include wine/port.h for vsnprintf().

	* dlls/user32/menu.c, include/winuser.h:
	user32: Fix EndMenu() to match the PSDK.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Include wine/port.h for snprintf().

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

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsio.c:
	mshtml: Update wine_url in nsIURI::SetPath.

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

	* dlls/urlmon/tests/url.c:
	urlmon: Added more tests.

	* dlls/itss/tests/protocol.c:
	itss: Added BINDF_NEEDFILE test.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added more protocol tests.

	* dlls/urlmon/http.c:
	urlmon: Correctly handle BINDF_NEEDFILE flag in http protocol.

	* dlls/urlmon/binding.c:
	urlmon: Added support for binding to IID_IUnknown storage (cache file).

	* dlls/urlmon/binding.c:
	urlmon: Added BINDSTATUS_CACHEFILENAMEAVAILABLE support.

	* dlls/urlmon/binding.c:
	urlmon: Don't create stgmed_obj for binding to object.

	* dlls/urlmon/binding.c:
	urlmon: Abstract ProtocolStream object.

	* dlls/urlmon/binding.c:
	urlmon: Separate buffer from stream object.

	* dlls/mshtml/tests/protocol.c:
	mshtml: Added more about protocol tests.

	* dlls/urlmon/binding.c:
	urlmon: Return better error results.

	* dlls/urlmon/tests/url.c:
	urlmon: Fixed tests.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon.spec,
	  dlls/urlmon/urlmon_main.c, include/urlmon.idl:
	urlmon: Added CopyStgMedium implementation.

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

	* dlls/comctl32/animate.c:
	comctl32: Get the background colour in ANIMATE_PaintFrame, instead of just
	in WM_PAINT.
	This fixes the rendering of transparent animations when using a
	background thread.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Fix memory leaks in the rpc tests.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: HTTP_Connect should fail if a NULL or empty hostname is passed in.
	Add tests for these circumstances.

	* dlls/ole32/Makefile.in, dlls/ole32/moniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c, dlls/ole32/pointermoniker.c,
	  dlls/ole32/regsvr.c, dlls/ole32/tests/moniker.c:
	ole32: Add pointer moniker implementation.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for CreatePointerMoniker.

	* dlls/oleaut32/tests/safearray.c:
	oleaut32: Fix some memory leaks in the safearray tests.

	* tools/wine.inf:
	wine.inf: Make UI effects default to on.
	This makes SPI_GETUIEFFECTS return TRUE by default.

	* dlls/advapi32/service.c:
	advapi32: Fix the size calculation in StartServiceW.
	Calculating an open-ended structure using sizeof doesn't yield an
	accurate size because of alignment.

	* dlls/comctl32/animate.c:
	comctl32: In certain circumstances, native comctl32's animation control accepts
	negative start positions for the ACM_PLAY message.
	These circumstances seems to be after a seek is performed, but we play
	it safe and allow negative start positions to be treated as zero always.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Fix a leak of bmi in OLEPictureImpl_LoadGif.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix some reference count leaks in the tmarshal test.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix some incorrect checks in RPCRT4_Receive.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Fix a memory leak in the olefont tests.

	* dlls/oleaut32/olefont.c:
	oleaut32: Fix a leak of a typelib object in OLEFontImpl_GetTypeInfo.

	* dlls/ole32/moniker.c, dlls/ole32/ole32.spec:
	ole32: Add a stub implementation of CreatePointerMoniker.

	* dlls/mapi32/mapi32.spec, dlls/mapi32/util.c:
	mapi32: Add a stub implementation of HrQueryAllRows@24.

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

	* dlls/dbghelp/Makefile.in, dlls/dbghelp/minidump.c:
	dbghelp: Store the PE version information in module block.

	* dlls/dbghelp/minidump.c:
	dbghelp: Removed double assignment of checksum.

	* dlls/dbghelp/minidump.c:
	dbghelp: Fixed the suspend count when creating a minidump in the middle of
	an exception.

	* dlls/dbghelp/minidump.c:
	dbghelp: Return the size of each directory instead of passing a pointer to it.

2008-01-31  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user32/hook.c, dlls/user32/message.c, dlls/user32/user_private.h:
	user32: Remove duplicated get_hook_proc() function.

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

	* dlls/kernel32/ne_module.c:
	kernel32: LOADPARAMS16->showCmd can be NULL, do not crash in that case.

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

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Output code for initialising and freeing full pointer translation tables.

	* tools/widl/parser.l:
	widl: Don't search for a import file name with a path in the include directories
	for compatibility with MIDL.

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

	* tools/widl/write_msft.c:
	widl: Ignore ATTR_LOCAL in create_msft_typeinfo.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Added comments about missing MIME filters.

	* dlls/hlink/hlink_main.c:
	hlink: Don't prefer native version.
	It's no longer a stub DLL.

	* dlls/hlink/extserv.c, dlls/hlink/hlink_main.c:
	hlink: Added standard comments.

	* dlls/hlink/tests/hlink.c:
	hlink: Added HlinkResolveMonikerForData tests.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkResolveMonikerForData implementation.

	* dlls/hlink/tests/hlink.c:
	hlink: Added HlinkParseDisplayName tests.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkParseDisplayName implementation.

	* include/hlink.idl:
	hlink.idl: Added more function declarations.

	* dlls/hlink/extserv.c:
	hlink: Call AddRef of correct interface in ExtServUnk_QueryInterface.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added MkParseDisplayNameEx tests.

	* dlls/urlmon/session.c, dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added HlinkParseDisplayNameEx implementation.

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

	* include/wintrust.h:
	include/wintrust.h: Add missing members to CRYPT_PROVIDER_DATA struct (fixes
	some wintrust tests on Windows).

2008-01-26  Marcus Meissner <marcus@jet.franken.de>

	* dlls/pdh/pdh_main.c:
	pdh: Fixed wrong condition.

	* dlls/atl/atl_ax.c:
	atl: Check for NULL.

	* programs/wordpad/registry.c:
	wordpad: Remove condition that never triggers.

2008-01-26  Francois Gouget <fgouget@codeweavers.com>

	* tools/winedump/lnk.c:
	winedump: Add support for dumping SZ_LINK and SPECIAL_FOLDER data blocks.

	* tools/winedump/lnk.c:
	winedump: Switch the block dumping code to be block-oriented, rather then flag
	oriented, so it is resilient to order changes.

	* tools/winedump/lnk.c:
	winedump: Dump the raw data when finding an unknown block in an lnk file.

	* tools/winedump/lnk.c:
	winedump: Track unknown lnk flags and dump them.

	* tools/winedump/lnk.c:
	winedump: Use the standard SLDF_XXX flag names instead of inventing new
	ones. Add the missing flags.

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

	* dlls/user32/display.drv.spec:
	user32: Fix a typo in the StretchDIBits stub name.

2008-01-26  Francois Gouget <fgouget@codeweavers.com>

	* include/shlobj.h:
	shell32: Add some SLDF_XXX values, EXP_PROPERTYSTORAGE, and
	EXP_PROPERTYSTORAGE_SIG.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Fix a couple of copy/paste errors.

2008-01-25  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Fix the type of three loop variables.

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

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix big memory leak in xCall.
	Call IRpcChannelBuffer_FreeBuffer to free the buffer and other resources
	allocated by IRpcChannelBuffer_GetBuffer and IRpcChannelBuffer_SendReceive.

	* dlls/secur32/dispatcher.c:
	secur32: Initialise more pointers in helper to NULL.
	This is to avoid calling HeapFree on random pointers when
	DeleteSecurityContext is called on a context that hasn't had a second
	InitializeSecurityContext called on it, which would otherwise intialise
	those pointers.

	* dlls/secur32/ntlm.c:
	secur32: Try to retrive credentials by using the credential manager to retrieve
	credentials saved for the target server in InitializeContextHandleW, if possible.

	* dlls/secur32/ntlm.c:
	secur32: If using cached credentials failed in InitializeSecurityContext then
	fail with SEC_E_NO_CREDENTIALS instead of carrying on with a blank password.

	* dlls/secur32/ntlm.c:
	secur32: Move the detection of NULL credentials from AcquireCredentialsHandle
	to InitializeSecurityContext.
	Only use cached credentials if the credentials were NULL. Don't pass a
	domain into ntlm_auth when using cached credentials as
	ntlm_auth/winbindd should be able to figure that out.

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

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

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

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Remove an incorrect FIXME.

2008-01-25  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Accomodate XGetWindowProperty returning an actual format of
	something other than 32 for the TARGETS property.
	We shouldn't care what format the property was set with, as long as we
	trust that the property is an atom type.

2008-01-25  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/advapi32/tests/cred.c:
	advapi32: Fix some cred test failures on Vista and prevent it crashing.

2008-01-24  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Vista returns UNICODE_NOCHAR if a character does not exist.

	* dlls/user32/tests/edit.c:
	user32: Make the edit tests pass on Vista.

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

	* dlls/wininet/http.c:
	wininet: Pass the server name into InitializeSecurityContextW.

	* dlls/ntdsapi/Makefile.in, dlls/ntdsapi/ntdsapi.c,
	  dlls/ntdsapi/tests/ntdsapi.c:
	ntdsapi: Implement DsMakeSpnW.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntdsapi/tests/Makefile.in, dlls/ntdsapi/tests/ntdsapi.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	ntdsapi: Add tests for DsMakeSpnW.

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

	* dlls/shell32/shell32.spec:
	shell32: Add a LogoffWindowsDialog stub.

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

	* dlls/winedos/devices.c, dlls/winedos/dosmem.c, dlls/winedos/int21.c,
	  dlls/winedos/int2f.c, dlls/winedos/ioports.c, dlls/winedos/vga.c,
	  dlls/winedos/vxd.c:
	winedos: Remove unneeded casts.

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

	* dlls/mscms/profile.c:
	mscms: Open .icm files only when enumerating color profiles.

	* dlls/mscms/profile.c:
	mscms: Use NT directory for storing color profiles.

2008-01-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resource.

2008-01-24  Andrey Esin <andrey@esin.name>

	* dlls/credui/credui.rc, dlls/credui/credui_Ru.rc:
	credui: Added Russian translation.

2008-01-23  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/user32/tests/class.c:
	user32: Make the class tests pass on Vista.

	* dlls/user32/tests/clipboard.c:
	user32: Make the clipboard tests pass on Vista.

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

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Check for managed mode in create_whole_window again now that it is
	called lazily.

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

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Win9x returns a different last error.

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

	* dlls/advapi32/tests/service.c, dlls/kernel32/tests/environ.c,
	  dlls/wined3d/device.c:
	Avoid sizeof in traces.

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

	* .gitignore, dlls/msxml3/Makefile.in, dlls/msxml3/msxml3_v1.idl,
	  dlls/msxml3/version.rc, include/msxml2.idl:
	gmsxml3: Added typelib support.

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

	* dlls/msi/tests/source.c:
	msi/tests: Only use functions if they are implemented.

	* dlls/msi/tests/msi.c:
	msi/tests: Only use functions if they are implemented.

2008-01-23  Austin English <austinenglish@gmail.com>

	* dlls/comctl32/animate.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/imagelist.h,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/propsheet.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/status.c, dlls/comctl32/tab.c,
	  dlls/comctl32/tests/dpa.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/trackbar.c,
	  dlls/comctl32/treeview.c, dlls/comctl32/updown.c:
	comctl32: Spelling fixes.

2008-01-23  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/oleaut32/typelib2.c:
	oleaut32: Use the symbolic name for TYPEFLAG_FDISPATCHABLE.

2008-01-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/uninstaller/No.rc:
	uninstaller: Fix Norwegian Bokmål resource.

	* programs/uninstaller/main.c:
	uninstaller: Disable Uninstall button when no items selected.

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

	* dlls/wined3d/texture.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Remove unneeded casts.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c:
	wined3d: Remove unneeded casts.

	* dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/state.c:
	wined3d: Remove unneeded casts.

	* dlls/wined3d/device.c:
	wined3d: Remove unneeded casts.

2008-01-23  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wininet/tests/http.c:
	wininet: Check if buffer has overflowed potentially.

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

	* dlls/user32/driver.c, dlls/user32/user_private.h, dlls/user32/win.c,
	  dlls/user32/winpos.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, include/win.h:
	user32: Moved the bulk of CreateWindow and SetWindowPos from the driver back
	into user32.

	* dlls/winex11.drv/dib.c:
	winex11: Catch DIB memory accesses that touch the last page beyond the DIB
	bits end.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c:
	winex11: Check for need to make window managed when WS_VISIBLE is set outside
	of SetWindowPos.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Create the window data structure lazily, once the window is made
	visible.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Don't create a win_data structure for the root window in non-desktop
	mode.

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

	* dlls/user32/menu.c:
	user32: Menus should be top-most windows.

	* dlls/comctl32/tooltips.c:
	comctl32: Tooltips should be top-most windows.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  include/winuser.h, programs/explorer/systray.c:
	winex11: Export a function to dock a window into the system tray, and get rid
	of the WS_EX_TRAYWINDOW style.

	* dlls/winex11.drv/window.c:
	winex11: Remove obsolete code to set Z-order for child windows.

2008-01-23  Francois Gouget <fgouget@free.fr>

	* dlls/cabinet/fci.c, dlls/crypt32/tests/encode.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/viewport.c, dlls/gdi32/printdrv.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/resource.c,
	  dlls/msxml3/domimpl.c, dlls/twain_32/README,
	  dlls/winealsa.drv/midi.c, dlls/winecoreaudio.drv/midi.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/resource.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wineoss.drv/midi.c,
	  tools/widl/typelib_struct.h, tools/wrc/parser.y:
	Assorted spelling fixes.

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

	* dlls/credui/credui_main.c:
	credui: Return the state of the dialog's save checkbox to
	CredUIPromptForCredentials.

	* dlls/credui/credui_main.c:
	credui: The list should be the first parameter to the list_add_tail function.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Check the return value of RPCRT4_ClientAuthorize in RPCRT4_Send.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c:
	rpcrt4: Pass the SPN input to RpcBindingSetAuthInfoA/W into
	InitializeSecurityContextW instead of AcquireCredentialsHandleA/W.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix the error handling in RpcBindingSetAuthInfoA/W when
	RpcAuthInfo_Create fails.
	Don't release the old auth info until we successfully have a new auth
	info and return failure to the caller if RpcAuthInfo_Create fails.

2008-01-23  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Expand environment variable references in the shortcut's
	WorkDir, Description and IconPath fields.

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Test the expansion of indirect environment variable references.

2008-01-23  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add the trailing '\n' to an ok() call.

2008-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/input.c, dlls/winex11.drv/keyboard.c:
	user32: Make MapVirtualKeyEx(MAPVK_VK_TO_CHAR) behave more like in Windows.

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

	* dlls/winex11.drv/window.c:
	winex11: Get the icon from the window in case it was changed before the whole
	window was created.

	* dlls/winex11.drv/window.c:
	winex11: Set icon hints on non-managed windows too, since they may become
	managed later on.

	* dlls/winex11.drv/window.c:
	winex11: Set hints for the existing window text when creating the whole window.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Apply the existing window region (if any) when creating the whole
	window.
	Move X11DRV_SetWindowRgn to window.c.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Add a mapped flag to the window data instead of relying on WS_VISIBLE.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11: Move code around in X11DRV_SetWindowPos to reduce indentation levels.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Update the win data rectangles before doing anything else in
	SetWindowPos.

2008-01-22  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/Makefile.in, dlls/qmgr/factory.c, dlls/qmgr/qmgr.h:
	qmgr: Implement IClassFactory methods.

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

	* dlls/gdi32/gdi32.spec:
	gdi32: Fix spec file to export the right symbols for GetGlyphOutline.

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

	* dlls/user32/tests/msg.c:
	user32/tests: Run full test again on win95 and NT4.

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Make tests run on win9x/NT4 again.

2008-01-23  Marcus Meissner <marcus@jet.franken.de>

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Initialize decl.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Initialize CurrentHeader.

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

	* programs/regedit/regproc.c:
	regedit: Warn about newest unicode export from native regedit.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Corrected the .spec definition for the printf functions family.

2008-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winebuild/spec16.c:
	winebuild: Add a couple of missing indentations in the generated asm files.

2008-01-22  Lei Zhang <thestig@google.com>

	* dlls/ddraw/regsvr.c:
	ddraw: Register the DirectDraw 7 Object.

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

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Don't use texture_rectangle for paletted textures.

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

	* dlls/vmm.vxd/vmm.c:
	vmm.vxd: Remove unneeded casts.

	* dlls/uxtheme/msstyles.c:
	uxtheme: Remove unneeded casts.

2008-01-22  Andrey Esin <andrey@esin.name>

	* dlls/wininet/wininet_Ru.rc:
	wininet: One addition to Russian translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Ru.rc:
	browseui: Russian translation.

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

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Implement LookupAccountNameW for well-known groups.

	* dlls/advapi32/tests/security.c:
	advapi32: Add a test for LookupAccountNameA on a well-known group.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Implement SetEntriesInAclW.

	* dlls/ntdll/sec.c:
	ntdll: Fix the index check in RtlGetAce.
	The index is zero based so we should obviously be returning
	STATUS_INVALID_PARAMETER if the index is equal to the ACE count.

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

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

	* dlls/winex11.drv/window.c, programs/explorer/desktop.c:
	winex11: Leave it up to explorer to specify the correct size and position for
	the desktop.

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xinerama.c:
	winex11: Move resetting of the cursor clip rectangle into xinerama_init().

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

	* dlls/winex11.drv/winpos.c:
	winex11: Move the window bits according to the valid rects instead of
	invalidating.

	* dlls/winex11.drv/winpos.c:
	winex11: Properly invalidate moved child windows instead of forcing
	SWP_NOCOPYBITS.
	Add a move_window_bits() function where the missing functionality of
	moving the window contents should go.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Make the client rect relative to the parent window for consistency
	with the server side.

	* dlls/winex11.drv/winpos.c:
	winex11: Abstract the server part of SetWindowPos into a separate function.

	* server/window.c:
	server: Invalidate the correct region when custom valid rects are specified.

	* dlls/winex11.drv/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/request.h, server/trace.c,
	  server/window.c:
	server: Add a separate request to set the window visible rect.

2008-01-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/device.c:
	wined3d: Initialize swapchain.

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

	* dlls/ntdll/serial.c:
	ntdll: Fixed getting the RTS status from line, and now using sane default
	values for all (compilation/system) cases.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Really check that we get a template string before
	making use of it.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for RTTI types.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for thunks.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Corrected handling of non static member function
	modifiers.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for a couple of more calling
	conventions.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Added support for cointerface.

	* dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Handling of void in template parameters' list.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: symbol undecoration: Now correctly parsing the template forms.

2008-01-21  Paul Chitescu <paulc@voip.null.ro>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Semi-stub for LoadStringRCEx and LoadStringRC.

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

	* dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/icm.c:
	gdi32: Add tests for GetICMProfile and SetICMMode.

	* dlls/gdi32/icm.c, dlls/gdi32/palette.c:
	gdi32: Make GetICMProfile behave more like native. Rewrite ansi version as a
	wrapper and move color management functions to their own file.

	* dlls/gdi32/gdi32.spec:
	gdi32: Last parameter of GetICMProfile is an output parameter.

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

	* dlls/ole32/rpc.c:
	ole32: Don't get the HRESULT from the buffer if we get an RPC_S_CALL_FAILED
	status back from the runtime.
	The buffer might not contain any data and nowhere in our ole32 code
	passes HRESULTs in the buffer.

2008-01-21  Marcus Meissner <marcus@jet.franken.de>

	* programs/cmd/wcmdmain.c:
	cmd: Include <time.h> for time().

2008-01-22  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/attribute.c, dlls/msxml3/cdata.c, dlls/msxml3/comment.c,
	  dlls/msxml3/docfrag.c, dlls/msxml3/domdoc.c, dlls/msxml3/element.c,
	  dlls/msxml3/entityref.c, dlls/msxml3/pi.c, dlls/msxml3/text.c:
	msxml3: Return correct IDispatch Interface.

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c, dlls/msxml3/entityref.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMEntityReference interface.

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

	* dlls/user32/dialog16.c, dlls/user32/edit.c, dlls/user32/exticon.c,
	  dlls/user32/msgbox.c, dlls/user32/sysparams.c, dlls/user32/win.c,
	  dlls/user32/wnd16.c:
	user32: Remove unneeded casts.

	* dlls/user32/button.c, dlls/user32/class.c, dlls/user32/combo.c,
	  dlls/user32/cursoricon.c, dlls/user32/dde_client.c,
	  dlls/user32/dde_server.c, dlls/user32/ddeml16.c:
	user32: Remove unneeded casts.

	* dlls/urlmon/umstream.c:
	urlmon: Remove unneeded cast.

2008-01-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wineps.drv/builtin.c:
	wineps.drv: Properly handle NULL LPLOGFONT in PSDRV_EnumDeviceFonts.

2008-01-21  Jason Green <jave27@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9 tests: Correct some typos.

2008-01-20  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Fix not released swapchain in some codepaths.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add test for D3DTBLEND_MODULATE.

	* dlls/ddraw/device.c, dlls/ddraw/executebuffer.c:
	ddraw: Fix handling of alpha with D3DTBLEND_MODULATE.

	* dlls/wined3d/state.c:
	wined3d: Change colorkey fixup for stage 0 alphaop / alphaarg.

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

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Don't set BufferStart and BufferEnd in NdrStubCall2.
	The operations peformed by the stubless code should roughly match what
	operations MIDL outputs in code, and it doesn't do this.

2008-01-20  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/service.c:
	advapi32: Added some tests for QueryServiceConfig2A/W.

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

	* dlls/ntdll/signal_i386.c:
	ntdll: Don't fetch extended FPU context if there's no FPU context at all.

	* dlls/winex11.drv/window.c:
	winex11.drv: Only allocate wm hints if we have an X11 window.

	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
	winex11.drv: Fix handling of strange window sizes in CreateWindow, with tests.

	* dlls/user32/win.c, dlls/winex11.drv/window.c, server/window.c:
	user32,server: Set the initial window rectangles to 0,0-0,0.

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

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Remove some unimplemented win9x-only spec entries.
	We're never going to implement the undocumented ones and we're moving
	more and more towards the architecture of the more recent versions of
	native rpcrt4.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Move the receiving of an individual fragment to a separate function.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Implement asynchronous RPC support.

2008-01-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/surface.c:
	wined3d: Removed deadcode.

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

	* libs/wine/utf8.c:
	libwine: Properly increment source pointer for surrogates in wine_utf8_wcstombs.
	Spotted by Ken Thomases.

2008-01-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c:
	msxml3: Entity Reference nodes do not support attributes property.

2008-01-19  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/docfrag.c, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMDocumentFragment Interface.

2008-01-18  Andrey Esin <andrey@esin.name>

	* programs/write/Ru.rc, programs/write/rsrc.rc:
	write: Russian translation.

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

	* dlls/riched20/editor.c:
	riched20: Always treat the nCount variable in the EM_GETTEXTEX handler as a
	character count.
	Convert ex->cb into a character count before assigning it to nCount.
	Remove some dubious minus ones that would result in different character
	counts for the Unicode and ANSI paths.

	* dlls/riched20/editor.c:
	riched20: The wParam parameter to WM_GETTEXT contains the number of characters,
	not the number of bytes.
	Fix up some places in the WM_GETTEXT handler where it was assumed that
	it was a byte count.

2008-01-20  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac, dlls/kernel32/process.c, include/config.h.in:
	kernel32: Use setproctitle where applicable to set the process name.
	Based on a patch by Kris Moore.

2008-01-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/format.c:
	msi: Add more MsiFormatRecord tests.

2008-01-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/riched20/style.c:
	riched20: Don't clear CFM_UNDERLINE flag when applying styles where it is set.

2008-01-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/registry.c:
	msi: Replaced msi_free() by LocalAlloc() since ConvertSidToStringSidW uses
	LocalAlloc().
	Spotted by Christoph von Wittich <Christoph@ApiViewer.de>.

	* dlls/gdi32/font.c:
	gdi32: Fix possible NULL ptr in TRACE.

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

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/msvcr71/Makefile.in, dlls/msvcr71/msvcr71.c,
	  dlls/msvcr71/msvcr71.spec:
	msvcr71: Add an implementation that forwards to msvcrt.

	* dlls/msvcrt20/msvcrt20.spec, dlls/msvcrt40/msvcrt40.spec:
	msvcrt: _ftol returns a 64-bit value.

	* dlls/msvcrt20/msvcrt20.spec, dlls/msvcrt40/msvcrt40.spec,
	  dlls/msvcrtd/msvcrtd.spec:
	msvcrt: Fix _execv spec entries for the forwarding variants too.

2008-01-20  Christoph von Wittich <Christoph@ApiViewer.de>

	* dlls/msi/registry.c:
	msi: Fix process token leak.

2008-01-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Actually perform the fractional scaling test, make it pass under Wine.

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

	* tools/widl/typegen.c:
	widl: Write out code for initialising out-only client context handles.

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

	* dlls/shell32/shlfolder.c, dlls/shell32/shv_item_cmenu.c:
	shell32: Remove unneeded casts.

	* dlls/shell32/recyclebin.c, dlls/shell32/shell.c,
	  dlls/shell32/shell32_main.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c:
	shell32: Remove unneeded casts.

	* dlls/shell32/autocomplete.c, dlls/shell32/brsfolder.c,
	  dlls/shell32/changenotify.c, dlls/shell32/cpanelfolder.c,
	  dlls/shell32/dde.c, dlls/shell32/dialogs.c:
	shell32: Remove unneeded casts.

	* dlls/setupapi/devinst.c, dlls/setupapi/infparse.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/queue.c:
	setupapi: Remove unneeded casts.

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

	* dlls/secur32/ntlm.c:
	secur32: Remove unneeded casts.

	* dlls/sane.ds/capability.c:
	sane.ds: Remove unneeded casts.

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

	* dlls/shdocvw/navigate.c:
	shdocvw: Store headers as BSTR.

	* dlls/shdocvw/navigate.c:
	shdocvw: Do navigation in message handler.

	* dlls/shdocvw/navigate.c:
	shdocvw: Delay creating URL moniker to bind_to_object call.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Use more flexible mechanism instead of WB_WM_NAVIGATE2.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Store URL in BindStatusCallback.

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

	* dlls/winex11.drv/window.c:
	winex11.drv: Set the initial icon hints in set_initial_wm_hints().

2008-01-09  Austin English <austinenglish@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Spelling fixes.

2008-01-15  Austin English <austinenglish@gmail.com>

	* tools/widl/typegen.c, tools/widl/typelib_struct.h,
	  tools/winebuild/relay.c, tools/winedump/debug.c,
	  tools/winedump/msmangle.c, tools/winedump/symbol.c,
	  tools/winegcc/winegcc.c, tools/wmc/mcl.c, tools/wrc/genres.c,
	  tools/wrc/newstruc.c, tools/wrc/parser.h, tools/wrc/wrc.c,
	  tools/wrc/writeres.c:
	tools: Spelling fixes.

2008-01-16  Austin English <austinenglish@gmail.com>

	* dlls/advapi32/tests/registry.c, dlls/advpack/files.c,
	  dlls/advpack/reg.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/icmstream.c,
	  dlls/avifil32/wavfile.c, dlls/browseui/progressdlg.c,
	  dlls/cabinet/fci.c, dlls/cabinet/tests/extract.c:
	Misc spelling fixes.

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

	* dlls/rsaenh/handle.c, dlls/rsaenh/mpi.c, dlls/rsaenh/rsaenh.c:
	rsaenh: Remove unneeded casts.

2008-01-17  Eric van Beurden <ericvb@transgaming.com>

	* dlls/dbghelp/minidump.c:
	dbghelp: Prevent huge minidumps by ensuring the memory range is clamped.

	* dlls/dbghelp/path.c:
	dbghelp: Fix file searching to search only listed directories instead of the
	whole HD.

	* dlls/dbghelp/minidump.c:
	dbghelp: Some minidump corrections so that windbg can read our minidump files.

	* dlls/dbghelp/pe_module.c:
	dbghelp: Wrap TRACE strings using the debugstr functions and update some
	type casting.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Return TRUE in SymInitializeW if process is already initialized and
	add an ERR to SymCleanup.

	* include/wine/mscvpdb.h:
	dbghelp: Update some mscvpdb.h definitions and descriptions.

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

	* tools/widl/header.c:
	widl: Use the real argument names in the C method macros.

	* dlls/ntdll/signal_i386.c:
	ntdll: Don't try to restore extended fpu context if not supported.
	Remove an extra fpu context save left over from testing.

2008-01-18  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c, dlls/msxml3/domimpl.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMImplementation Interface.

	* dlls/msxml3/node.c:
	msxml3: Attribute nodes are not typed.

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

	* dlls/kernel32/kernel_main.c:
	kernel32: Initialise the top 16-bit stack frame to zero.

2008-01-17  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Actually test strings that expand to something bigger than
	their original size.

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

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xinerama.c:
	winex11.drv: Moved initialization of screen_width/height to xinerama_init to
	do it inside the x11 lock.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Don't create a win_data structure for the desktop window, except
	in the process that owns it.
	Handle desktop size changes by sending a message to the desktop owner.

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

	* dlls/iphlpapi/iphlpapi.spec, dlls/iphlpapi/iphlpapi_main.c,
	  include/iphlpapi.h:
	iphlpapi: Implement GetBestInterfaceEx.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Only initialise the context handle to NULL in NdrContextHandleUnmarshall
	if it is an out-only or return one.
	Fix the indentation and add tracing of the context handle flags.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add an exception handler for stubless object proxies.

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

	* dlls/winex11.drv/wintab.c:
	winex11.drv: Don't fetch the atom for a null device type.

2008-01-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/virtual.c:
	ntdll: Do not perform base relocation if an image is not a DLL.

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

	* dlls/riched20/editor.c, dlls/riched20/richole.c, dlls/riched20/style.c:
	riched20: Remove unneeded casts.

	* dlls/quartz/systemclock.c:
	quartz: Remove unneeded casts.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Remove unneeded casts.

2008-01-16  Marcus Meissner <marcus@jet.franken.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wmi/Makefile.in, dlls/wmi/wmi.spec:
	wmi: Initial version of wmi.dll.

	* dlls/urlmon/tests/url.c:
	urlmon: Skip pstgmed related tests if NULL.

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

	* dlls/ntdll/process.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/process.c, server/process.h,
	  server/protocol.def, server/thread.c, server/thread.h,
	  server/trace.c:
	server: Don't force the process affinity to 1, leave it up to the client.

	* dlls/kernel32/process.c:
	kernel32: Fix the system affinity returned by GetProcessAffinityMask.

	* tools/winebuild/spec32.c:
	winebuild: Don't try to use the .init section on Mac OS.

2008-01-11  Sin-ta Hsiea <ibmibmibm.tw@gmail.com>

	* programs/winecfg/Zh.rc, programs/winecfg/winecfg.rc:
	winecfg: Add Traditional Chinese translation.

	* dlls/gdi32/freetype.c:
	gdi32: Fix Traditional Chinese font mapping to "PMingLiU", "MingLiU".

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

	* programs/wineboot/Makefile.in:
	wineboot: Delay import the dlls that are not needed for the default
	initialisation.

	* dlls/kernel32/process.c, programs/wineboot/wineboot.c:
	wineboot: Add a --init option used when launched automatically at startup.
	Don't execute Run entries in that case.

	* dlls/winmm/lolvldrv.c:
	winmm: Load only one sound driver at a time.

2008-01-15  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/device.c:
	wined3d: Check for overflows.

2008-01-14  Christopher Berner <raccoonone@procyongames.com>

	* dlls/user32/scroll.c:
	user32: Fixed off by one scroll bar pixels.

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

	* tools/winebuild/spec32.c:
	winebuild: Reserve the space for the PE header in the .init section.

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

	* dlls/comctl32/animate.c:
	comctl32: Support seeking to a particular frame.
	In this case just draw the frame without starting the timer thread of
	setting a timer and without sending any notifications.

	* dlls/comctl32/animate.c:
	comctl32: Keep on displaying the last frame of the animation after the animation
	has stopped.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for RPC_FC_P_DEREF|RPC_FC_P_ONSTACK pointers.

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

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Fix values returned for IOCTL_STORAGE_GET_DEVICE_NUMBER on
	emulated disks.

	* dlls/ntdll/cdrom.c, dlls/ntdll/file.c:
	ntdll: Fall back to a server device ioctl for files with no associated fd.

2008-01-16  Francois Gouget <fgouget@free.fr>

	* dlls/cabinet/fci.c, dlls/comctl32/listview.c,
	  dlls/comctl32/tests/datetime.c, dlls/comctl32/treeview.c,
	  dlls/d3d9/tests/visual.c, dlls/dbghelp/stabs.c, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/dmstyle/style.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplayx_queue.h,
	  dlls/gdi32/bidi.c, dlls/gdi32/dib.c, dlls/gdi32/metafile.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/locale.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/nsservice.c, dlls/msi/tests/db.c,
	  dlls/msxml3/attribute.c, dlls/msxml3/cdata.c, dlls/msxml3/comment.c,
	  dlls/msxml3/pi.c, dlls/ntdll/serial.c, dlls/odbc32/proxyodbc.c,
	  dlls/oleaut32/tests/vartype.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/variant.c, dlls/qcap/dllsetup.c, dlls/qcap/dllsetup.h,
	  dlls/setupapi/stringtable.c, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/iconcache.c, dlls/shell32/pidl.c, dlls/shell32/pidl.h,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_netplaces.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfolder.c, dlls/shell32/shlview.c,
	  dlls/shell32/trash.c, dlls/shlwapi/url.c, dlls/user32/comm16.c,
	  dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/defdlg.c, dlls/user32/mdi.c, dlls/user32/tests/dialog.c,
	  dlls/uxtheme/msstyles.c, dlls/uxtheme/tests/system.c,
	  dlls/winealsa.drv/alsa.c, dlls/wineesd.drv/audio.c,
	  dlls/wineoss.drv/audio.h, dlls/wineoss.drv/midi.c,
	  dlls/winex11.drv/wintab.c, dlls/wininet/tests/url.c,
	  dlls/ws2_32/socket.c, include/mmsystem.h,
	  include/wine/rpcss_shared.h, include/wine/wingdi16.h,
	  include/winternl.h, libs/wpp/wpp.c, libs/wpp/wpp_private.h,
	  programs/cmd/batch.c, programs/cmd/wcmdmain.c,
	  programs/taskmgr/graphctl.c, programs/winhelp/hlpfile.c:
	Assorted spelling fixes.

	* dlls/kernel32/tests/sync.c:
	kernel32/tests: Small spelling fix in a parameter name.

	* include/setupapi.h, include/windns.h:
	include: Document some Microsoft spelling mistakes so we know they are not to
	be fixed.

	* dlls/gdi32/tests/generated.c, dlls/kernel32/tests/generated.c,
	  dlls/ntdll/tests/generated.c, dlls/rpcrt4/tests/generated.c,
	  dlls/shell32/tests/generated.c, dlls/shlwapi/tests/generated.c,
	  dlls/urlmon/tests/generated.c, dlls/user32/tests/generated.c,
	  tools/winapi/winapi_test:
	Fix spelling error in the generated conformance test files.

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

	* dlls/gdi32/painting.c:
	gdi32: Small wording tweaks in comments.

2008-01-13  Tony Wasserka <tony.wasserka@freenet.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx9_36/Makefile.in, dlls/d3dx9_36/d3dx9_36.spec,
	  dlls/d3dx9_36/d3dx9_36_main.c:
	d3dx9: Start implementation of d3dx9_36.

2008-01-16  James Hawkins <truiken@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/propsys/Makefile.in, dlls/propsys/propsys.spec,
	  dlls/propsys/propsys_main.c:
	propsys: Add a stub implementation of propsys.dll.

2008-01-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mshtml/olecmd.c:
	mshtml: Check for This->frame.

2008-01-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Allocate cache for face enumeration data only when necessary.

2008-01-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: dest_path refers to the directory prefix, not the entire file path.

2008-01-16  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement get_nodeTypeString.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement put_text.

2008-01-15  Andrey Esin <andrey@esin.name>

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

	* programs/wordpad/Ru.rc:
	wordpad: Corrections in Russian translation.

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

	* dlls/psapi/psapi_main.c:
	psapi: Remove unneeded cast.

	* dlls/qcap/capturegraph.c, dlls/qcap/v4l.c:
	qcap: Remove unneeded casts.

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/olepicture.c,
	  dlls/oleaut32/safearray.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib16.c:
	oleaut32: Remove unneeded casts.

2008-01-16  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/mscoree/mscoree_main.c:
	mscoree: Fix memory leak.

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

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the setting of retval_ptr outside of any particular stub phase
	in stub_do_args and stub_do_old_args.
	After the change in order of phases it was no longer being set in the
	last phase and so caused all stubless functions to appear to have no
	return value.

2008-01-15  Juan Lang <juan.lang@gmail.com>

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Don't return uninitialized stream.

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

	* dlls/ntdll/serial.c:
	ntdll: Restore typecast that is really needed.

	* dlls/ntdll/signal_i386.c:
	ntdll: Mac OS support for saving and restoring the extended FPU context on
	exceptions.

	* dlls/ntdll/signal_i386.c:
	ntdll: Linux support for saving and restoring the extended FPU context on
	exceptions.

	* dlls/ntdll/thread.c:
	ntdll: Copy extended registers too in copy_context().

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Avoid size_t in traces.

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

	* dlls/ole32/rpc.c:
	ole32: Partially implement ServerRpcChannelBuffer_GetDestCtx.

2008-01-14  Andrej Sinicyn <Andrej4000@gmx.de>

	* programs/wordpad/De.rc:
	wordpad: Update German strings and correct shortcuts to match XP wordpad.

2008-01-14  Andrey Esin <andrey@esin.name>

	* programs/wordpad/Ru.rc:
	wordpad: Adding to Russian translation.

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

	* dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Allow NULL networkaddr and endpoint in rpcrt4_np_get_top_of_tower.
	Add tests for this.

2008-01-14  Allan Tong <actong88@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Set swapchain container before flagging front buffer with
	SFLAG_INDRAWABLE.

2008-01-11  Dan Kegel <dank@kegel.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix AddFontResource behavior with relative paths.

2008-01-11  Jonathan Ernst <jonathan@ernstfamily.ch>

	* loader/wine.fr.man.in:
	loader: Updated French man page.

2008-01-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: Do not allow to create too large device dependent bitmaps like Windows
	does.

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

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: FindFirstVolumeA is not available on win98.

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

	* server/context_i386.c, server/trace.c:
	server: Take into account the extended registers part of the i386 context.

2008-01-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c,
	  dlls/winex11.drv/xfont.c:
	gdi32: Add a test for undocumented EnumFontFamiliesEx(NULL), make it pass
	under Wine.

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

	* dlls/ole32/clipboard.c, dlls/ole32/git.c, dlls/ole32/ole16.c,
	  dlls/ole32/ole2.c, dlls/ole32/stg_prop.c, dlls/ole32/storage32.c:
	ole32: Remove unneeded casts.

2008-01-14  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/main.c:
	crypt32: Fix race condition in loading default provider.

	* dlls/crypt32/main.c:
	crypt32: Don't release default crypto provider on process shutdown.

2008-01-08  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/crypt.c:
	wintrust: Don't expect ImageGetCertificateData to succeed when Certificate
	is NULL.

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

	* dlls/shdocvw/navigate.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Call StatusTextChange in set_status_text.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Call WindowSetResizable in put_Resizable.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Call OnFullScreen in put_FullScreen.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added DWebBrowserEvents2 test.

2008-01-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/riched20/editor.c:
	riched20: Include selection bar size in POSFROMCHAR.

2008-01-14  Andrey Esin <andrey@esin.name>

	* dlls/shell32/shell32_Ru.rc:
	shell32: Update Russian translation.

2008-01-13  Andrey Esin <andrey@esin.name>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Ru.rc:
	wineboot: Russian translation.

2008-01-12  Pablo Spallanzani <pspallanz@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Fix texture coordinate calculation in surface_blt_to_drawable.

2008-01-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/toolhelp.c, server/process.c:
	server: Enumerate process in reverse.

2008-01-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Corrected getAttribute to return current value and assign output var.

	* dlls/msxml3/domdoc.c:
	msxml3: Implement GetClassID for XMLDocument IPersistStream interface.

	* dlls/msxml3/Makefile.in, dlls/msxml3/cdata.c, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/tests/domdoc.c:
	msxml3: Implemented IXMLDOMCDATASection COM Object.

	* dlls/msxml3/node.c:
	msxml3: Correct get_attributes for CDATA Section.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement get_dataType.

2008-01-13  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/output.c:
	winedump: Use a switch in the generated DllMain().

	* tools/winedump/output.c:
	winedump: Use the DEFINE_THISCALL_WRAPPER macro instead of the GET_THIS macro
	for functions with __thiscall calling convention.
	Wine doesn't use GET_THIS but DEFINE_THISCALL_WRAPPER.

	* tools/winedump/output.c:
	winedump: Do not create a header file when not generating skeleton code.
	The header file generated with "winedump spec" without the "-c" option
	just includes other headers.

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

	* dlls/user32/win.c:
	user32: Don't inherit stdin/stdout handles in explorer.

	* dlls/kernel32/process.c:
	kernel32: Don't inherit stdin/stdout handles in wineboot.

	* dlls/kernel32/process.c:
	kernel32: Close the stdio handles when creating a detached process.

2008-01-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/print.c,
	  programs/wordpad/wordpad.c, programs/wordpad/wordpad.h:
	wordpad: Add basic ruler.

2008-01-13  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/print.c:
	wordpad: Fix width when text break = margins.

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

	* dlls/mlang/mlang.c, dlls/mlang/mlang.spec:
	mlang: Implement Rfc1766ToLcidW.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: The initialisation of [out] variables in the stubless code must be
	after the unmarshaling of [in] and [in, out] variables has been completed.
	This is because the size of an [out] variable could depend on a
	conformance value stored in an unmarshalled [in] or [in,out] variable.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle complex arrays in calc_arg_size.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the calculation of element sizes for complex arrays by using a new
	function ComplexStructSize that doesn't touch the buffer to calculate the size.
	Otherwise, this would fail on arrays with a conformance or variance of zero.

	* dlls/winhttp/main.c, dlls/winhttp/winhttp.spec:
	winhttp: Add a stub for WinHttpOpen.

2008-01-12  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/kernel32/snoop16.c:
	kernel32: Fix type of a loop variable in SNOOP16_Entry().

	* dlls/wininet/http.c:
	wininet: Fix type of a loop variable in HTTP_BuildHeaderRequestStr().

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Clear the constant list before finding constants.
	shader_get_registers_used is delayed until compile time for some 1.x
	shaders, mostly to wait for the right vertex declaration to be
	set. This means that on a recompile it will be run again, adding
	another instance of each local constant, which in turn causes compile
	errors because of constant redeclaration. Just purging the lists
	before finding the constants is a simple and reliable solution.

	* dlls/wined3d/device.c:
	wined3d: Destroy opengl shaders on reset.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Destroy arb shaders on shader destroy.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Reset the shader state on shader_*_destroy.

	* dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Keep track of shaders.

	* dlls/wined3d/device.c:
	wined3d: Unload all resources on Reset.

2008-01-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d9: Reject IDirect3DDevice9::Reset with active default pool resources.

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/volumetexture.c:
	wined3d: Implement VolumeTexture::UnLoad.

	* dlls/wined3d/cubetexture.c:
	wined3d: Implement IWineD3DCubeTexture::UnLoad.

	* dlls/wined3d/texture.c:
	wined3d: Implement IWineD3DTexture::UnLoad.

	* dlls/wined3d/volume.c:
	wined3d: Implement IWineD3DVolume::UnLoad.

2008-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/indexbuffer.c:
	wined3d: Implement IWineD3DIndexBuffer::UnLoad.

2008-01-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Implement IWineD3DVertexBuffer::UnLoad.

2008-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::UnLoad.

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/texture.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Add a new IWineD3DResource::UnLoad method.

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

	* dlls/rpcrt4/rpc_epmap.c:
	rpcrt4: Add traces to the start of TowerConstruct and TowerExplode.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't print fixmes for NDR types without a freeing function.
	Not all types have a freeing function.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add support for calculating the memory size of complex types with
	embedded non-conformant strings.

	* dlls/rpcrt4/ndr_contexthandle.c:
	rpcrt4: Allocate a context handle if a NULL GUID is being unmarshalled.

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

	* dlls/ole32/datacache.c:
	ole32: Fixed datacache object so that we can retrieve meaningful information.

	* programs/winedbg/be_i386.c, programs/winedbg/debugger.h,
	  programs/winedbg/info.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/tgt_module.c:
	winedbg: Added a way to support differently selector information depending on
	current target.

	* programs/winedbg/tgt_minidump.c:
	winedbg: Workaround broken minidumps with invalid 32->64 address conversion.

	* programs/winedbg/stack.c:
	winedbg: Fixed bt all so that current process/thread isn't lost.

	* dlls/dbghelp/minidump.c:
	dbghelp: In Minidump, change a couple of internal names for consistency.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Silence superfluous message (spotted by Robert Reif).

2008-01-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Initialize more fields in GetEnumStructs.

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Use public FS_xxxxxx defines.

2008-01-13  Dan Kegel <dank@kegel.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa.drv: Don't return garbage if can't find active channel.

	* dlls/urlmon/http.c:
	urlmon: Fix unlikely free of uninitialized pointer.

	* dlls/hlink/tests/hlink.c:
	hlink/tests: Skip tests if hlink couldn't be created.

	* dlls/gdiplus/tests/image.c:
	gdiplus/tests: Don't free if alloc failed.

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

	* LICENSE, include/wine/wine_common_ver.rc:
	license: Update copyright info for the new year.

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

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Fix glBlendColorEXT for use on RivaTNT.

2008-01-12  Gregor Münch <greg87@online.de>

	* dlls/msxml3/text.c:
	msxml3: Fix typo.

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

	* dlls/setupapi/devinst.c:
	setupapi: Fix dead code (Coverity).

	* dlls/msvfw32/drawdib.c, dlls/msvfw32/msvideo_main.c:
	msvfw32: Remove unneeded casts.

	* dlls/msxml3/nodemap.c:
	msxml3: Remove unneeded cast.

	* dlls/ntdll/critsection.c, dlls/ntdll/serial.c, dlls/ntdll/threadpool.c:
	ntdll: Remove unneeded casts.

	* dlls/msvcrt/dir.c, dlls/msvcrt/thread.c:
	msvcrt: Remove unneeded casts.

	* dlls/netapi32/access.c:
	netapi32: Remove unneeded cast.

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

	* include/winhttp.h:
	include: Flesh out winhttp.h with more function declarations, typedefs and
	defines.

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

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

----------------------------------------------------------------
2008-01-11  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/pe_module.c:
	dbghelp: Implement ImageDirectoryEntryToDataEx.

2008-01-10  Austin English <austinenglish@gmail.com>

	* loader/wine.man.in:
	loader: Add disabling dlls to wine man page.

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

	* loader/wine.fr.man.in, server/wineserver.fr.man.in:
	Spelling fixes in French man pages.

2008-01-10  Jonathan Ernst <jonathan@ernstfamily.ch>

	* .gitignore, loader/Makefile.in, loader/wine.fr.man.in:
	loader: New French man page for wine.

	* server/wineserver.fr.man.in:
	server: Updated French man page.

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

	* dlls/mshtml/nsembed.c:
	mshtml: Disable some default Gecko warnings.

	* dlls/mshtml/persist.c:
	mshtml: Use QueryService to get IHttpNegotiate in get_post_data_stream.

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

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

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed hr element handling in range object.

	* dlls/mshtml/nsembed.c:
	mshtml: Update focus information in WM_RESETFOCUS_HACK.

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Move nsChannel's content type initialization to async_open_doc_uri.

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

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Split RPCRT4_process_packet out into separate functions.

2008-01-11  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: EnumResourceNamesW() returns false when we find the icon. So
	fix the corresponding misfiring trace.

	* dlls/shell32/shelllink.c:
	shell32: A lot of lnk files have extra data blocks at the end, although they
	don't seem to matter much. So drop the corresponding ERR() to a WARN().

2008-01-11  Francois Gouget <fgouget@free.fr>

	* dlls/msi/tests/install.c:
	msi/tests: Tweaked so it does not look like things are misspelled.

2008-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Despite the MSDN claims, GetComputerName() does not return
	the required buffer size... except on Vista. So update the tests accordingly.

	* dlls/kernel32/environ.c, dlls/kernel32/tests/environ.c:
	kernel32/tests: Add more ExpandEnvironmentStringsA() tests.
	Document the observed ExpandEnvironmentStrings() behavior.

	* dlls/advapi32/registry.c:
	advapi32: RegGetValueW() must return the required buffer size in bytes,
	not WCHARs.

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: RegGetValue() should not return an error when expanding a string
	and given a NULL buffer and a zero size.
	Adjust the tests to cover this case for REG_EXPAND_SZ registry
	values. Improve the documentation a bit.

2008-01-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Move potential NULL ptr derefs into their if () case.

2008-01-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leak in test.

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

	* dlls/mscms/icc.c:
	mscms: Remove unneeded casts.

	* dlls/mapi32/prop.c:
	mapi32: Remove unneeded cast.

2008-01-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/user32/sysparams.c, dlls/user32/user32.spec:
	user32: Add SetProcessDPIAware stub.

2008-01-10  Aric Stewart <aric@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/small_fonts_jp.sfd:
	fonts: Add Japanese small font.

2008-01-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shdocvw/persist.c:
	shdocvw: Change return value for PersistMemory_Load.

2008-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Simplify GetEnumStructs.

2008-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix a GdiFont leak.

2008-01-10  Andrey Turkin <andrey.turkin@gmail.com>

	* programs/wineboot/wineboot.c:
	wineboot: Fix installation of SFP protected files.

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

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c:
	mshtml: Handle fClearDirty flag in IPersistStreamInit::Save.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in before_async_open if there is no client site.

2008-01-10  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/table.c:
	msi: Complete initializers.

2008-01-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add stubs for DllCanUnloadNow and DllGetClassObject.

2008-01-09  Austin English <austinenglish@gmail.com>

	* dlls/winedos/dma.c, dlls/winedos/dosmem.c, dlls/winedos/int10.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/vxd.c,
	  dlls/wineesd.drv/audio.c, dlls/winejoystick.drv/joystick.c:
	Spelling fixes.

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

	* dlls/kernel32/tests/time.c:
	kernel32/tests: Skip not implemented functions.

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Skip not implemented functions.

	* dlls/kernel32/tests/format_msg.c:
	kernel32/tests: Skip not implemented functions.

2008-01-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/user32.spec, dlls/user32/win.c:
	user32: Add stub for GetLayeredWindowAttributes.

2008-01-09  Marcus Meissner <marcus@jet.franken.de>

	* server/registry.c:
	server: Remove superflous check (value->data is dereferenced before check).

2008-01-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/process.c:
	msvcrt: Remove strange condition which might lead to crash.

2008-01-09  Paul Chitescu <paulc@voip.null.ro>

	* dlls/advapi32/service.c:
	advapi32: Accept a NULL lpServiceStatus in ControlService.

2008-01-10  Paul Romanyszyn <pgr@arcelectronicsinc.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Filter change should not update filename.

2008-01-09  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/cmd/wcmdmain.c:
	cmd: Seed the random number generator.

2008-01-09  Lei Zhang <thestig@google.com>

	* dlls/mapi32/sendmail.c:
	mapi32: Fix UrlEscapeA usage in MAPISendMail.

	* dlls/shlwapi/tests/url.c, dlls/shlwapi/url.c:
	shlwapi: Fix a return value in UrlEscapeA.

	* dlls/shlwapi/tests/url.c, dlls/shlwapi/url.c:
	shlwapi: Check more arguments to UrlEscapeA.

	* dlls/shlwapi/tests/url.c, dlls/shlwapi/url.c:
	shlwapi: Check an argument to UrlEscapeA.

	* dlls/shlwapi/tests/url.c:
	shlwapi: Additional UrlEscapeA tests.

	* dlls/mapi32/sendmail.c:
	mapi32: Initialize several string buffers.

2008-01-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix the regression caused by the scaling font metrics patch.

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

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Implemented IOCTL_DISK_GET_DRIVE_GEOMETRY and
	IOCTL_STORAGE_GET_DEVICE_NUMBER.

2008-01-09  Marcus Meissner <marcus@jet.franken.de>

	* dlls/user32/tests/sysparams.c, dlls/winex11.drv/settings.c:
	winex11: Set last error on enumerating display settings.

2008-01-06  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi32/enhmetafile.c:
	gdi32: Tighten range checking in PlayEnhMetaFileRecord() and remove four
	useless checks.

2008-01-07  Divan Burger <divan.burger@gmail.com>

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the colour boxes in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the selected colour box in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the colour graph's cross in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Modernize the look of the luminance bar in the colour dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Clamp hue and saturation when clicking in colour graph in colour
	dialog.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Fix bug where the colour graph's cross is not painted.

2008-01-08  Tony Wasserka <tony.wasserka@freenet.de>

	* include/Makefile.in, include/d3dx9.h, include/d3dx9core.h:
	include: Add d3dx9core.h.

2008-01-09  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/domdoc.c:
	msxml3: Suppress IID_IRunnableObject FIXME since its not supported.

2008-01-08  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: get_attributes not supported for Attribute, CData, Comment, Doc,
	Doc Frag, Entity and Text Nodes.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: previousSibling not supported for Attribute, Document and Document
	Fragment Nodes.

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: createProcessingInstruction: Check arguments are valid.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: lastChild not supported for CDATASection, Comment, PI and Text Nodes.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: nextSibling not supported for Attribute, Document and Document
	Fragment Nodes.

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

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Fix a memory leak in the cstub tests.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix memory leaks in the ndr_marshall tests.

	* dlls/rpcrt4/ndr_fullpointer.c:
	rpcrt4: Fix memory leak in NdrFullPointerXlatFree.
	First of all, the code was freeing the wrong pointer (i.e. the pointer
	supplied by the caller of one of the NdrFullPointer* functions, not the
	PFULL_PTR_TO_REFID_ELEMENT. Second, the code wasn't following the Next
	link to the next entry in the list.

2008-01-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/delete.c, dlls/msi/table.c, dlls/msi/tests/db.c,
	  dlls/msi/where.c:
	msi: Actually delete the row data instead of blanking it out.

2008-01-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Test committing a table with a removed row.

	* dlls/msi/tests/db.c, dlls/msi/update.c:
	msi: Handle markers in the WHERE section of an UPDATE query, with tests.

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

	* dlls/kernel32/heap.c, dlls/kernel32/toolhelp.c:
	kernel32: Remove unneeded casts.

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

	* dlls/ole32/oleproxy.c, dlls/ole32/rpc.c:
	ole32: Fix some uses of SEEK_SET when STREAM_SEEK_SET should have been used
	instead.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix a leak of msg in RPCRT4_io_thread on the error paths.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement NdrMapCommAndFaultStatus.
	Add tests for this function.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use send on a socket instead of write as it's more portable.

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

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Additional stub implementations.

2008-01-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Add support for scaling font metrics.

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

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix a pixelshader recompilation check.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Detect geforce 7300 cards.

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

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Improve error handling in RPCRT4_io_thread and remove commented-out code.

	* dlls/rpcrt4/rpc_assoc.c, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_server.c:
	rpcrt4: Bind to the server interface in I_RpcGetBuffer, not I_RpcSendReceive.
	The actual sending of the request is still done in I_RpcSendReceive though.
	Disallow the server from calling I_RpcSend and I_RpcReceive to allow
	simplification of the code. The releasing of the connection is now done
	in I_RpcFreeBuffer.
	Implement I_RpcNegotiateTransferSyntax.

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Remove some unused includes.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Set the fBufferValid flag in NdrProxyGetBuffer.
	Only call IRpcChannelBuffer_FreeBuffer in NdrProxyFreeBuffer if
	fBufferValid is set.

	* include/rpcdcep.h:
	include: Add prototype for I_RpcNegotiateTransferSyntax.

2008-01-07  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/crypt32/crypt32_Fr.rc:
	crypt32: Updated French translation.

2008-01-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/crypt32/crypt32_En.rc, dlls/crypt32/crypt32_No.rc,
	  dlls/crypt32/cryptres.h, dlls/crypt32/oid.c:
	crypt32: Implement CryptFindLocalizedName.

2008-01-07  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/user32/edit.c:
	user32: Factor in EDIT_WM_EraseBkGnd().

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

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/process.c:
	msvcrt: Correct search strategy for the exec/spawn functions.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Implement _wexecv{, e, p, pe}.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Implement _wspawnl{, e, p, pe}.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Implement _wexecl{, e, p, pe}.

	* dlls/msvcrt/process.c:
	msvcrt: Rewrite _spawnve as a wrapper.

	* dlls/msvcrt/process.c:
	msvcrt: Implement _execl{e, pe}.

	* dlls/msvcrt/process.c:
	msvcrt: Rewrite _execl/_spawnl functions as wrappers around wide character
	implementations.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/process.c:
	msvcrt: Implement _wpopen and forward _popen to it.

	* dlls/msvcrt/data.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/process.c:
	msvcrt: Implement _wsystem and forward system to it. Respect COMSPEC environment
	variable.

2008-01-07  Andrey Esin <andrey@esin.name>

	* dlls/shell32/shell32_Ru.rc:
	shell32: Fixed typo.

2008-01-08  Andrey Esin <andrey@esin.name>

	* programs/wordpad/Ru.rc:
	wordpad: Russian translation.

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

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Don't crash on win98.

2008-01-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: If lpstrFile points to a valid string use it as a default value for
	edit control.

	* dlls/gdi32/tests/font.c:
	gdi32: Add more tests for bitmap font metrics scaling.

	* dlls/msvcrt/data.c, dlls/msvcrt/environ.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec:
	msvcrt: Rename _environ to avoid a conflict on Solaris.

2008-01-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/print.c:
	wordpad: Draw margin lines in print preview.

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

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Set IE's IVer and Build registries.

	* dlls/shdocvw/navigate.c:
	shdocvw: Fixed ref count leak.

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

	* dlls/itss/chm_lib.c:
	itss: Remove unneeded casts.

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

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/graphicspath.c:
	gdiplus: Remove unneeded casts.

2008-01-07  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Set paper size in printer dialog.

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

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Add test for rendering vertices with zero rhw.

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

	* dlls/kernel32/volume.c:
	kernel32: Fail more gracefully in GetVolumeInformation for fake drive devices.

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

	* dlls/gdi32/metafile.c:
	gdi32: Break loop in MF_PlayMetaFile when META_EOF is found.

2008-01-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel32/volume.c:
	kernel32: Add missing HeapFree(). Found by Smatch.

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

	* dlls/wined3d/surface.c:
	wined3d: Unify color conversion code.

2008-01-07  Lei Zhang <thestig@google.com>

	* dlls/msxml3/msxml_private.h:
	msxml: Fix compilation on machines without libxml2.

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

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Set ReservedForRuntime to NULL in NdrClientInitializeNew.

	* dlls/rpcrt4/rpc_async.c, dlls/rpcrt4/tests/rpc_async.c:
	rpcrt4: Implement RpcAsyncInitializeHandle.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/rpc_async.c:
	rpcrt4: Add tests for some async RPC functions.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_async.c,
	  dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stubs for asynchronous functions.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stubs for I_RpcAsyncSetHandle and I_RpcAsyncAbortCall.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Call NdrCorrelationInitialize and NdrCorrelationFree from NdrClientCall2
	if new correlation descriptors have been specified.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stubs for NdrCorrelationInitialize, NdrCorrelationPass and
	NdrCorrelationFree.

	* dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/ndr_stubless.h:
	rpcrt4: ndr_stubless.h should include ndrtypes.h as it depends on types
	it defines.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, include/rpcdcep.h:
	rpcrt4: Set the ProcNum of RPC_MESSAGE in NdrClientInitializeNew to include
	RPC_VALID_FLAGS_BIT.
	Mask out RPC_VALID_FLAGS_BIT from ProcNum when it is used to build a
	packet to send to the server.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for the RPC_MESSAGE members set by NdrClientInitializeNew.

	* dlls/ole32/rpc.c:
	ole32: Fix memory leaks caused by not calling the channel hook function when
	extension_size is zero.
	Instead free the allocated memory outside of the channel hook function.

	* dlls/ole32/oleproxy.c:
	ole32: Fix a memory leak.

	* dlls/ole32/rpc.c:
	ole32: Shortcut the RPC runtime for allocation of the message when processing
	the COM call by just sending a message to a window in the process.

	* dlls/ole32/rpc.c:
	ole32: Clear the RPC_FLAGS_VALID_BIT flag from the RPC_MESSAGE ProcNum when
	shortcutting the RPC runtime.

	* tools/widl/typegen.c:
	widl: Use symbolic names for some of the context handle attributes.

	* tools/widl/typegen.c:
	widl: Fix context handle "cannot be null" detection.
	The "cannot be null" attibute is applied to a parameter if and only if
	it is in-only.

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

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fix NtQueryValueKey for KeyValueBasicInformation.
	Add some tests for this.

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fix the Data and Name returned by NtQueryValueKey for
	KeyValueFullInformation.

	* dlls/ntdll/tests/reg.c:
	ntdll: Add tests for the data and name returned by NtQueryValueKey.

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

	* server/registry.c:
	server: Output incorrectly-terminated strings in hex format.

	* server/registry.c:
	server: Make the registry parser more tolerant about malformed hex values.

	* server/registry.c, server/unicode.c, server/unicode.h:
	server: Accept utf-8 data as input in registry files.

	* programs/regedit/regproc.c:
	regedit: Fixed parsing of hex sequences.

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

	* dlls/wined3d/surface.c:
	wined3d: Use software palette conversion for non-texturing operations.

2008-01-06  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Hide and show the frame window instead of the inner one.

2008-01-06  Dan Kegel <dank@kegel.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Expand short paths, else menu items aren't created for CSLU
	Toolkit.

2008-01-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dwmapi/dwmapi.spec, dlls/dwmapi/dwmapi_main.c, include/dwmapi.h,
	  tools/winapi/win32.api:
	dwmapi: Add stub implementation for DwmSetWindowAttribute and
	DwmUnregisterThumbnail.

2008-01-04  Andre Wisplinghoff <andre.wisplinghoff@gmail.com>

	* programs/regedit/framewnd.c:
	regedit: Refresh tree view on import.

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

	* server/process.c, server/request.c:
	server: Wait for the expiration of all the process SIGKILL timers before
	exiting the server.

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Avoid using size_t in traces.

	* dlls/gdi32/tests/dc.c:
	gdi32/tests: Avoid using size_t in traces.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Print the correct size in an error message.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use unsigned int instead of size_t for the glsl mask size.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/vertexdeclaration.c, dlls/wined3d/device.c,
	  dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_interface.h:
	wined3d: Use unsigned int instead of size_t for element counts.

	* configure, configure.ac, dlls/odbc32/proxyodbc.c,
	  dlls/odbc32/proxyodbc.h, include/config.h.in:
	configure: Added a check for the soname of libodbc.

	* aclocal.m4, configure, configure.ac:
	configure: Add --without options for all optional dependencies.

2008-01-05  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/devenum/mediacatenum.c:
	devenum: Fix the implementation of IEnumMoniker::Skip(), to match the MSDN specs.

2008-01-04  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/dinput/dinput_main.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Silence incorrect warning and move it to a valid place.

2008-01-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Set orientation in printer dialog.

2007-12-31  Rico Schüller <kgbricola@web.de>

	* dlls/msi/dialog.c, dlls/msi/source.c:
	msi: Fix memory leaks (found by Smatch).

	* dlls/mshtml/install.c:
	mshtml: Fix memory leak (found by Smatch).

	* dlls/cabinet/cabinet_main.c:
	cabinet: Fix memory leak (found by Smatch).

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

	* dlls/winemp3.acm/dct64_i386.c, dlls/winemp3.acm/decode_i386.c,
	  dlls/winemp3.acm/huffman.h, dlls/winemp3.acm/layer3.c,
	  dlls/winenas.drv/audio.c, dlls/wineoss.drv/audio.c,
	  dlls/wineoss.drv/midi.c, dlls/wineoss.drv/midipatch.c,
	  dlls/winex11.drv/bitblt.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/wintab.c, dlls/winex11.drv/xdnd.c,
	  dlls/winex11.drv/xrender.c, dlls/wininet/ftp.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/wininet/tests/generated.c,
	  dlls/wininet/tests/url.c, dlls/wininet/urlcache.c:
	Spelling fixes.

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

	* dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Implement I_RpcMapWin32Status.
	Add a test for this function.

	* include/rpcdcep.h:
	include: I_RpcBindingInqTransportType and I_RpcMapWin32Status should be
	always defined.

	* tools/widl/typegen.c:
	widl: Fix the conditions under which array freeing code is output.
	It doesn't matter whether or not the array is declared as a pointer or
	is declared using array subscripts - the array is still allocated by the
	unmarshalling function and so needs to be freed.
	Fix a typo that caused varying arrays never to be freed.
	Fix another typo with the check for conformant arrays being performed
	twice, redundantly.

2008-01-07  Francois Gouget <fgouget@free.fr>

	* dlls/wintab32/context.c:
	wintab32: Add a trailing '\n' to a Wine trace.

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

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

	* dlls/imm32/imm.c, dlls/imm32/tests/imm32.c:
	imm32: ImmNotifyIMM with CPS_CANCEL fully clears the composition string. Also
	enable respective tests.

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

	* include/wine/irot.idl:
	include: Add the strict_context_handle flag to the Irot interface.

	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Print fixme's if the serialize or no-serialize flags are set on a
	context handle being marshalled or unmarshalled.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Add support for strict context handles.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass the interface identifier to the lower-level context handle routines
	for context handles with the strict flag set.

	* tools/widl/typegen.c:
	widl: Output calls for the new versions of the marshalling and unmarshalling
	routines for server context handles.
	This needs to be done to match the call to NdrContextHandleInitialize
	and because we default to using strict context handles.

	* include/wine/rpcfc.h:
	include: Add defines for context handle flags to rpcfc.h.

	* dlls/ole32/tests/moniker.c:
	ole32: Fix a typo in the class moniker tests.

	* dlls/ole32/moniker.c:
	ole32: get_moniker_for_progid_display_name should fallback to using IClassFactory
	to get IParseDisplayName if getting it directly fails.

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

	* programs/wineboot/wineboot.c:
	wineboot: Don't print errors for non-fatal problems.

2008-01-06  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Fix index to handle offset value = 0 correclty.

2008-01-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/nonclient.c:
	user32: Remove unused lpGrayMask array.

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

	* dlls/dxdiagn/container.c, dlls/dxdiagn/provider.c:
	dxdiagn: Remove unneeded casts.

	* dlls/gdi32/brush.c, dlls/gdi32/dib.c, dlls/gdi32/enhmetafile.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/metafile.c,
	  dlls/gdi32/metafile16.c, dlls/gdi32/printdrv.c:
	gdi32: Remove unneeded casts.

	* dlls/gphoto2.ds/capability.c:
	gphoto2.ds: Remove unneeded casts.

	* dlls/iccvid/iccvid.c:
	iccvid: Remove unneeded casts.

	* dlls/imm32/imm.c:
	imm32: Remove unneeded cast.

	* dlls/comdlg32/finddlg32.c:
	comdlg32: Remove unneeded cast.

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

	* dlls/advapi32/service.c:
	advapi32: Fix the length written to the pipe for the start message.

	* dlls/ntdll/file.c:
	ntdll: Return a proper Information field also when opening a server file object.

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

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add stubs for SpoolerHasInitialized and SpoolerInit.

2008-01-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Create parent directories when duplicating files if they don't exist,
	with tests.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Pad the month and day to two digits.

	* dlls/msi/tests/install.c:
	msi: Remove an erroneous table.

2008-01-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Copy the temporary package when storing the installer.

	* dlls/msi/action.c:
	msi: Check the local package for existence when resolving the package source.

	* dlls/msi/files.c:
	msi: Directly download mi->source now that SourceDir points to the URL.

	* dlls/msi/action.c:
	msi: OriginalDatabase can be a URL so check for a forward slash too.

	* dlls/msi/action.c:
	msi: SourceDir is formed from the path of OriginalDatabase.

	* dlls/msi/package.c:
	msi: OriginalDatabase is the fully-expanded path to the original package if
	the package is local and installed from the command line.

	* dlls/msi/action.c:
	msi: Factor out msi_set_sourcedir_props.

	* dlls/msi/package.c:
	msi: If the package is a URL, the OriginalDatabase property should be the URL
	and the DATABASE property should be the path to the local temporary package.

	* dlls/msi/action.c:
	msi: WriteEnvironmentStrings should also write to REG_EXPAND_SZ strings.

	* dlls/msi/files.c:
	msi: Only read an internal package if the file to install is compressed.

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

	* dlls/riched20/editor.c, dlls/riched20/run.c, dlls/riched20/style.c:
	richedit: Uniformly handle the bPitchAndFamily field out of CHARFORMAT.

	* dlls/riched20/paint.c:
	richedit: Check return of GetScrollInfo before accessing the returned structure.

	* dlls/riched20/editor.c:
	richedit: Initialize all the cursors at editor creation.

	* dlls/riched20/style.c:
	richedit: Only copy the charset when it's defined.

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

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't set Buffer to NULL in I_RpcFreeBuffer.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add some tests for NdrGetBuffer and NdrFreeBuffer.

	* dlls/ole32/oleproxy.c:
	ole32: Clear the RPC_MESSAGE structure before using it.
	The RPC runtime could use some of the parameters, expecting them to be
	initialised.

	* dlls/kernel32/sync.c:
	kernel32: Implement RegisterWaitForSingleObjectEx.

	* programs/svchost/svchost.c:
	svchost: Add a FIXME for an undocumented function (SvchostPushServiceGlobals)
	that some native services expect to be called by native svchost.

	* dlls/ole32/rpc.c:
	ole32: Determine the destination for the COM call and initialise the
	necessary parameters in ClientRpcChannelBuffer_GetBuffer instead of
	ClientRpcChannelBuffer_SendReceive.
	The parameters are then freed in the matching
	ClientRpcChannelBuffer_FreeBuffer function.

	* tools/widl/typegen.c:
	widl: Make the offset of conformant string types point to the start of the
	conformant string format chars, not the pointer type.
	Otherwise, writing a type at top-level could cause the pointer format
	string to be used in non-top-level places which may cause memory
	corruption during freeing.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Update todos.

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

	* tools/wine.desktop:
	tools/wine.desktop: Add Dutch translation.

	* dlls/kernel32/nls/nlb.nls, dlls/kernel32/nls/nls.nls:
	kernel32: Add Surinam Dutch and Belgian Dutch translations of language group
	names.

	* dlls/kernel32/tests/change.c:
	kernel32: Fix two test failures on Win98 due to missing GetTempPathW.

	* dlls/wininet/http.c:
	wininet: Fix handling of host and referrer headers in HttpOpenRequest.

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

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: Added tests for FindFirstVolume/FindNextVolume.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Implemented FindFirstVolume/FindNextVolume using the mount point
	manager.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Implemented the IOCTL_MOUNTMGR_QUERY_POINTS request.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Add devices to the MountedDevices registry key.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Create disk devices for all configured drives.

	* dlls/mountmgr.sys/mountmgr.c:
	mountmgr.sys: Create a hard disk device for PhysicalDrive0.

2008-01-01  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Add missing pitch in callback from EnumDisplayModes().

2007-12-29  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: Convert newborn wineserver handle to kernel32 console handle.

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

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mountmgr.sys/Makefile.in, dlls/mountmgr.sys/mountmgr.c,
	  dlls/mountmgr.sys/mountmgr.sys.spec:
	mountmgr.sys: Added initial stub for the mount point manager device.

2008-01-03  Austin English <austinenglish@gmail.com>

	* dlls/winmm/mci.c, dlls/winmm/winmm.c, dlls/wldap32/ber.c,
	  dlls/wldap32/control.c, dlls/ws2_32/async.c, dlls/ws2_32/socket.c,
	  dlls/ws2_32/socket16.c, dlls/ws2_32/tests/sock.c:
	More spelling fixes.

2008-01-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* .gitignore, server/Makefile.in, server/wineserver.fr.man.in:
	server: New French man page for wineserver.

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

	* dlls/kernel32/process.c, programs/wineboot/Makefile.in,
	  programs/wineboot/wineboot.c:
	kernel32: Launch wineboot on first startup of a wine process.

	* dlls/advapi32/service.c:
	advapi32: Don't wait for 20 seconds if a service fails to start.

2008-01-03  Lance Jackson <lancej@lancej.net>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	cmd: Fix some unclosed file and registry handles.

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

	* dlls/msi/table.c:
	msi: Adjust the types of loop variables.

	* dlls/d3d9/device.c:
	d3d9: Fix type of loop variable.

	* dlls/d3d8/device.c:
	d3d8: Fix type of loop variable.

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

	* dlls/gdi32/font.c:
	gdi32: Remove redundant indentation levels in CreateFontIndirectA and
	CreateFontIndirectW.

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

	* dlls/mshtml/txtrange.c:
	mshtml: Don't assume that end_pos.node is text node in range_to_string.

	* dlls/mshtml/protocol.c:
	mshtml: Fixed Read implementations.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added Invoke(DISPID_READYSTATE) implementation.

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

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Tests for get_xml, createAttribute, CreateComment, setNamedItem.

	* dlls/msxml3/node.c:
	msxml3: Implement get_xml.

	* dlls/msxml3/node.c:
	msxml3: Cannot add an attribute with appendChild.

	* dlls/msxml3/node.c:
	msxml3: Add missing values for get_nodeName.

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement createAttribute.

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement createComment.

	* dlls/msxml3/msxml_private.h, dlls/msxml3/node.c, dlls/msxml3/nodemap.c:
	msxml3: Implement setNamedItem.

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

	* dlls/shdocvw/navigate.c:
	shdocvw: Call try_application_url after BindToObject failure.

	* dlls/shdocvw/navigate.c:
	shdocvw: Use BindToObject to load document (except for http, https and ftp
	protocols).

	* dlls/shdocvw/navigate.c:
	shdocvw.5: Move on_before_navigate2 call to navigate_mon.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added OnStopBinding implementation and use it in http_load_hack.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added OnProgress implementation.

	* dlls/shdocvw/navigate.c:
	shdocvw: Use OnObjectAvailable in http_load_hack.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added OnObjectAvailable implementation.

	* dlls/shdocvw/navigate.c:
	shdocvw: Always create BindStatusCallback object.

	* dlls/shdocvw/navigate.c:
	shdocvw: Return correct variables in GetBindInfo.

	* dlls/shdocvw/navigate.c:
	shdocvw: Return S_OK in OnStartBinding.

	* dlls/shdocvw/navigate.c:
	shdocvw: Store DocHost in BindStatusCallback.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added missing OnObjectAvailable function.

2008-01-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/driveui.c, programs/winecfg/theme.c,
	  programs/winecfg/winecfg.h:
	winecfg: Don't mix the strings in unix and windows locales.

2008-01-03  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Return E_INVALIDARG when value is NULL.

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

	* dlls/wininet/http.c:
	wininet: Check return value of InternetCrackUrl when checking referrer host.

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

	* dlls/ntdll/virtual.c:
	ntdll: Print an error for unsupported shared writable mappings.

2008-01-02  Zach Goldberg <zgold@BlueSata.com>

	* include/cvconst.h, include/d3d8types.h, include/ddraw.h,
	  include/digitalv.h, include/dplobby.h, include/exdisp.idl,
	  include/mmsystem.h, include/winternl.h, include/wintrust.h:
	Fix some typos.

2008-01-02  Austin English <austinenglish@gmail.com>

	* dlls/avifil32/acmstream.c, dlls/gdi32/bidi.c, dlls/gdi32/painting.c,
	  dlls/localspl/localmon.c, dlls/oledlg/pastespl.c,
	  dlls/riched20/rtf.h, dlls/wineoss.drv/audio.h,
	  dlls/wineps.drv/type1afm.c, dlls/wldap32/parse.c:
	Spelling fixes.

2008-01-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/imm32/tests/Makefile.in, dlls/imm32/tests/imm32.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	imm32: Added some unit test cases.

2008-01-02  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: When updating a NULL HIMCC with NULL just return NULL. Handle the NULL
	HIMCC for the compstr when doing a ImmNotifyIME for a reset.

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

	* dlls/msi/helpers.c:
	msi: Remove an extraneous safety check and simplify generate_error_string().

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Remove two noop checks.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	wined3d: Removed dead FIXME checks.

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

	* include/ws2tcpip.h:
	include: ws2tcpip.h should include winsock2.h.

2008-01-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Properly handle the surface location in stretch_rect_fbo().

	* dlls/wined3d/surface.c:
	wined3d: SFLAG_INTEXTURE is the same as SFLAG_INDRAWABLE for offscreen render
	targets when ORM_FBO is used.

	* dlls/wined3d/surface.c:
	wined3d: Bind the surface texture in LoadLocation().

	* dlls/wined3d/surface.c:
	wined3d: Move binding the texture and dirtifying the sampler to its own function
	from surface_download_data().

	* dlls/wined3d/cubetexture.c, dlls/wined3d/texture.c:
	wined3d: Call SetGlTextureDesc() from BindTexture() rather than from PreLoad().

	* dlls/wined3d/device.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/surface.c:
	wined3d: Call ActivateContext regardless of WINED3DCREATE_MULTITHREADED.

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

	* server/process.c, server/process.h, server/request.c, server/request.h,
	  server/signal.c, server/trace.c:
	server: Redesign the server shutdown processing.
	System processes are now killed only after the server persistence
	delay has expired. New processes are not allowed to start during
	shutdown.

	* server/request.c:
	server: Use exponential backoff when waiting for wineserver -k to complete.

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

	* dlls/kernel32/tests/thread.c:
	kernel32: Add tests for RegisterWaitForSingleObject and UnregisterWait.

	* dlls/kernel32/sync.c:
	kernel32: Implement RegisterWaitForSingleObject and UnregisterWait.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/threadpool.c, include/winternl.h:
	ntdll: Implement RtlRegisterWait, RtlDeregisterWait and RtlDeregisterWaitEx.

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

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/para.c:
	richedit: Simplify first para style handling by creating a context.

	* dlls/riched20/editor.c, dlls/riched20/paint.c:
	richedit: Don't force repaint while the redraw flag is off.

	* dlls/riched20/context.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/run.c,
	  dlls/riched20/style.c, dlls/riched20/wrap.c:
	richedit: Optimizations for the style selection.
	Use a ME_Context for style selection/unselection.
	Store the (x,y) dpi information for a given DC in the corresponding ME_Context
	structure.

	* dlls/riched20/editor.h, dlls/riched20/run.c, dlls/riched20/wrap.c:
	richedit: Don't recreate the DC all the time, but use uniformely a ME_Context
	structure where needed.

	* dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/wrap.c:
	richedit: Move init code after some sanity checks to avoid unneeded computations.

	* dlls/riched20/caret.c:
	richedit: Small optimisation in ME_GetSelectionInsertStyle.

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/wrap.c:
	richedit: Rewrote FindPixelPos so that it always return something.
	Made the function static as well.

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Added support for intra-paragraph line space.

	* dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Added support for spaces above & below paragraphs.

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Now drawing the paragraph borders (if any) from paraformat2.

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	richedit: Fix the para computation when zoom is used.

	* dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/wrap.c:
	richedit: Enforce usage of paraformat2 fields instead of homegrown ones for
	paragraphs.

	* dlls/riched20/para.c:
	richedit: Properly copying the paraformat2 structure for paragraphs.

	* dlls/riched20/para.c:
	richedit: Now dumping all fields from the paraformat2 structure.

	* dlls/riched20/para.c:
	richedit: Correctly initialize the paraformat structure.

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/paint.c:
	richedit: Simplified handling of background brush while painting.

	* dlls/riched20/paint.c:
	richedit: Now painting the newly supported underline types.

	* dlls/riched20/editor.c, dlls/riched20/para.c, dlls/riched20/run.c,
	  dlls/riched20/style.c:
	richedit: Extend the usage of underlinetype from charformat2 in richedit.

	* dlls/riched20/wrap.c:
	richedit: Don't allow recursive EN_REQUESTRESIZE notifications.

	* dlls/riched20/style.c:
	richedit: Correctly copy the pitch and family field.

	* dlls/riched20/para.c:
	richedit: Fully initialize the first style.

	* dlls/riched20/style.c:
	richedit: Correctly set the CFM_WEIGHT in charformat2.

	* dlls/riched20/style.c:
	richedit: Fixed a couple of charformatXXm structure conversions because of
	alignment issues.

	* dlls/riched20/editor.c:
	richedit: Added support for some message (key, mouse) filtering events.

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

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Fix spec file entries for the execv functions.

	* dlls/gdi32/font.c, dlls/gdi32/gdi32.spec:
	gdi32: Add a stub implementation for RemoveFontMemResourceEx.

2008-01-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/helpers.c:
	msi: Remove an extraneous safety check and simplify deformat_string().

2008-01-02  Alexander Dorofeyev <alexd4@inbox.lv>

	* include/d3d.h:
	include/d3d.h: Fix method calling macros for IDirect3DTexture.

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

	* dlls/user32/user32.spec, dlls/user32/user_main.c:
	user32: Add a stub implementation of RegisterServicesProcess.

2007-12-31  Austin English <austinenglish@gmail.com>

	* dlls/msi/classes.c:
	msi: Fix several typos.

	* dlls/dplayx/dplayx_queue.h:
	dplayx: Fix a typo.

2007-12-30  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/dinput/joystick_linux.c:
	dinput: Improve TRACEs and WARNs.

	* dlls/msi/action.c, dlls/msi/database.c:
	msi: Correctly handle return value of msi_realloc.

2007-12-30  Reece H. Dunn <msclrhd@gmail.com>

	* include/gdiplustypes.h:
	gdiplus: Added the ProfileNotFound status code.

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

	* dlls/crypt32/context.c, dlls/crypt32/crl.c,
	  dlls/crypt32/crypt32_private.h:
	crypt32: Avoid casting away const from the context pointer.

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

	* dlls/netapi32/access.c:
	netapi32: Remove two unused global variables.

2008-01-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/qcap/qcap_main.c:
	qcap: Complete initializers for g_cTemplates[].

	* dlls/wined3d/device.c:
	wined3d: Simplify three checks based on the unsignedness of variables.

	* dlls/ole32/compobj.c:
	ole32: Remove one noop check in CoWaitForMultipleHandles().

	* dlls/winspool.drv/tests/info.c:
	winspool: Adjust the typo of a loop variable in test_EnumForms().
	Simplify a test in test_GetPrinterDriver().

	* dlls/wined3d/cubetexture.c:
	wined3d: Remove four noop checks.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Simplify condition in test_vshader_input().

	* dlls/msi/table.c:
	msi: Simplify condition in TABLE_fetch_stream().

2007-12-31  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/d3d8/device.c:
	d3d8: Remove unneeded casts.

	* dlls/comctl32/propsheet.c, dlls/comctl32/status.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c:
	comctl32: Remove unneeded casts.

	* dlls/dsound/capture.c, dlls/dsound/dsound.c, dlls/dsound/mixer.c:
	dsound: Remove unneeded casts.

	* dlls/dplayx/dplayx_global.c, dlls/dplayx/dplobby.c:
	dplayx: Remove unneeded casts.

	* dlls/ddraw/device.c, dlls/ddraw/viewport.c:
	ddraw: Remove unneeded casts.

	* dlls/dbghelp/minidump.c:
	dbghelp: Remove unneeded casts.

2007-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Added PutProperty implementation.

2007-12-31  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/datetime.c, dlls/gdiplus/graphics.c,
	  dlls/msi/tests/install.c, dlls/msi/tests/msi.c,
	  dlls/oleaut32/tests/varformat.c, dlls/quartz/tests/misc.c:
	janitorial: Remove superfluous backslashes at end of lines.

2007-12-29  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Simplify condition in create_xcursor_cursor() based on the
	unsignedness of types.

	* dlls/kernel32/tests/alloc.c:
	kernel32/tests: Remove extraneous check.

	* programs/taskmgr/graph.c:
	taskmgr: Remove redundant out-of-domain checking which is already handled by
	PerfDataGetProcessorUsage() and PerfDataGetProcessorSystemUsage().

	* programs/winhelp/winhelp.c:
	winhelp: Remove a dead condition.

2007-12-30  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Fix regression of colorfill and texture to swapchain codepaths in
	BltOverride.

	* dlls/ddraw/texture.c:
	ddraw: Remove redundant iface<->impl casts in IDirect3DTextureImpl_Load.
	The implementation pointer retrieved from interface ptr wasn't being used for
	anything except retrieving same interface ptr back.

	* dlls/ddraw/texture.c:
	ddraw: Release palette interfaces.

	* dlls/wined3d/palette.c:
	wined3d: Free palette handle when destroying IWineD3DPaletteImpl.

2007-12-31  Jeremy White <jwhite@codeweavers.com>

	* dlls/winex11.drv/wintab.c:
	wintab32: If we could not find a stylus sort of device, we haven't found
	a tablet.

	* dlls/winex11.drv/wintab.c:
	wintab32: Add logic to detect specific tablet cursor types, use it to discard
	non tablet X devices.

2007-12-30  Jeremy White <jwhite@codeweavers.com>

	* dlls/wintab32/context.c, dlls/wintab32/wintab_internal.h:
	wintab32: Remove the unused and clearly broken FindOpenContext function.
	It's clear that someone left it in by accident; the TABLET_FindOpenContext
	is its clear successor.

	* dlls/winex11.drv/wintab.c, dlls/wintab32/context.c:
	wintab32: Add modest trace information for tablets.

2007-12-30  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/cert.c, dlls/crypt32/protectdata.c, dlls/crypt32/store.c,
	  dlls/crypt32/str.c:
	crypt32: Remove unneeded casts.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Remove unneeded cast.

2007-12-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/dde_server.c:
	user32: Fix a spelling typo.

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c, dlls/avifil32/factory.c:
	avifil32: Remove unneeded casts.

	* dlls/cabinet/fdi.c:
	cabinet: Remove unneeded cast.

	* dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/header.c, dlls/comctl32/ipaddress.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/pager.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/updown.c:
	comctl32: Remove unneeded casts.

	* dlls/advapi32/crypt_md4.c, dlls/advapi32/crypt_md5.c:
	advapi32: Remove unneeded casts.

2007-12-29  Peter Dons Tychsen <donpedro@dhcppc4>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add missing types to serialize/deserialize.

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

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Set the DataLength field of the information field in NtQueryValueKey
	to how much data should be returned, not what was actually returned.

	* dlls/ntdll/tests/reg.c:
	ntdll: Add some tests for NtQueryValueKey.

2007-12-29  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/user32/sysparams.c:
	user32: Fix type of loop variable.

	* dlls/wined3d/basetexture.c:
	wined3d: Remove noop check in IWineD3DBaseTextureImpl_Appl().

	* dlls/msi/delete.c:
	msi: Add missing initializer for delete_ops.

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

	* dlls/shell32/shfldr_netplaces.c:
	shell32: Fix messed up indentation.

	* dlls/winedos/interrupts.c:
	winedos: Don't emulate in 32-bit mode interrupts that don't have a specific
	handler.

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

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Fix NdrGetBuffer to set the correct fields in the MIDL_STUB_MESSAGE
	structure.
	Fix NdrFreeBuffer to use the fBufferValid flag to determine whether or
	not I_RpcFreeBuffer needs to be called.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Make some variables in the tests static.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for NdrServerInitializeNew.

	* dlls/rpcrt4/ndr_clientserver.c:
	rpcrt4: Fix the MIDL_STUB_MESSAGE fields set by NdrServerInitializeNew.

	* dlls/rpcrt4/ndr_contexthandle.c:
	rpcrt4: Fix a case of destroying a context handle without first releasing
	the lock.
	Reverse the order of the release statements in NDRSContextMarshall2 for
	the case where the context handle doesn't have valid data so that the
	release that releases the lock comes first and then the optional second
	release doesn't need to release the lock.

	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Keep a track of server context handles allocated during processing of
	a request.
	Release them after processing of a request has finished to avoid a slow
	memory leak if the association isn't released for ages.

	* include/rpcdcep.h:
	include: Add defines for more message flags in rpcdcep.h.

	* tools/widl/typegen.c:
	widl: Check that the buffer has enough space before unmarshalling base types
	in generated code.

2007-12-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/ole32/bindctx.c:
	ole32: Fixed parameter checking and improved debug traces in
	IBindCtx::QueryInterface.

	* dlls/urlmon/tests/url.c:
	urlmon: Added more tests.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c, dlls/urlmon/umon.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added BindToObject implementation.

	* dlls/urlmon/format.c:
	urlmon: Call AddRef in EnumFORMATETC::QueryInterface.

	* dlls/urlmon/binding.c:
	urlmon: Added "CBinding Context" bind option support.

	* dlls/urlmon/binding.c:
	urlmon: Binding_Create clean up.

	* dlls/urlmon/binding.c:
	urlmon: Better error handling.

	* dlls/urlmon/binding.c:
	urlmon: Better implementation of bind stopping.

	* dlls/urlmon/binding.c, dlls/urlmon/umon.c, dlls/urlmon/urlmon_main.h:
	urlmon: Make start_binding more generic.

	* dlls/urlmon/bindctx.c, dlls/urlmon/tests/url.c:
	urlmon: Added ibind argument handling in CreateAsyncBindCtx.

	* include/urlmon.idl:
	urlmon.idl: Added missing MONIKERPROPERTY variables.

	* dlls/urlmon/binding.c, dlls/urlmon/bindprot.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Use BindProtocol in Binding object.

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

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantStringMemorySize.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add some tests for non-conformant strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement non-conformant string functions.

	* programs/rpcss/irotp.c:
	rpcss: Initialise some out-only parameters that aren't initialised by the
	generated RPC code.

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

	* dlls/user32/dde_misc.c:
	user32: Remove unneeded casts.

	* dlls/wininet/ftp.c:
	wininet: Fix typo in comparison with NULL. Found by Smatch.

2007-12-28  Lei Zhang <thestig@google.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, dlls/gdiplus/tests/pen.c:
	gdiplus: Add GdipCreatePen2 and test cases.

	* dlls/gdiplus/tests/pen.c:
	gdiplus: Initialize a variable in a test.

2007-12-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/ntdll/critsection.c, dlls/ntdll/heap.c, dlls/ntdll/reg.c,
	  dlls/ntdll/relay.c, dlls/ntdll/sec.c, dlls/ntdll/threadpool.c:
	ntdll: Remove unneeded casts.

	* dlls/msvfw32/msvideo16.c, dlls/msvfw32/msvideo_main.c:
	msvfw32: Remove unneeded casts.

2007-12-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added more binding tests.

	* dlls/urlmon/bindprot.c:
	urlmon: Release protocol sink in Terminate.

	* dlls/urlmon/bindprot.c:
	urlmon: More ReportProgress implementation.

	* dlls/urlmon/bindprot.c, dlls/urlmon/urlmon_main.h:
	urlmon: Move setting protocol_sink to separated function.

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

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

----------------------------------------------------------------
2007-12-28  Vincent Hardy <vincent.hardy.be@gmail.com>

	* programs/regedit/Fr.rc:
	regedit: Window caption correction.

2007-12-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Only store the palette index in the alpha component when the primary
	render target uses P8.
	This was already done in other places but I missed this spot.

	* dlls/wined3d/surface.c:
	wined3d: In case of GL_EXT_paletted_textures we use GL_COLOR_INDEX and don't
	need a GL_RED fixup.

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

	* dlls/user32/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/request.h,
	  server/trace.c:
	user32: Reimplement IsHungAppWindow.

2007-12-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/bindprot.c:
	urlmon: Rename BindProtocol's IInternetProtocolSink methods.
	Binding's implementation uses the same names, what makes reading logs
	harder.

	* dlls/urlmon/bindprot.c:
	urlmon: Use heap_alloc_zero to allocate BindProtocol.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added mime filters tests.

	* dlls/urlmon/session.c:
	urlmon: Added [Un]RegisterMimeFilter implementation.

	* dlls/urlmon/session.c:
	urlmon: RegisterNameSpace clean up.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added CoInternetQueryInfo tests.

	* dlls/urlmon/internet.c, dlls/urlmon/umon.c:
	urlmon: Added CoInternetQueryInfo implementation.

	* dlls/mshtml/tests/protocol.c:
	mshtml: Added QueryInfo tests.

	* dlls/mshtml/protocol.c:
	mshtml: Added ResProtocolInfo::QueryInfo implementation.

	* dlls/mshtml/protocol.c:
	mshtml: Added AboutProtocolInfo::QueryInfo implementation.

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

	* dlls/wined3d/vertexshader.c:
	wined3d: Multiply the half pixel correction with .w.

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

	* server/async.c:
	server: Initialise the apc_call_t union in async_set_result to all zero to
	avoid a Valgrind warning.

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

	* dlls/shell32/Makefile.in, dlls/shell32/pidl.c, dlls/shell32/pidl.h,
	  dlls/shell32/shell32_main.h, dlls/shell32/shellole.c,
	  dlls/shell32/shfldr_netplaces.c, dlls/shell32/shres.rc:
	shell32: Implement "My Network Places" shell folder.

2007-12-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/d3d9/tests/device.c:
	d3d9: Initialize pVertexBuffer.

2007-12-26  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/tests/font.c, tools/sfnt2fnt.c:
	fonts: Correct External leading for japanese small font and enable fontmetric
	test for the font.

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

	* programs/explorer/hal.c:
	explorer: Fix memory leak when one or more properties are not present on a
	hal device.

	* programs/rpcss/np_server.c:
	rpcss: Zero the memory of several variables before writing them to the pipe
	to silence Valgrind warnings.

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

	* dlls/wined3d/state.c:
	wined3d: Combine two glScalef calls into one.

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

	* dlls/wined3d/state.c:
	wined3d: Get rid of the invymat.
	glScalef(1.0, -1.0, 1.0) does the same as the glMultMatrix with the
	invymat matrix, and it is more optimal.

	* dlls/wined3d/surface.c:
	wined3d: Fix a problem in BltOverride.

2007-12-26  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msi/table.c:
	msi: Fix error handling in encode_streamname().

2007-12-27  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/state.c:
	wined3d: Also update alpha test when stage texture is NULL.

2007-12-23  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Load paper orientation in ChangePrinterW.

2007-12-25  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/directx.c:
	wined3d: Add zero/near zero vertex rhw special case.

2007-12-24  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ws2_32/socket.c:
	ws2_32: Fix timeout check.

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

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Re-use existing memory for embedded pointers in
	NdrVaryingArrayUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Re-use existing memory for embedded pointers in
	NdrConformantVaryingArrayUnmarshall.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add tests for varying and conformant varying arrays.

2007-12-26  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Treat const addresses as const unsigned.
	This will prevent winedbg from spamming about __wine_dbch__default.

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

	* dlls/quartz/filtergraph.c:
	quartz: Fix memory leak in FilterGraphInner_Release.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fix copy and paste error in VARIANT_UserUnmarshall with VT_UNKNOWN
	test.
	The variant type is VT_UNKNOWN so we should be using V_UNKNOWN, not
	V_VARIANTREF(V_R8) to check the type unmarshalled properly.

	* dlls/msi/streams.c, dlls/msi/table.c:
	msi: Fix several memory leaks after using IEnumSTATSTG_Next.
	The pwcsName field of STATSTG must be freed, otherwise the memory will
	be leaked.

	* dlls/hlink/extserv.c:
	hlink: Fix memory leak by freeing extension services This->headers in the
	release function.

2007-12-25  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/user32/spy.c:
	user32: Added the new Vista messages to spy.

	* include/winuser.h:
	include: Added the new Vista messages.

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

	* dlls/ole32/moniker.c, include/wine/irot.idl, programs/rpcss/irotp.c:
	rpcss: Use context handles to automatically free running object table entries
	if the client process quits without calling IrotRevoke.

	* tools/widl/typegen.c:
	widl: Add support for generating code for out-only context handles by calling
	NdrContextHandleInitialize.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add tests for low-level context handle functions.

	* dlls/rpcrt4/ndr_contexthandle.c, dlls/rpcrt4/rpc_assoc.c,
	  dlls/rpcrt4/rpc_assoc.h:
	rpcrt4: Implement low-level context handle support.
	Server context handles are tracked from associations as their lifetime
	is determined by the lifetime of the association.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement higher-level NDR server context handle functions.
	Implement NdrServerContextMarshall and NdrServerContextNewMarshall on
	top of NDRSContextMarshall2. Implement NdrContextHandleInitialize,
	NdrServerContextUnmarshall and NdrServerContextNewUnmarshall on top of
	NDSContextUnmarshall2.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_contexthandle.c,
	  dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Move low-level NDR context handle functions to a separate file.

	* include/d3d10.idl, include/msinkaut.idl, include/oleacc.idl,
	  include/wine/irot.idl:
	include: Remove semi-colons from the end of cpp_quote statements as MIDL
	likes them.

	* tools/widl/typegen.c:
	widl: Fix pointer detection in structures and arrays.
	write_embedded_types doesn't descend into all types contained by the
	array or structure, so create a new function, type_has_pointers, for the
	purpose of descending into all types and returning whether or not
	pointers are present.

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

	* dlls/wintab32/context.c:
	wintab32: Fix debug traces to use wine_dbg_sprintf.

2007-12-24  Jeremy White <jwhite@codeweavers.com>

	* dlls/wintab32/context.c:
	wintab32: Fix the W->A translation for CSR_NAME and CSR_BTNNAMES.
	Has the lovely side effect of making Photoshop pressure + tilt work.

	* dlls/winex11.drv/wintab.c:
	wintab32: Capture the number of buttons earlier, allowing our button maps to
	be filled in.

	* dlls/winex11.drv/wintab.c:
	wintab32: Implement the ability to return the number of devices and cursors.

	* dlls/winex11.drv/wintab.c:
	wintab32: Don't return information for non existent cursors.

2007-12-23  Jeremy White <jwhite@winehq.org>

	* dlls/winex11.drv/wintab.c:
	wintab32: Correctly handle devices with a device id of 0.
	The XInput macros such as DeviceMotionNotify will correctly return an eventclass
	of 0
	if the device id is 0.	Given that, we cannot use eventclass != 0 as a meaningful
	test, and must instead use the returned type.

	* dlls/winex11.drv/wintab.c:
	wintab32: Compute our physical device characteristics based on the first tablet
	device that looks like a stylus.
	Otherwise, we may be computing based on a mouse or cursor, and then
	come to incorrect values for our tilt and pressure settings.

	* dlls/winex11.drv/wintab.c:
	wintab32: Add additional device tracing.

	* dlls/winex11.drv/wintab.c:
	wintab32: Order the cursor array by the standard Wacom promulgates.

2007-12-24  Jeremy White <jwhite@winehq.org>

	* dlls/winex11.drv/wintab.c:
	wintab32: Add constants for cursor types and use them.

2007-12-24  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Add special case for microphone source in mixer.
	Some microphones don't have a capture control, but a playback control
	instead. So use the playback volume, but still register it as capture
	volume.

2007-12-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Use IBindCtx passed to Load in BindToStorage call.

	* dlls/urlmon/tests/url.c:
	urlmon: Fixed BindToObject tests.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added more binding tests.

	* dlls/urlmon/bindprot.c:
	urlmon: Added more BindProtocol::ReportProgress implementation.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::[Un]LockRequest.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::Continue implementation.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::Switch implementation.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IServiceProvider implementation to BindProtocol object.

	* dlls/urlmon/bindprot.c:
	urlmon: Added BindProtocol::GetBindString implementation.

	* dlls/urlmon/bindprot.c, dlls/urlmon/tests/protocol.c:
	urlmon: Fixed protocol tests.

2007-12-23  Jeremy White <jwhite@winehq.org>

	* dlls/winex11.drv/wintab.c:
	wintab32: Do not offset the physical device id by the cursor number.

	* dlls/winex11.drv/wintab.c:
	wintab32: Store and use the physical device id to match device to cursor.

2007-12-24  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leaks in tests.

2007-12-24  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ole32/compobj.c:
	ole32: Fix wrong timeout check.

2007-12-23  Eric Pouech <eric.pouech@orange.fr>

	* dlls/ntdll/heap.c, dlls/ntdll/signal_i386.c, loader/kthread.c:
	valgrind: Made Wine compliant will latest Valgrind macros (the one removed
	from 3.3.0 and deprecated since 3.2.0).

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

	* tools/widl/typegen.c:
	widl: Fix the generation of temporary variables for declared arrays.
	These need to include their array part so use var->type instead of
	var->ref->type.

2007-12-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msi/format.c:
	msi: Remove unneeded cast.

	* dlls/msvcrt/file.c:
	msvcrt: Remove unneeded cast.

	* dlls/msacm32/driver.c, dlls/msacm32/pcmconverter.c:
	msacm32: Remove unneeded casts.

2007-12-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/kernel32/cpu.c:
	kernel32: Silence a fixme in GetNativeSystemInfo.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Partly implement GdipCreateFromHDC2

2007-12-22  Johannes Stezenbach <js@sig21.net>

	* dlls/ws2_32/socket.c:
	ws2_32: Set *res = NULL for error return from WS_getaddrinfo().

	* dlls/wininet/urlcache.c:
	wininet: Fix error return code in FindFirstUrlCacheEntryW() stub.

	* dlls/wininet/internet.c:
	wininet: Implement support for INTERNET_OPTION_VERSION in InternetQueryOptionW.

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

	* dlls/gdi32/palette.c:
	gdi32: Fix a comment typo.

	* dlls/winex11.drv/text.c:
	winex11: Remove unused SWAP_INT macro.

2007-12-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Allow whitespace after the property name when setting a property in
	the dialog.

	* dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Allow the not-equal operator in WHERE query string comparisons.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix deleting temporary rows, with tests.

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

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set pStubMsg->BufferMark in NdrConformantVaryingArrayUnmarshall and
	NdrVaryingArrayUnmarshall.
	pStubMsg->BufferMark should always be set before
	EmbeddedPointerUnmarshall is called and these functions didn't
	previously do so.

2007-12-22  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/minidump.c:
	dbghelp: Adjust minidump streams ordering and sizing.
	To more closely match native format; this is required for windbg.

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

	* dlls/kernel32/instr.c, dlls/kernel32/kernel_private.h,
	  dlls/winedos/dosexe.h, dlls/winedos/interrupts.c:
	winedos: Add the possibility of refusing to emulate some interrupts.

	* dlls/kernel32/process.c:
	kernel32: Initialize MaximumLength of the user params directory too.

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

	* dlls/kernel32/heap.c:
	kernel32: Yet another workaround for broken apps in GlobalMemoryStatus.

2007-12-20  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: Invalidate local copy of console input event handle while reallocating
	console.

2007-12-20  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/misc.c:
	quartz: Make filtergraph aggregatable.

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/misc.c,
	  dlls/quartz/tests/videorenderer.c:
	quartz: Move aggregation tests into separate file.

2007-12-19  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/device.c:
	wined3d: Use IWineD3DDeviceImpl_ClearSurface in IWineD3DDeviceImpl_Clear.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rewrite IWineD3DSurfaceImpl_BltOverride colorfill codepath.

2007-12-20  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/kernel32/sync.c, dlls/kernel32/tests/sync.c, dlls/ntdll/ntdll.spec,
	  dlls/ntdll/threadpool.c, include/winternl.h:
	ntdll: Implement BindIoCompletionCallback.

2007-12-20  Zhangrong Huang <hzhrong@gmail.com>

	* dlls/secur32/secur32.c:
	secur32: Fix possible crash while loading SSP providers from registry.

	* dlls/gdi32/gdiobj.c, dlls/winex11.drv/xfont.c:
	gdi32, winex11.drv: Correct default Chinese font name.

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

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Accept D3DDEVTYPE_REF devices in the vertex declaration test.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexbuffer.c:
	wined3d: Implement and test vertex fixups with per stream offsets.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Per stream offsets are 4 byte aligned.

	* dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c,
	  dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/vertexdeclaration.c:
	wined3d: Vertex attributes are 4 byte aligned.

	* dlls/d3d9/tests/visual.c:
	wined3d: Add a test for POSITIONT vertex fixups.

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

	* dlls/wined3d/device.c:
	wined3d: Improve some traces.

	* dlls/d3d9/tests/visual.c:
	d3d9: Extend the fixed function vertex declaration test.

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

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Change the vertex buffer declaration's data format.
	This hopefully makes the vertex attribute detection simpler, more solid,
	readable and flexible.

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

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement half float vertex buffer conversion.

2007-12-21  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/moniker.c:
	ole32: Avoid leaving a critical section twice.

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

	* tools/widl/typegen.c:
	widl: Tweak the rules for when to call pfnFree for arrays.
	Varying arrays that aren't unmarshalled shouldn't be freed, but
	conformant arrays that aren't unmarshalled should.

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

	* dlls/kernel32/process.c:
	kernel32: Store the initial directory as a full path in the process parameters.

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

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add a test for calling VirtualAlloc on a view of a SEC_RESERVE
	file mapping.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix a memory leak from the get_filename call in the server tests.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Print an error if stub buffer pointer is passed into
	safe_copy_from_buffer.
	Also print an error message if there was an overflow.

2007-12-20  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: When we reuse window structure, old brush should not be reused.

2007-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Fix another regression in 3.1-style file dialog from LB_DIR fix.

2007-12-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/mciseq/mcimidi.c:
	mciseq: Remove unneeded casts.

	* dlls/mciavi32/mciavi.c, dlls/mciavi32/mmoutput.c:
	mciavi32: Remove unneeded casts.

	* dlls/kernel32/local16.c:
	kernel32: Revert the removal of a cast from a macro.

	* dlls/mapi32/imalloc.c, dlls/mapi32/prop.c:
	mapi32: Remove unneeded casts.

	* dlls/kernel32/thunk.c, dlls/kernel32/toolhelp.c:
	kernel32: Remove unneeded casts.

2007-12-20  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody_GetOffsets.

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

	* programs/winefile/winefile.c:
	winefile: Save font settings in registry.

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

	* dlls/ntdll/relay.c:
	ntdll: Increase the buffer size dynamically for relay debug lists.

	* dlls/advapi32/service.c:
	advapi32: Start non-interactive services in a separate window station.

	* programs/explorer/desktop.c:
	explorer: It no longer needs to be made a system process.

	* server/process.c:
	server: Don't give out full access to the system process event.

	* server/process.c:
	server: Don't count system processes as users of a desktop.

	* include/Makefile.in, include/ddk/mountmgr.h:
	include: Added the mountmgr.h header.

	* tools/wine.inf:
	wine.inf: Mark the spool service as disabled, it's just a stub.

	* programs/wineboot/wineboot.c:
	wineboot: Convert the rest of the code to Unicode.
	Fix Windows File Protection handling to use the correct system directory.

	* programs/wineboot/wineboot.c:
	wineboot: Rewrite wininit.ini processing to use
	GetPrivateProfileSectionW. Convert to Unicode.

	* programs/wineboot/wineboot.c:
	wineboot: Add support for starting NT-style services.

	* programs/wineboot/wineboot.c:
	wineboot: Simplify the unnecessarily complex code structure.

	* dlls/advapi32/security.c, dlls/advapi32/service.c:
	advapi32: Move the EnumDependentServicesA/W stubs in service.c where they belong.
	Make the stubs return success.

2007-12-19  Roy Shea <roy@cs.hmc.edu>

	* dlls/qmgr/Makefile.in, dlls/qmgr/qmgr.c, dlls/qmgr/qmgr.h:
	qmgr: AddRef, QueryInterface, and stub functions for queue manager interface.

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

	* dlls/ntdll/signal_i386.c, dlls/ntdll/signal_powerpc.c,
	  dlls/ntdll/signal_sparc.c, dlls/ntdll/signal_x86_64.c,
	  server/thread.c:
	server: Use SIGQUIT instead of SIGTERM to terminate a thread.
	This allows keeping the default SIGTERM behavior of killing the whole
	process.

	* dlls/kernel32/instr.c, dlls/winedos/interrupts.c:
	kernel32: Forward interrupts in 32-bit code to winedos too.

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

	* dlls/riched20/reader.c:
	riched20: Remove a redundant parameter from trace.

2007-12-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: The BS_GROUPBOX style should only be used if the HasBorder attribute is set.

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

	* dlls/ole32/rpc.c:
	ole32: Fix RPC_GetLocalClassObject to wait for 30 seconds, even if messages
	arrive while we are waiting.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrConformantStringUnmarshall to always increment the buffer
	during unmarshalling.
	safe_copy_from_buffer has the side-effect of incrementing the buffer and
	this still needs to be done when we point the memory into the buffer.
	(Thanks to Maarten Lankhorst for finding the mistake and suggesting a fix.)

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

	* dlls/d3d9/tests/visual.c, dlls/wined3d/drawprim.c:
	wined3d: Add a test for 16 bit floats.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Move the GL info structure into the adapter.

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix vertex buffers based on type, not semantic.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fixed function vertex attribute types are flexible.

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

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store if half float conversion is needed in the decl.

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

	* dlls/wined3d/device.c:
	wined3d: Always dump the fbo state on errors.

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

	* dlls/user32/sysparams.c, dlls/user32/tests/monitor.c,
	  dlls/winex11.drv/settings.c:
	user32: Add a test for an invalid DEVMODE passed to ChangeDisplaySettings,
	make it pass under Wine.

	* dlls/gdi32/driver.c, dlls/gdi32/tests/dc.c:
	gdi32: Add a test for minimal acceptable DEVMODEA size, make it pass under Wine.

2007-12-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Initialize a default COM apartment for custom actions.

	* dlls/msi/package.c:
	msi: Allow NULL parameters to be passed to the local MsiSetProperty.

2007-12-19  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c:
	gdiplus: Add GdipCreateHBITMAPFromBitmap() stub.

2007-12-19  Rico Schüller <kgbricola@web.de>

	* dlls/wined3d/state.c:
	wined3d: Fix some typos.

2007-12-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/resource.c:
	kernel32: Remove unneeded casts.

2007-12-19  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/dialog.c, dlls/user32/tests/listbox.c:
	user32: Fix regression in DlgDirList caused by modified LB_DIR return behavior,
	with tests.

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

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Don't use BufferEnd in RpcStream_Write.
	It is usually used during marshalling, where pStubMsg->BufferStart and
	pStubMsg->BufferEnd won't be valid. Replace it with a check using
	RpcMsg->Buffer and pStubMsg->BufferLength.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Initialise memory passed into RPCs in the server test.
	aligns contains padding, but the memory is marshalled in one block so
	call memset to avoid Valgrind warnings. padded and padded2 are
	marshalled as complex types so this is not required here.
	Initialise the dummy member of test_list_t to zero for the TL_NULL case.
	Change the type to the smallest available to not waste buffer space.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Memory should only be cleared in ComplexUnmarshall, not in
	ComplexMarshall.
	Also clear memory when FC_STRUCTPAD* is encountered.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the ALIGN_POINTER_CLEAR macro.

	* tools/widl/typegen.c:
	widl: Fix the length used when clearing alignment space in generated files.
	Only do the clearing when marshalling a base type.

	* tools/widl/typegen.c:
	widl: The detection of types is highly dependent on the ordering of the various
	type detection functions.
	Therefore, needs_freeing would have to duplicate a lot of
	write_remoting_arg in order to get the detection right. Because of
	this, it is easier and will cause less problems in the future to
	simply move the logic of needs_freeing into write_remoting_arg in the
	appropriate handling code for the detected type.

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

	* dlls/advapi32/service.c:
	advapi32: Return from StartServiceCtrlDispatcher when all services are stopped.

	* dlls/advapi32/service.c:
	advapi32: Replace the list of services with an array.

	* dlls/advapi32/service.c:
	advapi32: Use exponential backoff when waiting for a service to start.

	* dlls/advapi32/advapi32.spec:
	advapi32: Fix RegisterServiceCtrlHandler spec entry.

	* dlls/advapi32/service.c:
	advapi32: Reimplement RegisterServiceCtrlHandler on top of
	RegisterServiceCtrlHandlerEx.

2007-12-17  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, dlls/qmgr/Makefile.in, dlls/qmgr/qmgr_local.idl:
	qmgr: Generate C file with local GUID definitions from bits.idl.

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

	* include/winnt.h:
	include: Add CONTEXT86_EXTENDED_REGISTERS and CONTEXT86_ALL definitions.

	* dlls/user32/combo.c:
	user32: Set the edit text in a combobox only if combobox has strings.

	* dlls/user32/button.c:
	user32: Make sure to setup clipping before any painting is done.

	* dlls/gdi32/driver.c:
	gdi32: In the calculations use a fixed dmSize, not a passed in (possibly too
	large) one.

	* dlls/gdi32/tests/dc.c:
	gdi32: When compiling with PSDK headers request latest DEVMODE definition.

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

	* dlls/wined3d/surface.c:
	wined3d: Implement texture -> swapchain blits with stretch_rect_fbo.

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

	* dlls/wined3d/surface.c:
	wined3d: Some improvements for SFLAG_CONVERTED checking.
	We can check this flag before setting up the gl lock, and add the
	surface format to the FIXME.

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

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
	wined3d: Emulate half float vertices if GL_NV_half_float is not there.

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

	* dlls/wined3d/surface.c:
	wined3d: Implement blits from the active render target to swapchains.

2007-12-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi32/region.c:
	gdi32: There is no need to cast NULL to a function pointer.

2007-12-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/secur32/tests/schannel.c:
	secur32/tests: InitFunctionPtrs() needs to use the global crypt32dll variable.

2007-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c:
	msi: Free the ordering information.

2007-12-18  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/local16.c, dlls/kernel32/module.c:
	kernel32: Remove unneeded casts.

2007-12-18  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: ReadConsoleW should wait for at least one character before returning.

2007-12-18  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Unquote parameter values.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody_GetParameters.

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

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement I_RpcGetCurrentCallHandle.

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub for GetVersionFromProcess.

2007-12-18  Rico Schüller <kgbricola@web.de>

	* dlls/kernel32/sync.c:
	kernel32: Fix typo.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: Fix typo.

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

	* dlls/user32/user_main.c:
	user32: Set the WSF_VISIBLE flag on the main window station.

	* dlls/ntoskrnl.exe/ntoskrnl.c:
	ntoskrnl.exe: Allow returning data in ioctls along with a positive non-zero
	status.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Added implementation for IoCreateDriver and IoDeleteDriver.

	* server/async.c:
	server: Fix possible NULL dereference.

2007-12-17  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/tests/file.c, server/async.c, server/fd.c, server/file.h:
	server: Store I/O completion information in async structure.
	This is to allow completions to be sent on handle close. Also this can
	be helpful for AcceptEx/TransmitFile implementation.

2007-12-17  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/ws2_32/socket.c:
	ws2_32: Fix flags conversion in getnameinfo() function.

2007-12-18  Francois Gouget <fgouget@codeweavers.com>

	* configure, configure.ac:
	configure: Work around an Xcode 3.0 bug when detecting the libGL library.

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

	* dlls/comctl32/commctrl.c, dlls/d3d9/tests/device.c, dlls/gdi32/font.c,
	  dlls/shell32/shfldr_unixfs.c:
	Assorted spelling fixes.

2007-12-17  David Adam <david.adam.cnrs@gmail.com>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c:
	d3dx8: Implement D3DXCreateMatrixStack.

2007-12-18  David Adam <david.adam.cnrs@gmail.com>

	* dlls/d3dx8/d3dx8_private.h, dlls/d3dx8/math.c:
	d3dx8: Add basic functions and stubs for MatrixStack.

2007-12-17  David Adam <david.adam.cnrs@gmail.com>

	* dlls/d3dx8/d3dx8_main.c, dlls/d3dx8/d3dx8_private.h,
	  dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Rename d3dx_core_private.h to d3dx8_private.h.

	* dlls/dxguid/dx8guid.c, include/d3dx8math.h:
	d3dx8: Add definition for MatrixStack.

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

	* dlls/wined3d/surface.c:
	wined3d: Split up the render target -> render target blit.

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

	* dlls/d3d9/tests/visual.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement D3DFMT_G16R16.

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

	* dlls/kernel32/tests/sync.c:
	kernel32: Add a test for BindIoCompletionCallback.

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

	* dlls/wined3d/glsl_shader.c:
	wined3d: Filter out some shader compilation spam.

2007-12-18  Kirill K. Smirnov <lich@math.spbu.ru>

	* server/console.c:
	server: Properly notify renderer while activating another screen buffer.

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

	* dlls/gdi32/driver.c, dlls/gdi32/tests/dc.c:
	gdi32: Add a GdiConvertToDevmodeW test, make it pass under Wine.

2007-12-18  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c:
	inetcomm: Fix spelling typo.

	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/inetcomm_main.c,
	  dlls/inetcomm/inetcomm_private.h, dlls/inetcomm/mimeole.c,
	  dlls/inetcomm/regsvr.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Add IMimeAllocator implementation.

2007-12-14  Huw Davies <huw@codeweavers.com>

	* include/mimeole.idl:
	include: Add IMimeAllocator.

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

	* dlls/wined3d/vertexshader.c:
	wined3d: Ignore tesselated and unused streams when comparing attribs.

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

	* dlls/wined3d/glsl_shader.c:
	wined3d: Correct a pixel shader version comparison.

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

	* dlls/wined3d/swapchain.c:
	wined3d: Disable the SWAPEFFECT_DISCARD clear.

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

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a note about a breakage in the refrast.

	* dlls/d3d9/tests/visual.c:
	d3d9: Remove a few more incorrect D3DLOCK_DISCARDs.

2007-12-18  Peter Beutner <p.beutner@gmx.net>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Add stub for Direct3DShaderValidatorCreate9().

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

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c:
	dinput: Make _dump_cooperativelevel_DI() and _dump_EnumDevices_dwFlags()
	more self-contained.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/typelib.c:
	oleaut32/tests: Avoid SHDeleteKeyW() because shlwapi.dll is missing on
	Windows 95.

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Use GetProcAddress() on SHFileOperationW() because it is missing
	on Windows 95.

	* dlls/shell32/tests/systray.c:
	shell32/tests: Use GetProcAddress() on Shell_NotifyIconW() because it is
	missing on Windows 95.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Use GetProcAddress() on SHGetPathFromIDListW() because it is
	missing on Windows 95.

	* dlls/shell32/tests/Makefile.in, dlls/shell32/tests/shellpath.c,
	  dlls/shell32/tests/shlfolder.c:
	shell32/tests: Copy the PathRemoveBackslashA() and PathAddBackslashW()
	implementations because shlwapi.dll is missing on Windows 95.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Avoid SHDeleteKeyA() because shlwapi.dll is missing on Windows 95.

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32/tests: Dynamically load various APIs and don't link with crypt32.dll
	to make the test run on Windows 95.

	* dlls/msi/package.c:
	msi: Add a trailing '\n' to Wine traces.

	* dlls/user32/tests/sysparams.c:
	user32/tests: Use GetProcAddress() on ChangeDisplaySettingsExA() because it
	is missing on Windows 95.

2007-12-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/alter.c, dlls/msi/create.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/query.h,
	  dlls/msi/select.c, dlls/msi/sql.y, dlls/msi/streams.c,
	  dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Sort each table of the join separately.

	* dlls/msi/tests/db.c:
	msi: Test sorting a table using a column that is not selected.

2007-12-17  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/rpc_assoc.c:
	rpcrt4: Add missing LeaveCriticalSection. Found by Smatch.

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

	* include/rpcdcep.h:
	include: Add some context handle defines to rpcdcep.h.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for I_RpcGetCurrentCallHandle.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't copy memory from the buffer in NdrConformantStringUnmarshall if
	we just pointed the memory pointer into the buffer.
	(Reported by Dan Kegel.)

2007-12-17  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Avoid any keywords comparision during lookup, store pointer to listbox
	ITEMDATA instead.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Remember last added page.

2007-12-17  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/riched20/editor.c:
	riched20: Fix bugs in EM_SETOPTIONS.
	Add SELECTIONBAR to mask, and use settings rather then lParam. 2 subtle
	bugs that prevent selectionbar from working.

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

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/event.c,
	  include/rpcasync.h:
	include: Add more types and function declarations to the rpcasync.h header file.
	Fix up a couple of conflicts with the Status field in the
	RPC_EXTENDED_ERROR_INFO and the X Status define.

2007-11-13  Francois Gouget <fgouget@free.fr>

	* dlls/rpcrt4/rpcrt4_main.c, include/Makefile.in, include/rpc.h,
	  include/rpcasync.h:
	rpcrt4: Add an rpcasync.h header stub and fix the RpcErrorStartEnumeration()
	prototype.

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

	* include/rpcndr.h:
	include: Add more NDR types and function declarations to rpcndr.h.

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

	* dlls/user32/button.c:
	user32: Always clip the button painting to the client rectangle.

2007-12-16  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/surface.c:
	ddraw: Fix incorrect WARN text.

2007-12-14  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/winspool.drv/info.c:
	winspool: Fix memory leak (found by Smatch).

	* programs/winedevice/device.c:
	winedevice: Fix memory leak (found by Smatch).

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

	* dlls/d3d9/tests/visual.c:
	d3d9: Do not set NONE MIN and MAG filters.

	* dlls/d3d9/tests/visual.c:
	d3d9: D3DLOCK_DISCARD is not valid on managed textures.

	* dlls/d3d9/tests/visual.c:
	d3d9: The refrast returns an error on invalid clear rects.

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

	* dlls/gdi32/tests/bitmap.c, dlls/user32/tests/sysparams.c,
	  dlls/winex11.drv/bitmap.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/settings.c, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xvidmode.c:
	winex11: Activate the depth-bpp difference.

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

	* dlls/winex11.drv/bitmap.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11: Distinguish between bpp and depth.

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

	* dlls/hlink/tests/hlink.c:
	hlink: Fix some memory leaks in the tests.

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

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_assoc.c,
	  dlls/rpcrt4/rpc_assoc.h, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move association code into a separate file.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_message.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make a server association when a bind packet is received in the server.
	Support handing out association group IDs.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Return an error from rpcrt4_conn_tcp_read if recv returns 0.

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

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix NdrConformantStringUnmarshall to use buffer memory if possible.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add a FIXME for RPC_FC_P_ALLOCALLNODES in PointerUnmarshall.

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

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear padding inserted into the buffer during marshalling because
	of alignment.

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

	* include/wine/rpcfc.h:
	include: Add definitions for RPC_FC_SSTRING and RPC_FC_C_SSTRING.

	* tools/widl/typegen.c:
	widl: Only base types or reference pointers to base types don't need to be freed.
	There are other cases where calls to Free functions can be omitted (such
	as types always unmarshalled using buffer memory with no embedded
	pointers), but these are easier dealt with inside the relevent case in
	write_remoting_arg.

	* tools/widl/server.c:
	widl: Return types shouldn't be freed.

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

	* tools/widl/typegen.c:
	widl: Clear padding in the buffer due to alignment.

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

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Avoid relying on system-dependent rounding.

	* dlls/user32/clipboard.c, dlls/user32/user16.c:
	Revert "user32: Moved some 16-bit functions."
	This partially reverts commit 6e9fea22f82fe60624e1081d74ad990a5c428eed.
	16-bit and 32-bit clipboard handles aren't interchangeable.

2007-12-17  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/tests/file.c, server/fd.c:
	server: I/O completion ports can only be used with overlapped I/O.

2007-12-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use flag to store protocol lock state.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Ignore Exec(CGID_Explorer, 66) calls in tests.

	* dlls/mshtml/editor.c, dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc5.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlelem2.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmlstyle.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsservice.c, dlls/mshtml/persist.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Remove not used argument in nsAString_GetData.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Remove not used argument of nsACString_GetData.

2007-12-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Set the text color after calling the window proc.

	* dlls/msi/dialog.c:
	msi: The line control has a height of exactly 2 device units.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_INVALID_PARAMETER if the product list is empty and index is
	not zero.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Return ERROR_UNKNOWN_COMPONENT if no products exist.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Also check the local system component key for the clients.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Check the user component key for the clients.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Validate the parameters of MsiEnumClients.

	* dlls/msi/registry.c, dlls/msi/tests/msi.c:
	msi: Add tests for MsiEnumClients.

	* dlls/msi/appsearch.c:
	msi: Simplify ExpandAnyPath.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Verify that the PID_PAGECOUNT and PID_REVNUMBER summary info properties
	exist.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: If the package doesn't exist, return ERROR_FILE_NOT_FOUND.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Validate the parameters of MsiOpenPackage.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Add more tests for MsiOpenPackage.

2007-12-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Release the record when loading the hash data.

2007-12-14  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/ocr_reverse.cur, dlls/riched20/res.h,
	  dlls/riched20/version.rc, dlls/riched20/wrap.c:
	riched20: Implement ECO/EM SELECTIONBAR.

2007-12-14  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/dialog.c:
	msi: Fixed buffer overflow in number parsing.

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

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

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

	* dlls/riched32/tests/editor.c:
	riched32/tests: Avoid using size_t in traces.

	* dlls/riched20/tests/editor.c:
	riched20/tests: Avoid using size_t in traces.

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Fix a compiler warning.

2007-12-14  Sam Dennis <samuel.howard.dennis@gmail.com>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Fix undocumented behaviour in ReqQueryValueEx when 'count' and 'type'
	point to the same address.

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

	* dlls/user32/tests/sysparams.c:
	user32: Add a test for EnumDisplaySettings vs GetDeviceCaps.

	* dlls/user32/tests/sysparams.c:
	user32: Add a test for WM_DISPLAYCHANGE.

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

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Test the "alpha" channel on compatible bitmaps.

	* dlls/winex11.drv/mouse.c:
	winex11: Ignore the alpha if all pixels are 0.

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

	* dlls/quartz/tests/videorenderer.c:
	quartz: Do aggregation test for more video renderer interfaces.

	* dlls/quartz/tests/videorenderer.c:
	quartz: Make aggregation test generic.

2007-12-13  Maarten Lankhorst <maarten@codeweavers.com>

	* include/oleacc.idl:
	include: Update oleacc with new constants and IAccessible interface.

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

	* dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h:
	include: Make RpcRaiseException DECLSPEC_NORETURN, like it is in the PSDK.

2007-12-14  Aric Stewart <aric@codeweavers.com>

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: InternetCrackUrlW requires component buffers when used with ICU_DECODE.

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

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_conn_tcp_read.

2007-12-14  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/riched20/editor.h, dlls/riched20/wrap.c:
	riched20: Make some functions static.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Add 'Front Mic' as alias for microphone.

2007-12-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leak in tests.

2007-12-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Close the file handle returned by FindFirstFile.

2007-12-14  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winebuild/spec16.c:
	winebuild: Remove duplicate declaration of variable 'j'.

	* dlls/kernel32/utthunk.c:
	kernel32: Do not reuse the name of a function argument for a local variable.

	* dlls/wineoss.drv/mixer.c:
	wineoss.drv: Move a function wide variable down to the block it is used in.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Remove an unused global variable.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Remove duplicate abPlainPrivateKey variable.

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

	* dlls/quartz/filtergraph.c:
	quartz: Fix typo in GraphConfig_AddRef.

	* dlls/quartz/videorenderer.c:
	quartz: Give video renderer's Inner_QueryInterface a less generic name.

	* dlls/ole32/compobj.c:
	ole32: Print a fixme when an aggregation attempt fails.

2007-12-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c:
	kernel32: Remove unneeded casts.

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

	* dlls/shdocvw/shdocvw.inf:
	shdocvw: Register IE settings by iexplore.exe.
	These registries are present in a fresh Windows installation, but they
	cause problems with native IE, so let's handle them as we do with IE
	version key.

	* dlls/urlmon/bindctx.c, dlls/urlmon/binding.c, dlls/urlmon/bindprot.c,
	  dlls/urlmon/file.c, dlls/urlmon/format.c, dlls/urlmon/ftp.c,
	  dlls/urlmon/http.c, dlls/urlmon/internet.c, dlls/urlmon/mk.c,
	  dlls/urlmon/regsvr.c, dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h:
	urlmon: Includes clean up.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Fixed handling MIME type in Binding object.

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

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Update TODO list.
	Out-of-memory check is performed by NdrAllocate and so isn't required to
	be done in the unmarshalling functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Document NdrAllocate.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Partially revert commit 18faf3184b2ea263d77c2a7ad92eef27bc4ba08f.
	Tests show that NdrPointerFree (and hence NdrFree) don't check whether
	the memory was allocated with NdrAllocate before freeing it. This makes
	sense as servers don't need to use NdrAllocate to allocate memory being
	returned and so this commit caused that memory to be leaked.
	NdrAllocate hasn't been changed as the tests show it is correct and it
	appears that the memory list is used to implement the RpcSs memory model.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Free the base pointer in PointerFree when freeing a pointer with
	RPC_FC_P_DEREF.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the check in NdrPointerFree.
	Add comments to justify why this is the only check that is needed.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: NdrStubGetBuffer shouldn't set BufferStart and BufferEnd.
	These are supposed to point to the original buffer when the types were
	unmarshalled.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	Revert "rpcrt4: Try to free every non-stack pointer in PointerFree now that
	NdrFree does the sanity checking for us.".
	This reverts commit 6db648302ce43f625a073426a35a6f40b7869d8b.
	Tests show the assumptions in a commit that this commit depends on are
	not valid.

	* tools/widl/typegen.c:
	widl: Don't write redundant FC_RP type format out for conformant strings,
	unless it is a top level variable.

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

	* dlls/quartz/tests/videorenderer.c, dlls/quartz/videorenderer.c:
	quartz: Make video renderer aggregatable.

	* dlls/quartz/enummoniker.c, dlls/quartz/main.c,
	  dlls/quartz/systemclock.c, dlls/quartz/tests/referenceclock.c:
	quartz: Set *ppvObject to NULL if QueryInterface fails.

	* dlls/quartz/tests/referenceclock.c:
	quartz: Add referenceclock QueryInterface test.

	* dlls/quartz/tests/videorenderer.c:
	quartz: Add videorenderer aggregation test.

2007-12-12  Lei Zhang <thestig@google.com>

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/videorenderer.c:
	quartz: Add videorenderer QueryInterface test.

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

	* dlls/user32/input.c:
	user32: Print the RegisterHotKey fixme only once.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Store a copy of the string pointers to enable freeing them without
	casting away const.

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

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for freeing non-NdrAllocate allocated memory blocks.

	* tools/widl/utils.h:
	widl: Swap the version packing order back to what typelibs expect.

2007-12-11  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Cache font enum info.
	Cache the enum info so that repeated calls to EnumFontFamiles and such
	does not have to repeatedly load the font file.

2007-12-11  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/start/Makefile.in, programs/start/start.c:
	start: Convert to Unicode.

2007-12-09  Vitaly Lipatov <lav@etersoft.ru>

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

2007-12-09  Lionel Debroux <lionel_debroux@yahoo.fr>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix memory leaks (found by Smatch).

	* dlls/msi/database.c:
	msi: Fix memory leaks (found by Smatch).

	* dlls/msi/dialog.c:
	msi: Fix missing alloc check.

2007-12-12  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Don't require a cswitch control for capture.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Add control 'Digital' as alias for microphone.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Remove fixed fixme.

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

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Test the bit depth of compatible bitmaps explicitly.

	* dlls/winex11.drv/settings.c:
	winex11: Remove an unused variable.

2007-12-13  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/En.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/macro.c, programs/winhelp/rsrc.rc,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h,
	  programs/winhelp/winhelp_res.h:
	winhelp: Display keywords index dialog box.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Read keywords.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Export enum and search B+ tree functions.

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

	* dlls/usp10/usp10.c:
	usp10: Do glyph translation for truetype fonts only.

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

	* programs/wordpad/registry.c:
	wordpad: Fix invalid pointer usage.

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

	* tools/widl/client.c, tools/widl/header.c, tools/widl/parser.y,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/utils.h:
	widl: Remove some confusion in how version numbers are packed into an attribute
	by defining some macros for this purpose.
	Remove unneeded includes.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Try to free every non-stack pointer in PointerFree now that NdrFree
	does the sanity checking for us.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Store allocated memory in a singly-linked list to keep track of what
	we should and shouldn't free in NdrFree.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Make the NdrAllocate tests pass on XP SP2 and greater.

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

	* dlls/netapi32/local_group.c:
	netapi32: Improve stub for NetLocalGroupGetMembers a bit to return current user.

	* dlls/imagehlp/integrity.c:
	imagehlp: Improve last error handling in ImageGetCertificateData.

2007-12-09  Marcel Partap <mpartap@gmx.net>

	* aclocal.m4, configure:
	configure: Add i586-mingw32 prefix for crosscompiling.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Add dumping of FORM_INFO_1/2 in test_EnumForms.

	* include/winspool.h:
	include/winspool.h: Add FORM_INFO_2.

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

	* Make.rules.in:
	Make.rules: Process man pages in the C locale.

	* dlls/winecrt0/drv_entry.c:
	winecrt0: DriverEntry is a WINAPI function.

2007-12-11  Marco Schuster <marco@harddisk.is-a-geek.org>

	* .gitignore, loader/Makefile.in, loader/wine.de.man.in:
	loader: Added de_DE.UTF-8 translated Wine man page.

	* loader/wine.man.in:
	wine.man: Added small clarification for AppDB.

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

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add some tests for ScriptShape/Place and make them pass.

2007-12-12  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/Makefile.in, programs/wordpad/registry.c,
	  programs/wordpad/wordpad.c, programs/wordpad/wordpad.h:
	wordpad: Move registry functions to a separate file.

2007-12-11  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: DPRINTF -> TRACE.

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c,
	  dlls/dinput/effect_linuxinput.c:
	dinput: DPRINTF -> TRACE.

	* dlls/ole32/storage.c:
	ole32: DPRINTF -> TRACE.

2007-12-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Free the cabinet string on error.

	* dlls/msi/package.c:
	msi: Properly release the record.

	* dlls/msi/registry.c:
	msi: Free the user sid string.

	* dlls/msi/custom.c:
	msi: Free the deformatted string.

2007-12-12  Alexandru Balut <alexandru.balut@gmail.com>

	* tools/wine.inf:
	wine.inf: Fix the type of some values in HKLM,
	System\CurrentControlSet\Control\Session Manager\Environment.

2007-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Return S_OK in IOleObject::SetHostNames.

2007-12-11  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched32/tests/editor.c:
	riched32: Fix regression in WM_GETTEXTLENGTH on richedit 1.0 emulation.

2007-12-11  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/winhelp.c:
	winhelp: Change font charset from ANSI to DEFAULT.

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

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c,
	  dlls/winex11.drv/bitmap.c:
	gdi32: Test bitmap depths.

	* dlls/gdi32/tests/bitmap.c, dlls/winex11.drv/bitmap.c:
	gdi32, winex11drv: Add a test for compatible bitmap depths.

	* dlls/winex11.drv/xvidmode.c:
	winex11: Remove an unused variable.

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

	* dlls/wined3d/device.c:
	wined3d: Use SetDisplayMode to set the display mode.

	* dlls/wined3d/device.c:
	wined3d: Remove 24/32 bit hacks.

2007-12-11  Marco Schuster <marco@harddisk.is-a-geek.org>

	* dlls/wined3d/directx.c:
	wined3d: Fixed a bug that the 8600M GT could not be detected.

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

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix some memory leaks in the tests.
	Remove an incorrect CryptProviderRelease call.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c:
	widl: Add support for non-basetype return types.

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

	* dlls/mshtml/htmlstyle.c:
	mshtml: Fix CSS px unit handling differences between Gecko and IE.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added more IHTMLStyle implementation.

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

	* dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Initialize the APC call union to suppress valgrind warnings. Take 2.

2007-12-11  Aric Stewart <aric@codeweavers.com>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c:
	wintrust: Implementations for WTHelperGetFileName and WTHelperGetFileHandle.

2007-12-10  Gregor Brunmar <gregor.brunmar@home.se>

	* dlls/comctl32/monthcal.c:
	comctl32: Monthcal lost focus fix.

2007-12-10  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/comctl32/listview.c:
	comctl32: Fix painting bug in listview control.

2007-12-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix a "ordered comparison of pointer with integer zero".

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

	* tools/winebuild/main.c:
	winebuild: Don't set the IMAGE_FILE_DLL flag on native modules.

	* dlls/Makedll.rules.in, dlls/kernel32/Makefile.in,
	  dlls/ntdll/Makefile.in:
	Makedll.rules: Add a generic EXTRADLLFLAGS variable instead of defining a
	specific variable for every possible parameter.

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

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the adapter to read the display mode.

2007-12-10  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Add IFilterGraph2 interface and stubs.

2007-12-10  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/tests/cursoricon.c:
	user32: Test the initial state of the cursor.

2007-12-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leak in test.

	* dlls/shlwapi/tests/string.c:
	shlwapi: Fix memory leak in test.

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

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added client site's IOleCommandTarget tests.

2007-12-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/usp10/usp10.c:
	usp10: Rename the wrappers around HeapAlloc() &Co to use the standard names.

2007-12-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/factory.c, dlls/msxml3/regsvr.c:
	msxml: Register missing components.

2007-12-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dplayx/dplay.c:
	dplayx: Remove unneeded casts.

	* dlls/dnsapi/ns_parse.c, dlls/dnsapi/query.c:
	dnsapi: Remove unneeded casts.

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

	* programs/wordpad/wordpad.c:
	wordpad: Fix a compiler warning.

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

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typegen.c:
	widl: iid_is should take expressions, not just identifiers.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Support the address-of operator in expressions.

	* tools/widl/typegen.c:
	widl: Make sure to generate freeing calls for all non-simple structures with
	pointers and pointers to user marshalled types.

	* tools/widl/typegen.c:
	widl: Arrays should have freeing code generated on the server side, even if
	they are [in] parameters.

	* tools/widl/typegen.c:
	widl: Always write a freeing function for arrays in generated code.
	Fix the conditions under which pfnFree is called to only include arrays
	that will have been allocated, instead of being pointed to the buffer.

2007-12-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/xmldoc.c:
	msxml3: Implement IPersistStream.

2007-12-09  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/qmgrprxy/Makefile.in, dlls/qmgrprxy/qmgrprxy.idl,
	  dlls/qmgrprxy/qmgrprxy.spec:
	qmgrprxy: Queue manager proxy generated using an IDL compiler and bits.idl.

2007-12-09  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgW: Swap margins when changing orientation.

2007-12-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgA: Swap margins when changing orientation.

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

	* tools/wine.inf:
	wine.inf: Register actxprxy.dll and create a fake DLL for it.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/actxprxy/Makefile.in, dlls/actxprxy/actxprxy.spec,
	  dlls/actxprxy/actxprxy_servprov.idl, dlls/actxprxy/usrmarshal.c:
	actxprxy: Add the start of actxprxy.dll.
	The native version of this DLL contains proxy code for various
	interfaces, but for the moment only servprov.idl is implemented.

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

	* tools/makedep.c:
	makedep: Added support for dlldata.c dependencies.

	* .gitignore, Make.rules.in, tools/make_makefiles, tools/widl/widl.c:
	Make.rules: Added rules for building the dlldata.c file.

2007-12-10  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/wined3d/surface.c:
	wined3d: Improve thread safety in IWineD3DSurfaceImpl_BltOverride.

2007-12-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/crypt32/chain.c:
	crypt32: Do not use an empty body in an else-statement as documentation.

2007-12-10  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/tests/url.c:
	urlmon: Fix memory leaks.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Fix memory leak.

	* dlls/msxml3/tests/xmlelem.c:
	msxml3: Fix memory leak.

2007-12-09  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Fix memory leaks.

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

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: GetCharABCWidthsI does not require a scalable font.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Make FtpGetCurrentDirectoryA pass all todo_wine tests.

	* dlls/kernel32/console.c:
	kernel32: GetConsoleInputExeNameW returns TRUE even when it fails.

2007-12-09  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/tests/cursoricon.c:
	user32: Improve test_DestroyCursor().

	* dlls/user32/tests/cursoricon.c:
	user32: Uncomment and explain a test in test_DestroyCursor().

2007-12-08  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/shell32/shell32_Es.rc:
	shell32: Update Spanish resource.

2007-12-07  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Es.rc:
	sane: Add Spanish Resource.

	* dlls/msvfw32/msvfw32_Es.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Spanish resource.

	* dlls/credui/credui.rc, dlls/credui/credui_Es.rc:
	credui: Add Spanish resource.

	* dlls/gphoto2.ds/gphoto2_Es.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2: Add Spanish resource.

2007-12-10  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Font tests with Japanese font data.  Thanks to Dmitry Timoshkov for
	the data and tests.

	* fonts/.gitignore, fonts/Makefile.in:
	fonts: Build the jvgasys.fon from the 18 pixel strike.

	* tools/sfnt2fnt.c:
	sfnt2fnt: Use code from gdi32/freetype to do a better job finding the TTAG_EBLC
	to deal with older version of freetype without having to fall back on unreliable
	hacks.

	* fonts/system.sfd:
	system.sfd: Modify a few 18 pixel glyphs to generate metrics correctly.

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

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/mru.c:
	comctl32/tests: Avoid SHDeleteKeyA() because it does not exist on Windows 95.

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/datetime.c,
	  dlls/comctl32/tests/header.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/rebar.c, dlls/comctl32/tests/treeview.c:
	comctl32/tests: InitCommonControlsEx() is missing on Windows 95 so call
	InitCommonControls() instead.

	* dlls/comctl32/tests/imagelist.c:
	comtcl32/tests: Dynamically load ImageList_SetImageCount() because it is
	missing on Windows 95.

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

	* dlls/hlink/hlink.spec:
	hlink: Fix the HlinkUpdateStackItem() prototype.

	* dlls/kernel32/tests/actctx.c, dlls/kernel32/tests/file.c:
	kernel32/tests: Get the test to run on Windows 95.

	* dlls/kernel32/tests/file.c:
	kernel32/tests: dll_capable() makes no sense since it's only used on APIs we
	link with. So remove it.

	* dlls/winealsa.drv/wavein.c:
	winealsa.drv: Remove trailing spaces in Wine traces.

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

	* dlls/user32/message.c:
	user32: Keep waiting for posted messages in peek_message after we get an
	ignored message.

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

	* dlls/usp10/usp10.c:
	usp10: Don't trace char to glyph mappings.

	* dlls/usp10/usp10.c:
	usp10: Store original font in the script cache and reselect it on successive
	calls.

	* dlls/usp10/usp10.c:
	usp10: Use GetCharABCWidthsI to implement ScriptGetGlyphABCWidth.

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

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass the USER_MARSHAL_CB structure into user marshal routines.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: NdrRangeUnmarshall is implemented so add it to the spec file.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantArrayMemorySize.

2007-12-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/hlink/browse_ctx.c, dlls/hlink/extserv.c,
	  dlls/hlink/hlink_private.h, dlls/hlink/link.c:
	hlink: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/pdh/pdh_main.c:
	pdh: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/iccvid/iccvid.c:
	iccvid: Rename the wrappers around HeapAlloc() &Co to use the standard names.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/content.c,
	  dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h, dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Rename the wrappers around HeapAlloc() &Co to use the standard names.

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

	* dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add a missing break in DllMain.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Save the buffer in EmbeddedPointerMemorySize, like
	EmbeddedPointerUnmarshall does.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the return value from NdrSimpleStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add a trace to NdrBaseTypeMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement PointerMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrConformantStructUnmarshall to use buffer memory if applicable
	and to reuse memory for embedded pointers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrFixedArrayUnmarshall to use buffer memory if applicable and to
	reuse memory for embedded pointers.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix NdrConformantArrayUnmarshall to use buffer memory if applicable
	and to reuse memory for embedded pointers.

	* tools/widl/parser.y:
	widl: Don't override the pointer type in top-level arrays.

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

	* dlls/comctl32/propsheet.c, dlls/dbghelp/msc.c, dlls/gdi32/bidi.c,
	  dlls/gdi32/font.c, dlls/kernel32/tests/drive.c,
	  dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/wined3d/device.c:
	Assorted spelling fixes.

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

	* dlls/riched20/reader.c, dlls/riched20/rtf.h:
	riched20: Remove the RTFAlloc() wrapper around heap_alloc().

	* dlls/riched20/clipboard.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/reader.c,
	  dlls/riched20/richole.c:
	riched20: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

2007-12-08  Alexander Dorofeyev <alexd4@inbox.lv>

	* dlls/ddraw/device.c:
	ddraw: Fix wrong initialization order in IDirect3DDevice vtable.

2007-12-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgA: Read margins from correct edit boxes.

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

	* server/async.c:
	server: Removed superflous async->queue NULL tests.

2007-12-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/paint.c:
	riched20: Invalidate all the text on bogus last selection.

2007-12-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c:
	dmusic: Remove unneeded casts.

	* dlls/dmloader/loaderstream.c:
	dmloader: Remove unneeded casts.

2007-12-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmime/audiopath.c, dlls/dmime/performance.c:
	dmime: Remove unneeded casts.

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

	* dlls/msi/appsearch.c, dlls/msi/tests/package.c:
	msi: Handle the CompLocator table in the AppSearch action.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Reimplement MsiGetProductCode.

	* dlls/msi/tests/msi.c:
	msi: Remove two tests that depend on the sort order of RegEnumValue.

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

	* dlls/kernel32/volume.c:
	kernel32: Read label and serial from the filesystem when the device is accessible
	but unknown.

	* dlls/kernel32/volume.c:
	kernel32: Revert change that slipped in commit
	db24d3af9a6e56c3036ba0a3e5d62dae4f2676d3 by mistake.

	* dlls/opengl32/Makefile.in:
	opengl32: ntdll import is still needed when building without optimizations.

2007-12-07  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/wavein.c:
	winealsa: Clear dwBytesRecorded in waveheader when adding buffer.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Simplify the feeding of capture buffers.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Fix return value checking in wavein.

	* dlls/winealsa.drv/wavein.c:
	winealsa: Fix period size in capture.

2007-12-02  Gregor Brunmar <gregor.brunmar@home.se>

	* dlls/comctl32/treeview.c:
	comctl32: Added context menu to treeview.

	* dlls/comctl32/propsheet.c:
	comctl32: Disable propsheet apply button at start up.

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

	* dlls/ole32/rpc.c:
	ole32: Process messages while waiting for a local server to create a pipe.

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

	* dlls/advapi32/tests/security.c, dlls/comctl32/tests/mru.c,
	  dlls/dsound/dsound.c, dlls/riched20/tests/editor.c,
	  dlls/riched32/tests/editor.c, dlls/rpcrt4/tests/ndr_marshall.c:
	Avoid size_t types in traces.

	* dlls/comctl32/listview.c:
	comctl32: Fix a compiler warning.

	* server/directory.c:
	server: Fix incorrect use of size_t instead of data_size_t.

	* dlls/msvfw32/Makefile.in, dlls/msvfw32/msvideo16.c:
	msvfw32: Fix invalid check that caused the rest of VideoCapDriverDescAndVer16
	to be optimized out.

2007-12-03  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement cloneNode.

2007-12-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: WM_GETTEXTLENGTH should include CRLF conversions in returned count.

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: EM_GETTEXTLENGTHEX must not count last paragraph break if GTL_USECRLF.

2007-12-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/devenum/createdevenum.c:
	devenum: Remove unneeded cast.

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c:
	dinput: Remove unneeded casts.

	* dlls/cabinet/cabinet.h:
	cabinet: Remove unneeded casts.

2007-12-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetProductCode.

2007-12-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/user32/sysparams.c:
	user32: A few more colour changes to match modern Windows.
	Thanks to Bamm Gabriana for the info.

2007-12-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: WM_GETTEXT should return 0 on overflow but fill buffer anyway.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_GETTEXTEX with GT_USECRLF should not leave a single CR when
	running out of space.

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

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use an alertable wait in rpcrt4_protseq_np_wait_for_new_connection to
	fix a small memory leak flagged by Valgrind.
	This is called only by the RPCRT4_server_thread so we don't have to
	worry about application user APCs being run at improper times.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix a leak of the typelib in the tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix two memory leaks in the test for DispCallFunc.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix a reference count leak of the TMarshalDispatchChannel.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix some leaks of the provider handle in the rsaenh tests.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantStructFree.

2007-12-06  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Pt.rc, programs/winecfg/Ro.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Si.rc,
	  programs/winecfg/Tr.rc:
	winecfg: Add missing audio tab controls to other languages.

	* programs/winecfg/Fr.rc:
	winecfg: Updated French translation.

2007-12-05  Lei Zhang <thestig@google.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Validate input for IFilterGraph_FindFilterByName.

	* dlls/quartz/filtergraph.c, dlls/quartz/tests/filtergraph.c:
	quartz: Fix return value in IFilterGraph_FindFilterByName.

	* dlls/quartz/tests/filtergraph.c:
	quartz: Add some IGraphBuilder related tests.

	* dlls/quartz/tests/filtergraph.c:
	quartz: Add a test for IFilterGraph2.

	* dlls/quartz/tests/filtergraph.c:
	quartz: Move current tests into their own test case.

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

	* dlls/d3d9/tests/visual.c, dlls/kernel32/thread.c,
	  dlls/user32/tests/msg.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/winex11.drv/opengl.c, include/rpcdcep.h,
	  programs/regedit/regproc.c:
	Assorted spelling fixes.

2007-12-07  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/shell32/shell32_Fr.rc:
	Updated French translation.

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

	* dlls/ole32/tests/marshal.c:
	ole32: Register the window used in the marshal tests only once.
	Destroy the windows that have been created when they are no longer needed.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix a memory leak in the htmldoc tests.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Set the number of locks held on the safe arrays in the safe array
	tests to zero before destroying them, otherwise the operation will fail and
	leak memory.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Try to re-use existing memory when unmarshalling variants with
	byref types.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Don't call SafeArrayAllocData in LPSAFEARRAY_UserUnmarshal if we
	called SafeArrayCreateEx instead of SafeArrayAllocDescriptor.
	Otherwise, we'll leak memory.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Improve PointerFree to not free buffer memory.

2007-12-06  Aric Stewart <aric@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add 18 pixel strike with japanese fonts to system.sdf.

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

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/context.c,
	  dlls/wined3d/state.c, dlls/wined3d/utils.c:
	wined3d: Add an alpha blending test.

	* dlls/ddraw/ddraw.c:
	ddraw: Set X8R8G8B8 for 32 bpp.

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

	* dlls/d3d9/tests/query.c, dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: A more detailed occlusion query test and fixes.

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

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Initialize output texcoord .w to 1.0 if needed.
	The GL_ARB_vertex_program extension does not define a standard value for
	output texture coordinates. This makes problems when using vertex
	shaders with fixed function fragment processing because fffp divides the
	texture coords by its .w component. This means that gl shaders have to
	write to the .w component of texture coords. Direct3D shaders however
	do not.

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

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Remove trailing spaces in ok() calls.

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

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

	* dlls/ddraw/ddraw.c, dlls/ddraw/utils.c:
	ddraw: Modify DDRAW_dump_(DWORD|PTR|DDCOLORKEY|DDSCAPS2|pixelformat)() to
	print a trailing '\n'.

	* dlls/ddraw/utils.c:
	ddraw: Rename DDRAW_dump_flags_() to DDRAW_dump_flags_nolf() to clarify its
	difference from DDRAW_dump_flags().

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

	* dlls/user32/tests/listbox.c:
	user32/tests: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the
	memory with a separate memset() call.

	* programs/winecfg/audio.c:
	winecfg: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the memory
	with a separate memset() call.

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

	* tools/winebuild/import.c:
	winebuild: Also optimize out imports that are only used for forwards.

	* dlls/ntdll/loader.c:
	ntdll: Support delayed loading of modules referenced by forwarded entry points.

	* tools/winebuild/import.c:
	winebuild: Improved checks for missing forward entry point targets.

	* tools/winebuild/import.c:
	winebuild: Print a warning when failing to import a data export.

	* dlls/advpack/Makefile.in, dlls/advpack/tests/Makefile.in,
	  dlls/browseui/tests/Makefile.in, dlls/cabinet/tests/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d9/Makefile.in, dlls/d3dx8/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmsynth/Makefile.in,
	  dlls/dmusic/Makefile.in, dlls/dmusic32/Makefile.in,
	  dlls/dswave/Makefile.in, dlls/dwmapi/Makefile.in,
	  dlls/gdiplus/Makefile.in, dlls/gdiplus/tests/Makefile.in,
	  dlls/glu32/Makefile.in, dlls/gphoto2.ds/Makefile.in,
	  dlls/hhctrl.ocx/Makefile.in, dlls/hid/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/infosoft/tests/Makefile.in,
	  dlls/inkobj/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/iphlpapi/tests/Makefile.in, dlls/itss/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mscat32/Makefile.in, dlls/mscms/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/msvcrtd/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/mswsock/Makefile.in,
	  dlls/msxml3/Makefile.in, dlls/netapi32/Makefile.in,
	  dlls/netapi32/tests/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbccp32/Makefile.in, dlls/odbccp32/tests/Makefile.in,
	  dlls/opengl32/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/tests/Makefile.in,
	  dlls/query/Makefile.in, dlls/riched20/tests/Makefile.in,
	  dlls/riched32/tests/Makefile.in, dlls/sane.ds/Makefile.in,
	  dlls/schannel/tests/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/shell32/tests/Makefile.in, dlls/twain_32/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/vmm.vxd/Makefile.in,
	  dlls/winealsa.drv/Makefile.in, dlls/winedos/Makefile.in,
	  dlls/wintrust/tests/Makefile.in:
	Removed some unneeded imports.

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

	* dlls/hlink/extserv.c, dlls/hlink/tests/hlink.c:
	hlink: Added IHttpNegotiate interface to ExtensionService.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added HTMLTxtRange::Exec(IDM_INDENT) test.

	* dlls/mshtml/txtrange.c:
	mshtml: Added HTMLTxtRange::Exec(IDM_INDENT) implementation.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Fixed ref counting.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Added IHTMLStyleSheetRulesCollection::get_length implementation.

	* dlls/mshtml/htmlstylesheet.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLStyleSheet::get_rules implementation.

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

2007-12-05  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, include/Makefile.in, include/bits.idl:
	include: Added IDL file for BITS.

	* include/Makefile.in, include/bitsmsg.h:
	include: Added bitsmsg.h header.

	* dlls/qmgr/Makefile.in, dlls/qmgr/bits_main.c, dlls/qmgr/qmgr_main.c:
	qmgr: Renamed bits_main.c to qmgr_main.c and updated comments.

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

	* dlls/wined3d/vertexshader.c:
	wined3d: Ignore unused attributes when generating the swizzle array.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/device.c:
	wined3d: Test clearing regarding the scissor test and colorwrite.

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

	* dlls/comctl32/comctl32undoc.c, dlls/comctl32/tests/mru.c:
	comctl32: EnumMRUListA/W fix getting list size by negative item pos.

	* dlls/comctl32/tests/mru.c:
	comctl32: Add EnumMRUList tests.

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

	* dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_Uk.rc:
	shell32: Fix some wrc warnings.

2007-12-05  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Es.rc:
	wineboot: Added Spanish resource.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Es.rc:
	browseui: Add Spanish resource.

	* dlls/shell32/shell32_Es.rc:
	shell32: Update Spanish resource.

	* dlls/mshtml/Es.rc:
	mshtml: Update Spanish resource.

2007-12-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shlview.c:
	shell32: Handle backspace key in shellview.

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Cn.rc,
	  dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Eo.rc,
	  dlls/shell32/shell32_Es.rc, dlls/shell32/shell32_Fi.rc,
	  dlls/shell32/shell32_Fr.rc, dlls/shell32/shell32_It.rc,
	  dlls/shell32/shell32_Ja.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Si.rc, dlls/shell32/shell32_Sk.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_Zh.rc, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shresdef.h:
	shell32: Localize 'new folder' string.

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

	* dlls/rpcrt4/ndr_fullpointer.c:
	rpcrt4: Fix a memory leak caused by NdrFullPointerXlatFree not freeing the
	entries in the full pointer translation table.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a memory leak when freeing an association by deleting the critical
	section.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a memory leak in RpcAssoc_BindConnection.

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

	* dlls/ddraw/ddraw.c, dlls/ddraw/device.c:
	ddraw: Remove unneeded casts.

	* dlls/cabinet/fci.c, dlls/cabinet/fdi.c:
	cabinet: Remove unneeded casts.

2007-12-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/conpoint.c, dlls/mshtml/editor.c, dlls/mshtml/htmlanchor.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmloption.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/htmlstylesheet.c, dlls/mshtml/htmltable.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmlwindow.c,
	  dlls/mshtml/install.c, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsevents.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c, dlls/mshtml/protocol.c,
	  dlls/mshtml/selection.c, dlls/mshtml/service.c, dlls/mshtml/task.c,
	  dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

	* dlls/kernel32/lzexpand.c:
	kernel32: Pass HEAP_ZERO_MEMORY to HeapAlloc() instead of clearing the memory
	with a separate memset() call.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/thunks.c,
	  dlls/secur32/wrapper.c:
	secur32: Remove the SECUR32_ALLOC() macro around HeapAlloc().

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

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Use the correct deallocator in the htmldoc tests for the memory returned
	by IMoniker_GetDisplayName and fix a use-after-free error.

	* dlls/ole32/moniker.c:
	ole32: Initialise object variable in RunningObjectTableImpl_GetObject.
	As per the rules for memory in RPC, the memory pointer to by object will
	be used during unmarshalling and previously it was uninitialised.
	(Thanks to Dan Kegel and his Valgrind runs for reporting this.)

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

	* programs/winhelp/winhelp.c:
	winhelp: Use system colors instead of hardcoded colors.

	* programs/clock/main.c, programs/clock/winclock.c:
	clock: Use system colors instead of hardcoded RGB values.

2007-12-05  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/credui/credui_No.rc:
	credui: Update Norwegian resources.

	* dlls/mshtml/No.rc:
	mshtml: Update Norwegian resources.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_No.rc:
	browseui: Add Norwegian resources.

	* programs/write/No.rc, programs/write/rsrc.rc:
	write: Add Norwegian resources.

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_No.rc:
	wineboot: Add Norwegian resources.

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

	* dlls/kernel32/tests/console.c:
	kernel32/tests: Test for functions should be or-ed.

2007-12-05  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/icmp/icmp_main.c:
	icmp: Correctly handle underflow in IcmpSendEcho().

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

	* server/async.c, server/atom.c, server/change.c, server/clipboard.c,
	  server/completion.c, server/console.c, server/debugger.c,
	  server/device.c, server/directory.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c, server/queue.c,
	  server/registry.c, server/request.c, server/semaphore.c,
	  server/serial.c, server/signal.c, server/snapshot.c, server/sock.c,
	  server/symlink.c, server/thread.c, server/timer.c, server/token.c,
	  server/winstation.c:
	server: Return correct object types in the get_directory_entry request.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/directory.c,
	  server/object.c, server/object.h, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Partial implementation of NtQueryDirectoryObject.

	* dlls/user32/winstation.c, include/wine/server_protocol.h,
	  server/handle.c, server/handle.h, server/protocol.def,
	  server/request.h, server/trace.c, server/winstation.c:
	server: Implemented EnumWindowStations and EnumDesktops.

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

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Set the memory pointer in NdrBaseTypeUnmarshall to the buffer if we're
	unmarshalling on a server without memory being passed in.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set fMustAlloc to TRUE when unmarshalling an object pointer.

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

	* dlls/kernel32/tests/console.c:
	kernel32: Make tests run on Win98 again.

2007-12-05  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/d3dx8/d3dx8_main.c, include/d3dx8core.h:
	d3dx8: Implementation of D3DXAssembleShaderFromFileA.

2007-12-04  Roy Shea <roy@cs.hmc.edu>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/svchost/Makefile.in, programs/svchost/svchost.c:
	svchost: Implementation of svchost.

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

	* dlls/winmm/tests/mixer.c:
	winmm/tests: Don't mess with the mixer controls in non-interactive mode.

2007-12-03  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix error handling in fixed_get_input().

2007-12-03  Tim Schwartz <tim@sanityinternet.com>

	* dlls/advapi32/service.c:
	advapi32: service_control_dispatcher(): Fixed invalid pipe test to display
	GetLastError() before it gets overwritten.

2007-12-03  Aric Stewart <aric@codeweavers.com>

	* dlls/comdlg32/filedlg.c:
	commdlg: File name and extension offsets are not guaranteed to be the same in
	W->A conversions.

2007-12-02  Alexandru Balut <alexandru.balut@gmail.com>

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/tests/varformat.c,
	  dlls/oleaut32/varformat.c:
	oleaut32: Implement VarWeekdayName + tests.

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

	* dlls/winspool.drv/info.c:
	winspool.drv: Fix buffer sizes.

	* dlls/shell32/shlexec.c:
	shell32: Use sizeof instead of constant for buffer size.

	* dlls/midimap/midimap.c:
	midimap: Fix buffer sizes.

	* dlls/avifil32/api.c:
	avifil32: Fix buffer sizes.

	* dlls/oledlg/oledlg_Ru.rc, dlls/oledlg/rsrc.rc:
	oledlg: Add Russian translation.

	* dlls/oledlg/Makefile.in, dlls/oledlg/insobjdlg.c:
	oledlg: Use wide strings, fix buffers size.

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

	* dlls/kernel32/except.c:
	kernel32: Remove the no-exec fault workaround, it shouldn't be needed anymore.

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

	* .gitignore, include/Makefile.in, include/oleacc.idl:
	include: Add an initial version of oleacc.idl.

2007-12-04  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/ddraw/executebuffer.c, dlls/ddraw/light.c, dlls/ddraw/material.c,
	  dlls/ddraw/utils.c:
	ddraw: DPRINTF -> TRACE.

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: DPRINTF -> TRACE.

2007-12-05  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/mshtml/Fr.rc:
	mshtml: Updated French translation.

	* programs/wordpad/Fr.rc:
	wordpad: Updated French translation.

2007-12-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/write/Fr.rc, programs/write/rsrc.rc:
	write: New French translation.

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

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Use registry settings as a default display mode.

	* dlls/winex11.drv/settings.c:
	winex11.drv: Don't forget to initialize dmFields.

	* programs/explorer/desktop.c:
	explorer: Make initialize_display_settings work with a Win9x version of rpcrt4.

2007-12-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/tests/msi.c, dlls/msi/tests/package.c:
	msi: Reimplement MsiGetComponentPath.

2007-12-04  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetComponentPath.

2007-12-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Uncomment IUnknown_EnableModeless code.

	* dlls/mshtml/conpoint.c:
	mshtml: Improve debug traces.

	* dlls/mshtml/htmlbody.c:
	mshtml: Return NULL instead of empty string in IHTMLBodyElement::get_background.

2007-12-04  Roy Shea <roy@cs.hmc.edu>

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Added check of dwStructSize required by Windows in calls to
	InternetCrackUrlA.

	* dlls/wininet/tests/url.c:
	wininet: Removed inline from copy_compsA and zero_compsA to allow Windows
	testing.

2007-12-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt40/Makefile.in, dlls/msvcrt40/msvcrt40.c:
	msvcrt40: Add DllMain.

2007-12-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stack.c:
	dbghelp: Remove unneeded casts.

	* dlls/d3d9/device.c, dlls/d3d9/volume.c:
	d3d9: Remove unneeded casts.

	* dlls/d3d8/device.c, dlls/d3d8/volume.c:
	d3d8: Remove unneeded casts.

2007-12-05  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: winhelp >3.0 files always use 0x4000 as a divisor in TOPICPOS regardless
	of DecompressSize.

	* programs/winhelp/winhelp.c:
	winhelp: Do not confuse caller application with bogus error when we really
	succeeded.

2007-12-03  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/rebar.c:
	comctl32: Simplify condition based on WPARAM always being >= 0.

2007-12-04  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/state.c:
	wined3d: Fix error handling in transform_texture().

2007-12-03  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/msvcrt/heap.c:
	msvcrt: Fix error handling in _aligned_offset_realloc().

2007-12-03  Guido Barzini <gnb10@gnb10.uklinux.net>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Restore lost initialisation of ptr->AddressLength in GetAdaptersInfo.

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

	* programs/explorer/desktop.c:
	explorer: Store current display mode in the registry on startup.

	* dlls/user32/sysparams.c:
	user32: Make sure the desktop window is created before mode enumeration.

	* server/fd.c, server/file.h:
	server: Make fd_poll_event static.

2007-12-04  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: There are files without Phrases or Phrases40 compression, add support
	for them.

2007-12-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian resource.

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

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for a pointer to a conformant strings.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Set the destination pointer in PointerUnmarshall before calling the
	referenced type's unmarshalling routine.
	When a pointer that is dereferenced is encountered then this can result
	in a stale pointer (i.e. the one that is marshalled into the buffer for
	the embedded pointer unmarshalling case) being used instead of the one
	that was intended.

2007-12-04  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltable.c:
	mshtml: Added DIID_HTMLTableEvents connection point.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Move HTMLTextContainerEvents connection point to HTMLTextContainer
	object.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IConnectionPointContainer iface to all HTMLElement objects.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltable.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/htmltextcont.c, dlls/mshtml/mshtml_private.h:
	mshtml: Initialize HTMLElement in the beginning of constructors.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Make IConnectionPointContainer more flexible.

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

	* dlls/msi/tests/package.c:
	msi: Test the CompLocator subset of the AppSearch action.

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

	* dlls/wined3d/device.c:
	wined3d: Use the proper drawable size when clearing.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/device.c:
	wined3d: Clear honors the viewport.

	* dlls/wined3d/device.c:
	wined3d: Fixes for drawable handling in Clear.

	* dlls/wined3d/context.c:
	wined3d: Disable the scissor test when blitting.

2007-11-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Retrieve the height properly when setting the viewport.

	* dlls/wined3d/state.c:
	wined3d: Use the proper drawable size when setting the scissor rect.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a method for querying the gl drawable size of rendertarget.

2007-12-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/decode.c, dlls/crypt32/serialize.c:
	crypt32: Remove unnecessary casts.

	* dlls/comdlg32/colordlg.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/printdlg.c:
	comdlg32: Remove unnecessary casts.

2007-12-03  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Use HEAP_ZERO_MEMORY instead of setting individual fields to zero.

2007-12-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Fr.rc:
	wineboot: New French translation.

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Fr.rc:
	browseui: Updated French translation.

	* dlls/shell32/shell32_Fr.rc:
	shell32: Updated French translation.

2007-11-30  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Handle all non-continuable exceptions in CStdStubBuffer_Invoke.

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

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix the test of the size returned from WdtpInterfacePointer_UserSize.
	It varies on different versions of Windows, so we shouldn't test it for
	an exact value.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Put the delegating stub thunks in an executable memory page,  rather
	than on the heap.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Call IRpcChannelBuffer_GetDestCtx in NdrStubInitialize, just like we
	do in NdrProxyInitialize.

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Flesh out more of the IRpcChannelBuffer vtable to make the
	test_delegating_Invoke test succeed on Windows.

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

	* dlls/kernel32/console.c, dlls/kernel32/tests/console.c:
	kernel32: Implement and test {G, S}etConsoleInputExeName{A, W}.

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi32.spec,
	  dlls/gdi32/gdi_private.h:
	gdi32: Implement GetTextExtentExPointI.

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

	* dlls/shell32/shell32_main.h, dlls/shell32/shlview.c,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Get rid of the internal _InsertMenuItem function.

2007-12-01  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Ca.rc,
	  dlls/shell32/shell32_Cn.rc, dlls/shell32/shell32_Cs.rc,
	  dlls/shell32/shell32_Da.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Eo.rc,
	  dlls/shell32/shell32_Es.rc, dlls/shell32/shell32_Fi.rc,
	  dlls/shell32/shell32_Fr.rc, dlls/shell32/shell32_Hu.rc,
	  dlls/shell32/shell32_It.rc, dlls/shell32/shell32_Ja.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shell32/shell32_Nl.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Si.rc, dlls/shell32/shell32_Sk.rc,
	  dlls/shell32/shell32_Sv.rc, dlls/shell32/shell32_Tr.rc,
	  dlls/shell32/shell32_Uk.rc, dlls/shell32/shell32_Wa.rc,
	  dlls/shell32/shell32_Zh.rc, dlls/shell32/shresdef.h,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Localize file context menu.

2007-12-01  Zac Brown <zac@zacbrown.org>

	* dlls/wininet/tests/ftp.c:
	wininet: Add test for FtpGetCurrentDirectoryA in wininet/tests/ftp.c.

	* dlls/wininet/ftp.c:
	wininet: Fix FtpGetCurrentDirectoryW to handle bad input.

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

	* .gitignore, dlls/schannel/Makefile.in, dlls/schannel/version.rc:
	schannel: Add version resource.

	* .gitignore, dlls/rsabase/Makefile.in, dlls/rsabase/version.rc:
	rsabase: Add version resource.

	* tools/wine.inf:
	wine.inf: Add more fake dlls.

2007-12-03  Aric Stewart <aric@codeweavers.com>

	* programs/uninstaller/main.c:
	uninstaller: Iterate keys in HKEY_CURRENT_USER also as some programs install
	their uninstall information there.

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

	* programs/winhelp/hlpfile.c:
	winhelp: Enlarge font size by 3 as native winhelp does.

	* programs/winhelp/hlpfile.c:
	winhelp: Rewrite internal files lookup using B+ tree search. Add some sanity
	checks.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Rewrite Context support using B+ tree search.

	* programs/winhelp/hlpfile.c:
	winhelp: Implement generic B+ tree search function.

	* programs/winhelp/hlpfile.c:
	winhelp: winhelp 3.0 uses page numbers instead of hash values.

	* programs/winhelp/hlpfile.c:
	winhelp: Add support for winhelp 3.0 topics.

	* programs/winhelp/hlpfile.c:
	winhelp: Add support for winhelp 3.0 phrases.

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h:
	winhelp: Correctly deal with various TopicBlockSize/Compression
	combinations. Simplify HLPFILE_Uncompress_Topic function.

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

	* dlls/msi/msi.c, dlls/msi/msi.spec:
	msi: Add a stub implementation of MsiEnumComponentCostsW.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: Implement the Version property of the Installer object.

2007-11-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test the CCPSearch action.

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

	* dlls/ntdll/thread.c:
	ntdll: Added a sleep in NtGet/SetContextThread, a yield is not enough on
	some kernels.

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

	* dlls/msi/where.c:
	msi: Use a hash table for reordering rows in a WHERE query to conserve space.

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

	* dlls/wined3d/device.c:
	wined3d: Add parentheses to a flag check.

2007-11-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Detect the Intel GPU in macbooks.

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c:
	wined3d: Unify bpp to format conversion.

2007-11-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Enabling too many lights is silently ignored.
	I'm resending this patch because my reply to Henri's concern came too late.
	Henri noted that I am enabling lights that do not exist. Existing tests show
	that if no light is assigned to the index, LightEnable creates a light with a
	set of default parameters, so the tests should be fine.
	From 9ee4c61805b50886f79e87d744b52f27b7b00b4e Mon Sep 17 00:00:00 2001
	From: Stefan Doesinger <stefan@codeweavers.com>
	Date: Thu, 29 Nov 2007 13:22:47 +0100
	Subject: [PATCH] WineD3D: Enabling too many lights is silently ignored
	This patch adds tests for all d3d versions that show that Windows
	pretends that enabling more lights than supported succeeds. D3D_OK is
	returned, and the light is reported as enabled.
	What is not tested in this patch is the rendering output of this
	situation, thus the FIXME is still written.

2007-11-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c:
	wined3d: mov to a0.x does a floor(), not a round to nearest.

2007-12-01  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/user32/cursoricon.c:
	user32: Add a FIXME for animated cursors.

	* dlls/winealsa.drv/waveinit.c:
	winealsa.drv: Fix a comment.

2007-12-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/directx.c:
	wined3d: Fix handling of a special case in IWineD3DImpl_FillGLCaps() and adjust
	type of loop variable.

	* dlls/comctl32/header.c:
	comctl32: Remove extraneous check (unsigned < 0).

2007-12-02  Ted Percival <ted@midg3t.net>

	* programs/regedit/listview.c:
	regedit: Display REG_DWORD as unsigned with lowercase hex digits.

2007-12-01  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comctl32/commctrl.c, dlls/comctl32/dpa.c, dlls/comctl32/dsa.c,
	  dlls/comctl32/propsheet.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/tooltips.c, dlls/comctl32/trackbar.c,
	  dlls/comctl32/treeview.c:
	comctl32: Remove unneeded casts.

	* dlls/advapi32/cred.c, dlls/advapi32/crypt.c, dlls/advapi32/security.c:
	advapi32: Remove unneeded casts.

	* dlls/cabinet/fdi.c:
	cabinet: Remove unneeded casts.

2007-11-30  Rob Shearman <rob@codeweavers.com>

	* dlls/d3dx8/math.c:
	d3dx8: Initialise temp in D3DXQuaternionInverse to avoid a uninitialised
	variable warning with some versions of gcc.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Test that the string retrieved from get_name was actually unmarshalled
	correctly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Reverse the conditions for which *pPointer is assigned base_ptr_val
	in PointerUnmarshall.
	In one condition (fMustAlloc == TRUE), base_ptr_val may be uninitialised
	and so cause a valgrind warning. Reversing the check is harmless and
	doesn't result in a performance decrease.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Initialise the memory in test_simple_struct_marshal before passing it
	to NdrSimpleStructUnmarshall.
	Otherwise, the unmarshalling code will read from unintialised memory
	when trying to reuse the embedded pointers in the memory block.
	Also fix a couple of memory leaks.

	* include/winerror.h:
	include: Fix the HRESULT_FROM_WIN32 macro to not change the HRESULT if the
	error is already an HRESULT.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c:
	ole32: Ignore the threading model of the PSFactoryBuffer object created during
	standard marshaling.
	This is so that we don't try to host it.

	* dlls/ole32/compobj.c:
	ole32: Always create a window for the main apartment.

	* dlls/winecrt0/stub.c, include/wine/exception.h, include/winnt.h:
	include: Move Wine-specific EH_* defines from winnt.h to
	include/wine/exception.h.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement OLEPictureImpl_GetIDsOfNames.

2007-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/version.c, dlls/kernel32/version.c:
	kernel32: Add some simple tests for GetVersionExA.

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

	* dlls/mshtml/htmlelem2.c:
	mshtml: Added IHTMLElement2::get_dir implementation.

2007-11-30  Alexandre Julliard <julliard@winehq.org>

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

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

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmltable.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLTable interface stub implementation.

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

2007-11-30  Francois Gouget <fgouget@free.fr>

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

2007-11-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/cursoricon.c:
	user32: Destroying the current cursor results in an error.

2007-11-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Remove the X channel fixup in render target unlocking.

2007-11-29  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Added stub for FindVolumeClose.

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

	* dlls/urlmon/bindctx.c, dlls/urlmon/binding.c, dlls/urlmon/bindprot.c,
	  dlls/urlmon/file.c, dlls/urlmon/format.c, dlls/urlmon/ftp.c,
	  dlls/urlmon/http.c, dlls/urlmon/mk.c, dlls/urlmon/regsvr.c,
	  dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c, dlls/urlmon/umon.c,
	  dlls/urlmon/umstream.c, dlls/urlmon/urlmon_main.h:
	urlmon: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

2007-11-29  Sven Paschukat <Sven.Paschukat@T-Online.de>

	* dlls/ctapi32/ctapi32.c:
	ctapi32: Added null terminator to library name.

2007-11-29  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix NdrSimpleStructUnmarshall to cope with [in, out] embedded pointers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve PointerUnmarshall to cope with keeping the non-NULL source
	pointer of a client unmarshall.
	This will enable various types with embedded pointers to handle [in,out]
	parameters correctly by keeping the existing memory.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Move forcing of fMustAlloc to NULL to the callers of
	EmbeddedPointerUnmarshall.
	This will enable them to be individually fixed up to use memory if it
	was provided by the caller.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: EmbeddedPointerUnmarshall doesn't need to change the address of the
	allocated memory, so reduce the level of indirection of the memory parameter
	by one.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Errors in sending or receiving packets should result in RPC_S_CALL_FAILED
	being returned, not RPC_S_PROTOCOL_ERROR.

2007-11-27  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c:
	advapi32: Add stub for CreateProcessWithLogonW.

2007-11-28  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi32/font.c:
	gdi32: Fix the type of two loop variables.

2007-11-28  Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>

	* dlls/user32/exticon.c:
	user32: Reduce scope of variable in ICO_ExtractIconExW() and initialize it.

2007-11-29  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/winedbg/info.c:
	winedbg: Warning fixes.

2007-11-28  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/kernel32/local16.c:
	kernel32: Handle default case in Local32_FromHandle().

2007-11-29  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/loader.c:
	libwine: Work around the Mac OS dynamic loader support for PE files.

2007-11-29  Aric Stewart <aric@codeweavers.com>

	* dlls/winecoreaudio.drv/mixer.c:
	coreaudio: Verify valid lineId in MIXER_GETLINECONTROLSF_ONEBYTYPE.

	* dlls/winmm/winmm.c:
	winmm: Correct check for MIXER_GETLINECONTROLSF_ONEBYTYPE in
	mixerGetLineControlsA.

2007-11-28  Marco Schuster <marco@harddisk.is-a-geek.org>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Added a card ID for a 8600 Mobile GT.

2007-11-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/advapi32/registry.c:
	advapi32: Fix a typo.

2007-11-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Don't check for the media or cabinet if the cabinet is internal.

	* dlls/msi/appsearch.c:
	msi: Make sure attr is valid before checking for the directory bit.

2007-11-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/texture.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Activate GL_ARB_texture_rectangle.

	* dlls/wined3d/device.c:
	wined3d: Refuse to create a mipmapped conditional np2 texture.

2007-11-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c, dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Make the code aware of GL_ARB_texture_rectangle.

2007-11-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_ARB_texture_rectangles to our opengl extensions.

	* dlls/wined3d/surface.c:
	wined3d: Avoid hardcoding GL_TEXTURE_2D.

	* dlls/wined3d/context.c, dlls/wined3d/surface.c:
	wined3d: Disable GL_TEXTURE_2D in the standard blit setup.

2007-11-28  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix a test in the WdtpInterfacePointer tests.

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix description of what is being test in ok calls in the
	WdtpInterfacePointer tests.

2007-11-28  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	crypt32: Support setting the salt value through KP_SALT_EX.

	* dlls/rsaenh/rsaenh.c:
	crypt32: Support getting and setting the KP_PADDING key param.

	* include/wincrypt.h:
	wincrypt.h: Add values for KP_PADDING key param.

2007-11-28  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix an integer overflow in NdrConformantStructMarshall and
	NdrConformantStructUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix some more potential buffer overflows.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check there is enough space in the buffer and that the size doesn't
	cause an overflow when copying data to it.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check for integer overflows when increasing the buffer length.
	Rename safe_buffer_copy to safe_copy_from_buffer.

2007-11-25  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/tests/heap.c:
	msvcrt: Test more offsets for _aligned_offset_realloc (especially offset >
	alignment).

2007-11-28  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/heap.c:
	msvcrt: Fix _Aligned_offset_realloc (move correct block of memory); add a
	comment to explain why.

2007-11-22  Divan Burger <divan.burger@gmail.com>

	* dlls/user32/sysparams.c, tools/wine.inf:
	user32, wine.inf: Enable title bar gradients and match colours with win2k.

2007-11-28  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/urlmon/umstream.c:
	urlmon: The callback parameter can be null, check pointer before using.

2007-11-28  Aric Stewart <aric@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Implement WIDM_GETPOS.

2007-11-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add printf format checking to the shader_addline function and fix
	resulting warnings.

2007-11-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexdeclaration.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix a sign mistake in the code creating the sorted attrib.

2007-11-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Allow using a different internal format for fbos.
	OpenGL drivers do not support some low precision internal formats
	like GL_RGB5 for fbo color targets. Direct3D application depend on them,
	so provide a fallback format for render targets if the requested format
	itself is not supported.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Report some more geforce 7 cards as geforce 7.

2007-11-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Do not try to disable unsupported texture units.

2007-11-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Add some missing checkGLcall calls.

2007-11-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Work around nvidia beta driver bug.

2007-11-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Inform the texture about filtering changes.
	The surface_blt_to_drawable function changes the filtering settings of
	the texture object, but without informing the container about this
	change. This patch makes sure that the basetexture knows about this and
	reapplies the changed states to the settings chosen by the app.

2007-11-28  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/cred.c:
	advapi32: Make the credential registry key stay around if a persist value
	longer than session is specified.

	* dlls/advapi32/cred.c:
	advapi32: Use the open_for_write parameter to open_cred_mgr_key and fix
	get_cred_mgr_encryption_key to not need KEY_WRITE access to the key passed in.

2007-11-27  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Empty container names are allowed for CRYPT_VERIFYCONTEXT contexts.

2007-11-26  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/store.c:
	crypt32: Add CERT_STORE_ADD_NEWER support to CertAddCertificateContextToStore.

	* dlls/crypt32/cert.c:
	crypt32: Implement finding an existing certificate in a store.

2007-11-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/name.c, dlls/dnsapi/query.c,
	  dlls/dnsapi/record.c:
	dnsapi: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

	* dlls/shdocvw/events.c, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shlinstobj.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Rename the wrappers around HeapAlloc() &Co to use the new standard
	naming.

2007-11-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/tests/vartype.c:
	oleaut32: Handle integer overflow of len in SysReAllocStringLen and
	SysAllocStringByteLen.

2007-11-25  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/ntdll/heap.c:
	ntdll: Trace arena magics (may help debugging some heap corruptions).

2007-11-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/d3dx8/math.c, include/d3dx8math.h, include/d3dx9math.h:
	d3dx8: Add WINAPI to the prototypes of D3DXMatrixTransformation.

2007-11-27  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/msi/dialog.c:
	msi: Fix invalid SQL query.

2007-11-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Introduce a new helper function, TLB_FreeCustData, for freeing
	custom data.
	Fix memory leaks caused by the variable and interface custom data not
	being freed properly.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free the correct custom data inside ITypeInfo_fnRelease.
	Since the code is inside the loop for function data, it should be
	freeing the function's custom data, not the interface's.

2007-11-27  Alexandre Julliard <julliard@winehq.org>

	* server/queue.c:
	server: When merging mouse messages ignore the window if it isn't set.

2007-11-27  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't clear the auth data for Basic authentication in
	HTTP_InsertAuthorizationForHeader.
	It isn't tracked per connection, unlike NTLM authentication, and so the
	server will return a 401 error and try to get us to authenticate again.
	However, this doesn't work as the authentication information is assumed
	by the code to be valid for the whole connection.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix the tests for up_enum16.
	It is different to the other base types as it has a different size on
	the wire to in memory, so it can't just be set to the buffer when
	unmarshalling.

	* dlls/credui/tests/credui.c:
	credui: Fix a test failure on Windows XP.

2007-11-27  David Adam <David.Adam@math.cnrs.fr>

	* include/Makefile.in, include/d3dx9.h, include/d3dx9math.h,
	  include/d3dx9math.inl:
	include: Header files for d3dx9_xx.

2007-11-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Correctly handle the y offset with offscreen rendering.
	This fixes a regression introduced with the MAD patch.

2007-11-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Downgrade an ERR to a WARN.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/pixelshader.c:
	wined3d: Fog is applied after sRGB correction.

	* dlls/wined3d/pixelshader.c:
	wined3d: Make SRGB write correction working with 1.x shaders in arb.

2007-11-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a test for vertex shader input matching.

2007-11-25  Lauris Kaplinski <lauris@kaplinski.com>

	* dlls/wined3d/device.c:
	wined3d: Fixed potential reference of freed backBuffer array in
	IWineD3DDeviceImpl_SetFrontBackBuffers.

2007-11-26  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdi32/dc.c:
	gdi32: Fix a typo.

	* dlls/dinput/effect_linuxinput.c:
	dinput: Use bitwise NOT not logical NOT.

2007-11-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: socket() returns -1 on error so check the return value against that.

	* dlls/wininet/tests/http.c:
	wininet/tests: Do not compare the return value of socket() with 0. Use
	INVALID_SOCKET instead.

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

	* configure, configure.ac, dlls/advapi32/Makefile.in,
	  dlls/advapi32/cred.c:
	advapi32: Add support for using the Mac Keychain services as a backend for
	the credential functions instead of the registry.

	* dlls/ole32/ole32.spec, dlls/ole32/tests/usrmarshal.c,
	  dlls/ole32/usrmarshal.c:
	ole32: Add tests for WdtpInterfacePointer_* functions.
	Add stubs for these so that the tests link.

	* dlls/ole32/rpc.c:
	ole32: Clean up properly in ClientRpcChannelBuffer_SendReceive in the case
	where PostMessageW fails.

	* dlls/ole32/rpc.c:
	ole32: Store the dispatch parameters in the message state structure to allow
	them to be initialised earlier in the sequence of IRpcChannelBuffer calls.

	* dlls/advapi32/cred.c:
	advapi32: Fix a typo in CredEnumerateW.

	* dlls/advapi32/cred.c:
	advapi32: Move credential registry reading code to separate functions.

2007-11-26  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/regsvr.c,
	  dlls/inetcomm/tests/Makefile.in, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody:SetData.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody:[G|S]etCurrentEncoding.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Implement IMimeBody:IsContentType.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Store a header's parameters as a list.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Unfold headers.

	* dlls/inetcomm/mimeole.c:
	inetcomm: Parse headers into a list.

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/tests/mimeole.c:
	inetcomm: Copy RFC822 headers into a memory block for later parsing.

2007-11-21  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/wincrypt.h:
	include: Add missing definitions for DSS in wincrypt.h.

2007-11-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/shell32_main.c:
	shell32: GetModuleFileNameW gets number of WCHARs not bytes.

2007-11-22  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/reg.c:
	ntdll: Fix computation in enumerate_key().

2007-11-23  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/inetcomm/internettransport.c:
	inetcomm: Fix error check in InternetTransport_Connect().

2007-11-22  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Rewrite condition in vshader_program_add_param() to actually distinguish
	between two cases.

	* dlls/itss/chm_lib.c:
	itss: Avoid checking an unsigned value for < 0.

	* dlls/winedos/int21.c:
	winedos: Use DWORD instead of long for return values of SetFilePointer.
	Adjust type of loop variable in INT21_Ioctl_Char().

	* dlls/netapi32/tests/apibuf.c:
	netapi32: Remove one tests and simplify another based on the limited range
	of unsigned.

	* dlls/ntdll/sec.c:
	ntdll: Simplify condition in RtlGetAce() based on variable (un)signedness.

	* dlls/oleaut32/typelib.c:
	oleaut32: Simplify two conditions based on the fact that unsigned variables
	cannot be negative.

	* dlls/oleaut32/typelib2.c:
	oleaut32: Simplify two conditions based on the fact that unsigned variables
	cannot be negative.

2007-11-21  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/user32/scroll.c:
	user32: Fix variable type in SCROLL_HandleScrollEvent().  Remove useless check
	in SCROLL_SetScrollInfo().

2007-11-25  Patrick Moran <patrick.a.moran@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Fix atou() return value mistake.

2007-11-21  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/tests/heap.c:
	msvcrt: Fix memory leak (found by Smatch).

2007-11-21  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixTransformation.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionExp.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionLn.

2007-11-20  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionRotationYawPitchRoll.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionRotationMatrix.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionRotationAxis.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionToAxisAngle.

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

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Silence common invalid QueryInterface FIXMEs.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Terminate child process in virtual tests.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IOleCommandTarget implementation to HTMLTxtRange.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Added IHTMLStyleSheetsCollection::item implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmlstylesheet.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Store nsIDOMCSSStyleSheet in HTMLStyleSheet object if available.

	* dlls/urlmon/bindctx.c, dlls/urlmon/binding.c, dlls/urlmon/bindprot.c,
	  dlls/urlmon/file.c, dlls/urlmon/format.c, dlls/urlmon/ftp.c,
	  dlls/urlmon/http.c, dlls/urlmon/mk.c, dlls/urlmon/regsvr.c,
	  dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c, dlls/urlmon/umon.c,
	  dlls/urlmon/umstream.c, dlls/urlmon/urlmon_main.h:
	urlmon: Wrap heap functions.

2007-11-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/where.c:
	msi: Downgrade an ERR to a WARN.

	* dlls/msi/source.c:
	msi: Fix the condition of a FIXME.

	* dlls/msi/format.c:
	msi: Downgrade an ERR to a WARN.

	* dlls/msi/custom.c:
	msi: Downgrade a FIXME to a WARN.

	* dlls/msi/files.c:
	msi: Only check the volume label if it's different than the first media's
	volume label.

	* dlls/msi/action.c, dlls/msi/files.c, dlls/msi/msipriv.h,
	  dlls/msi/tests/install.c:
	msi: Check the destination file's hash and skip that file if the hash matches.

	* dlls/msi/tests/install.c:
	msi: Set the file contents of the file hash test file explicitly.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Verify the szFilePath parameter of MsiGetFileHash.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiGetFileHash and clean up the existing tests.

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

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix dead zone handling.

2007-11-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: Use logical OR not bitwise OR.

	* dlls/user32/combo.c:
	user32: Fix a typo.

	* dlls/comctl32/theme_combo.c:
	comctl32: Fix a typo.

2007-11-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/menu.c:
	user32: Constify some variables.

2007-11-22  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/actctx.c:
	kernel32: Change the shared manifest test to depend on a build number that
	isn't currently published on at least XP, showing that assemblies with higher
	build numbers can be used.

2007-11-20  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/actctx.c:
	ntdll: Shared manifests should have a less-strict version check performed when
	loading them as dependencies.

2007-11-22  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/commctrl.c:
	comctl32: Update the version in the created version to the highest current
	version present on XP.
	We don't need to create more than one because application dependencies
	can be resolved using shared assemblies with higher build and revision
	numbers.

	* dlls/ole32/marshal.c:
	ole32: Fix a race in find_proxy_manager.

2007-11-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/listbox.c:
	user32: Constify some variables.

2007-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/wsock32/Makefile.in, dlls/wsock32/wsock32.spec:
	wsock32: Forward AcceptEx and GetAcceptExSockaddrs to mswsock.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Make sure to erase the dragging frame before moving the window.

2007-11-21  Divan Burger <divan.burger@gmail.com>

	* dlls/user32/sysparams.c:
	user32: Change the desktop colour and pattern to match win2k.

	* dlls/user32/sysparams.c:
	user32: Fix colours to match exactly with Windows 2000.

2007-11-20  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/rsaenh/Makefile.in, dlls/rsaenh/aes.c, dlls/rsaenh/implglue.c,
	  dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c,
	  dlls/rsaenh/tests/rsaenh.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Add implementation of Enhanced RSA AES Provider.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Add tests for RSA_AES provider.

2007-11-16  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml: Tests for createTextNode.

	* dlls/msxml3/domdoc.c:
	msxml: Implement createTextNode.

2007-11-20  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/node.c:
	msxml: Always return a string in get_text.

	* dlls/msxml3/tests/domdoc.c:
	msxml: Added test for get_text.

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

	* dlls/hlink/tests/hlink.c:
	hlink: Added HlinkCreateExtensionServices tests.

	* dlls/hlink/Makefile.in, dlls/hlink/extserv.c, dlls/hlink/hlink_main.c:
	hlink: Added HlinkCreateExtensionServices implementation.

	* dlls/hlink/browse_ctx.c, dlls/hlink/hlink_main.c,
	  dlls/hlink/hlink_private.h, dlls/hlink/link.c:
	hlink: Wrap heap functions.

	* dlls/hlink/browse_ctx.c, dlls/hlink/hlink_main.c,
	  dlls/hlink/hlink_private.h, dlls/hlink/link.c:
	hlink: Move common includes and function declarations to header file.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkUpdateStackItem stub.

2007-11-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Bool constants aren't vectors.

2007-11-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexdeclaration.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Track vertex declaration changes on vertex shaders.
	If an attribute has type D3DDECLTYPE_D3DCOLOR, the red and blue channels
	are swizzled in the shader. Since the attribute is stored in the vertex
	declaration and not the vertex shader, it can change by setting a new
	vertex declaration. If this happens, we have to recompile the shader
	with the swizzling of that specific attribute turned on or off.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move glsl shader destruction to the glsl shader backend.

	* dlls/wined3d/vertexshader.c:
	wined3d: Move destroying the glsl vshader into a separate function.

2007-11-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Do not cap fragment samplers to 8.

2007-11-21  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Some fixes for Norwegian translation.

2007-11-20  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/winefile/Es.rc:
	winefile: Spanish resource file updated.

2007-11-20  Lei Zhang <thestig@google.com>

	* dlls/shell32/changenotify.c:
	shell32: Only notify immediate parent.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Perform copy in UnixFolder_ISFHelper_CopyItems.

2007-11-20  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception if a NULL ref-pointer is passed in to PointerMarshall
	or PointerBufferSize.

	* server/file.c:
	server: Fix incorrect translation of the World SID to and from Unix file
	permissions.
	The World SID now maps to user|group|other instead of just other.

2007-11-20  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/credui/credui_Fr.rc:
	credui: Updated French translation.

	* programs/cmd/Fr.rc:
	cmd: Updated French translation.

2007-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Don't crash the test if GetThreadContext fails.

2007-11-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/user32/resources/display.rc, dlls/user32/sysparams.c:
	user32: Change to modern Windows colours.

2007-11-20  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/cert.c, dlls/crypt32/tests/chain.c,
	  dlls/crypt32/tests/crl.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/oid.c, dlls/crypt32/tests/protectdata.c,
	  dlls/crypt32/tests/store.c:
	crypt32/tests: Get the tests running on Windows 98.

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

	* dlls/user32/tests/listbox.c:
	user32/tests: Add the trailing '\n' to an ok() call.

2007-11-19  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionBaryCentric.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionSquad.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionSlerp.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionInverse.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXQuaternionMultiply.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXColorAdjustContrast.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXColorAdjustSaturation.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneTransform.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneFromPoints.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneFromPointNormal.

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

	* dlls/msi/automation.c:
	msi: automation: Fix ITypeInfo leak.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add missing VariantClear.

	* dlls/msi/tests/automation.c, dlls/msi/tests/install.c:
	msi/tests: Close opened service handles.

	* dlls/msi/automation.c, dlls/msi/script.c:
	msi: automation: Fix automation object reference counts when objects are created.

2007-11-11  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/Makefile.in, programs/wordpad/print.c,
	  programs/wordpad/resource.h, programs/wordpad/rsrc.rc,
	  programs/wordpad/wordpad.c, programs/wordpad/wordpad.h:
	wordpad: Move printing functions to a separate file.

2007-11-19  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix print preview bar.

2007-11-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Refer to main menu using IDM_MAINMENU.

2007-11-20  Rob Shearman <rob@codeweavers.com>

	* server/file.c:
	server: Fix a typo in the enumeration of the ACE's in sd_to_mode.
	This caused only the first ACE to be examined, causing permissions to
	always be set to ----???---.

	* dlls/ntdll/process.c, dlls/ntdll/tests/info.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Change the get_dll_info server request to allow retrieving the image
	file name of a process.
	Implement NtQueryInformationProcess(ProcessImageFileName).

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

	* dlls/mshtml/navigate.c:
	mshtml: Change FIXME that is usually invalid to TRACE.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more loading tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Reload page in exec_editmode if available.

	* dlls/mshtml/editor.c:
	mshtml: Always initialize output in exec_fontname.

	* dlls/mshtml/olecmd.c:
	mshtml: Use call_set_active_object in exec_editmode.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c:
	mshtml: Move IOleInPlaceFrame::SetActiveObject call to separated function.

2007-11-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c:
	d3d9: Free the converted declaration data after creating the declaration.

	* dlls/d3d8/tests/visual.c:
	d3d8: Destroy the window after the visual test.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/palette.c,
	  dlls/wined3d/resource.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use standard wine lists for the resource list.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Free the shader function when freeing the shader.

	* dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move IUnknown functions to IWineD3DBaseShader.

	* dlls/d3d8/device.c:
	d3d8: Release the vertex declarations array when destroying the device.

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

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Return correct error from WebBrowser::Quit.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::get_Application implementation.

2007-11-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Check the cabinet's full path for existence, not just the cabinet name.

2007-11-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/edit.c:
	user32: Constify some variables.

2007-11-19  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_En.rc, dlls/credui/credui_main.c,
	  dlls/credui/credui_resources.h:
	credui: Display a warning balloon if the user has Caps Lock on.

	* dlls/credui/credui_En.rc, dlls/credui/credui_main.c,
	  dlls/credui/credui_resources.h:
	credui: Show a balloon tip in the credential dialog if
	CREDUI_FLAGS_INCORRECT_PASSWORD was specified.

	* dlls/urlmon/bindctx.c:
	urlmon: Fix a reference count leak in RegisterBindStatusCallback.

	* programs/explorer/systray.c:
	explorer: Add a fixme to show when applications are trying to show a balloon
	tip in the taskbar notification area.

	* dlls/comctl32/comboex.c:
	comctl32: Forward the WM_GETTEXTLENGTH message from ComboEx controls to its
	edit control.

	* dlls/comctl32/tooltips.c:
	comctl32: Fix the tooltips behaviour when TTF_ABSOLUTE isn't specified.
	This does not mean to use the current cursor position. Instead, it means
	that the left hand edge of balloon tips doesn't have to be exactly the
	co-ordinate passed in (i.e. the stem can be as vertical as possible) and
	it means non-balloon tips can use smart placement.

	* dlls/comctl32/tooltips.c:
	comctl32: Unify the implementation of TOOLTIPS_Show and TOOLTIPS_TrackShow to
	give tracked tooltips balloon support.

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

	* dlls/mshtml/nsio.c:
	mshtml: Fixed handling channels without container and necko channel.

2007-11-19  Bang Jun-young <junyoung@mogua.com>

	* dlls/olecli32/olecli_main.c:
	olecli32: Fix invalid syntax.

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

	* dlls/winex11.drv/settings.c, programs/explorer/Makefile.in,
	  programs/explorer/desktop.c:
	winex11.drv: Use display device guid managed by explorer.

2007-11-19  Alexandre Julliard <julliard@winehq.org>

	* libs/port/spawn.c:
	libport: Work around Mac OS execve() breakage.

	* dlls/ntdll/loader.c, dlls/ntdll/server.c:
	ntdll: Unblock signals in process init only after the dlls have been imported.

	* dlls/ntdll/loader.c:
	ntdll: Send the exit code to the server on failed initialization.

	* dlls/ntdll/loader.c:
	ntdll: Initialize the PEB LoaderLock pointer.

2007-11-19  Michael Stefaniuc <mstefani@redhat.de>

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/utils.c,
	  tools/wrc/utils.c:
	tools: Remove duplicate includes.

	* dlls/atl/atl_ax.c, dlls/dinput/joystick_linux.c, dlls/dnsapi/ns_name.c,
	  dlls/quartz/avidec.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/user32/winpos.c, dlls/uuid/uuid.c, dlls/winmm/mci.c:
	dlls: Remove duplicate includes.

	* dlls/setupapi/setupcab.c, dlls/setupapi/setupx_main.c:
	setupapi: Remove duplicate includes.

	* dlls/kernel32/kernel_main.c, dlls/kernel32/tests/toolhelp.c:
	kernel32: Remove duplicate includes.

	* dlls/ntdll/heap.c, dlls/ntdll/serial.c, dlls/ntdll/signal_powerpc.c:
	ntdll: Remove duplicate includes.

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/tests/printdlg.c:
	comdlg32: Remove duplicate includes.

	* dlls/quartz/dsoundrender.c, dlls/quartz/filesource.c,
	  dlls/quartz/parser.c, dlls/quartz/pin.c, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Fix memory leaks on error paths. Found by Smatch.

	* dlls/qcap/vfwcapture.c:
	qcap: Fix a mem leak on an error path. Found by Smatch.

	* dlls/shell32/shfldr_mycomp.c:
	shell32: Fix a mem leak on an error path. Found by Smatch.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Use ANSI function declarations.

2007-11-18  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_main.c:
	credui: Override the default banner if the caller specifies one to
	CredUIPromptForCredentialsW.

	* dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Hold the thread-data's critical section while cancelling a call.
	Check that there is a connection before trying to cancel it.

2007-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Add stub implementations for FindFirstVolume{A, W}.

	* dlls/wininet/cookie.c:
	wininet: Initialize path buffer in InternetSetCookie.

2007-11-18  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/advapi32/service.c:
	advapi32: Remove untriggerable check.

2007-11-17  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Fix typos in warning messages.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: Fix const-ness of parameters to printBytes().

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

	* dlls/hlink/tests/hlink.c, dlls/shdocvw/shdocvw.inf:
	shdocvw: Set default home and search page.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.inf:
	shdocvw: Register CLSID_InternetShortcut.

	* dlls/uuid/uuid.c, include/Makefile.in, include/isguids.h:
	include: Added isguids.h.

2007-11-17  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/netapi32/access.c:
	netapi32: Remove redundant NULL check before HeapFree(). Found by Smatch.

	* dlls/msvcrt/tests/heap.c:
	msvcrt/tests: Remove redundant NULL check before free(). Found by Smatch.

2007-11-17  Rob Shearman <rob@codeweavers.com>

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Add a stub for LinkWindow_UnregisterClass.

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Add a stub for LinkWindow_RegisterClass.

	* dlls/credui/credui_main.c:
	credui: Make sure not to leave the password in memory when no longer in use.

	* dlls/credui/credui_main.c:
	credui: Ensure that the foreground window doesn't get changed while the user
	is typing in their password.
	This doesn't currently work on Wine as LockSetForegroundWindow isn't
	implemented, but when it does it should work nicely.

	* dlls/credui/credui_main.c:
	credui: Check for and don't add duplicates when filling the username combo box.

	* dlls/credui/credui_main.c:
	credui: Enumerate saved credentials and use these to populate the combo box.

	* dlls/credui/credui_De.rc, dlls/credui/credui_En.rc,
	  dlls/credui/credui_Ko.rc, dlls/credui/credui_No.rc,
	  dlls/credui/credui_Pl.rc, dlls/credui/credui_Sv.rc:
	credui: Increase the dropped-down size of the username combo box.

	* dlls/credui/credui_main.c:
	credui: Split CredDialogProc out into separate functions.

	* dlls/credui/Makefile.in, dlls/credui/credui_main.c:
	credui: Add support for saving the credentials input using
	CredUIPromptForCredentials by calling CredWriteW.

	* include/winuser.h:
	include: Add definitions used for AllowSetForegroundWindow and
	LockSetForegroundWindow.

2007-11-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Don't check for a cabinet's existence if it's embedded in the package.

2007-11-16  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/comctl32/comboex.c:
	comctl32: Fix handling of CB_RESETCONTENT in ComboBoxEx.

2007-11-16  Juan Lang <juan.lang@gmail.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove a bad comment.

	* dlls/shell32/classes.c:
	shell32: Use more restricted registry rights when quering values.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate memory for executing an URL.

	* dlls/shell32/shlexec.c:
	shell32: Use helper function to execute a URL.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate buffer for command.

	* dlls/shell32/shlexec.c:
	shell32: Constify some parameters.

	* dlls/shell32/shlexec.c:
	shell32: Don't overwrite the caller's buffer when doing a dde connection.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate buffer for quoted command.

	* dlls/shell32/shlexec.c:
	shell32: Use a helper function for executing a found executable.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate directory buffer.

	* dlls/shell32/shlexec.c:
	shell32: Use helper function to translate ID list.

	* dlls/shell32/shlexec.c:
	shell32: Use a helper function for executing a class.

	* dlls/shell32/shlexec.c:
	shell32: Dynamically allocate buffer for command parameters.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Correct confusing indentation in GetTcpTable.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Correct copy/paste error in GetTcpTable.

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

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c:
	msvcrt: Implement _mbsnbcpy_s.

2007-11-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c,
	  dlls/msvcrt/tests/string.c:
	msvcrt: Implement strcat_s.

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

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c,
	  dlls/msvcrt/tests/string.c:
	msvcrt: Implement strcpy_s.

2007-11-15  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/winedbg/types.c:
	winedbg: Fix type of loop variable in types_udt_find_element().

2007-11-15  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Add a few more tests which check the decryption strings.

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

	* dlls/wined3d/swapchain.c:
	wined3d: Destroy GL contexts before changing the screen resolution.

	* dlls/wined3d/vertexshader.c:
	wined3d: Remove a hack that slipped in.

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

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Do not call PreLoad in surface_download_data.

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

	* dlls/mapi32/mapi32.spec, dlls/mapi32/mapi32_main.c:
	mapi32: Add a stub for DllGetClassObject.

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

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix the trailing '\n' in an ok() call.

	* dlls/winex11.drv/opengl.c:
	winex11: Add the trailing '\n' to a Wine trace.

2007-11-15  Juan Lang <juan.lang@gmail.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Avoid HEAP_ZERO_MEMORY where it isn't needed.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Don't allocate gobs of memory if there are no non-loopback interfaces.

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Don't allocate gobs of memory if the IP address table is empty.

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Don't allocate gobs of memory if interface table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory if the UDP table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory when the ARP table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory when the route table is empty.

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Don't allocate gobs of memory when the TCP entry table is empty.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Don't override return value from getTcpTable.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Default to a default gateway when choosing the best route.

2007-11-15  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixReflect.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixShadow.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneIntersectLine.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXPlaneNormalize.

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

	* dlls/kernel32/tests/file.c:
	kernel32: Mask out FILE_ATTRIBUTE_NOT_CONTENT_INDEXED to prevent a test failure
	under Windows.

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: Set last error to ERROR_ALREADY_EXISTS if CreateFile succeeds and
	file existed before for CREATE_ALWAYS and OPEN_ALWAYS.

2007-11-15  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/factory.c:
	msxml3: Don't leak an interface on failure.

2007-11-15  Gerald Pfeifer <gerald@pfeifer.com>

	* programs/taskmgr/perfdata.c, programs/taskmgr/perfpage.c:
	taskmgr: Move out-of-domain checking into PerfDataGetProcessorUsage() and
	PerfDataGetProcessorSystemUsage().

2007-11-10  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/file.h,
	  server/protocol.def, server/thread.c:
	server: Pass Information field from async I/O APCs.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/sync.c, dlls/ntdll/tests/file.c:
	ntdll: Make async i/o functions generate completion messages.

	* dlls/ws2_32/socket.c, include/wine/server_protocol.h, server/fd.c,
	  server/protocol.def, server/request.h, server/trace.c:
	ws2_32: Make certain winsock functions generate i/o completion messages.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/completion.c,
	  server/fd.c, server/file.h, server/protocol.def:
	server: Allow async i/o operations to send completion messages.

	* dlls/ntdll/tests/file.c:
	ntdll: Add some I/O completion tests.

2007-11-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove check which never triggers.

2007-11-13  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/wordpad/Fr.rc:
	wordpad: Updated French translation.

2007-11-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Don't ignore the error returned by ready_media.

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Only check the presence of the cabinet if the file is compressed.

	* dlls/msi/tests/install.c:
	msi: Add tests for situations involving missing cabinets.

	* dlls/msi/files.c:
	msi: Simplify ready_media.

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

	* tools/wine.inf:
	wine.inf: Register inetcomm.dll.

	* tools/wine.inf:
	wine.inf: Some dlls need to be registered before the others.

2007-11-14  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml: Test for insertBefore with a NULL output parameter.

	* dlls/msxml3/node.c:
	msxml: Allow insertBefore to have a NULL output parameter.

2007-11-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/dde_misc.c, dlls/user32/dde_private.h:
	user32: Constify a variable.

2007-11-10  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/listbox.c:
	user32: Conformance tests for DlgDirList and DlgDirSelectEx.

2007-11-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/dialog.c:
	user32: DlgDirList converts path specification to uppercase.

2007-11-14  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c:
	ole32: Intialise some out parameters in ProxyCliSec_QueryBlanket.

2007-11-14  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/tests/mimeole.c:
	inetcomm: Add a test for MimeBody.

	* dlls/inetcomm/inetcomm_main.c:
	inetcomm: Add a class factory for MimeBody.

	* dlls/inetcomm/inetcomm_private.h, dlls/inetcomm/mimeole.c:
	inetcomm: Add a stub MimeBody implementation.

	* dlls/inetcomm/regsvr.c:
	inetcomm: Register a couple more classes.

2007-11-14  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Do not show "Apply" button - it is not used anyway.

2007-11-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix a number of problems with InternetGetCookie.
	This version incorporates Lei Zhang's changes to the test, with his consent.

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix a number of problems with InternetSetCookie.

2007-11-14  Rob Shearman <rob@codeweavers.com>

	* dlls/msxml3/xmldoc.c:
	msxml3: Don't leak node in xmldoc_createElement in the wrong type was specified.

	* dlls/msxml3/tests/xmldoc.c:
	msxml3: Fix some memory leaks of name in test_xmldoc.

2007-11-10  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/listbox.c:
	user32: Conformance tests for LB_DIR on listboxes.

	* dlls/user32/dialog.c:
	user32: DlgDirSelect tacks on a period on filenames without ext.

	* dlls/user32/dialog.c:
	user32: LB_DIR with standalone DDL_DRIVES implies DDL_EXCLUSIVE.

	* dlls/user32/listbox.c:
	user32: Fix returned value of LB_DIR.

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

	* dlls/comctl32/imagelist.c:
	comctl32: Fixed handling of monochrome icons in image lists.

2007-11-13  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Fix error checking.

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

	* dlls/wined3d/directx.c:
	wined3d: Fix ATI video memory detection typo.

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

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/texture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Non power of two texture fixes.

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

	* dlls/wined3d/state.c:
	wined3d: Apply matrices when switching from transformed vertices to shaders.

2007-11-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Read the framebuffer size from the surface, not the window.

	* dlls/d3d9/device.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Depth stencil fixes.

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

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c:
	wined3d: Partially revert "Get rid of the conditionals in shader_glsl".

	* dlls/wined3d/glsl_shader.c:
	wined3d: Get rid of a few Nvidiaisms in glsl shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Hardcode local constants into the shader if possible.

2007-11-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/dde_client.c:
	user32: Constify a variable.

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

	* dlls/comctl32/listview.c:
	comctl32: Fix a typo in a debug message.

2007-11-13  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Fix a signed/unsigned warning.

	* dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h, include/rpcdcep.h:
	rpcrt4: Add some missing prototypes and better match the PSDK types.

	* dlls/advpack/tests/install.c:
	advpack: Skip some tests if not in interactive mode because they pop up dialogs.

	* dlls/user32/tests/msg.c:
	user32/tests/msg: Don't mess up lParam as it is passed on to DefWindowProcA().

2007-11-13  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Fix a copy and paste mistake in declaring threaddata_cs_debug.
	Reported by Hans Leidekker.

	* dlls/ole32/tests/moniker.c:
	ole32: Release the correct pointer in test_MkParseDisplayName.
	Reported by Dan Kegel.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Validate the parameters to DataCache_Cache.

2007-11-13  Jonathan Ernst <jonathan@ernstfamily.ch>

	* tools/wine.desktop:
	wine.desktop: Updated French translation.

	* dlls/avifil32/avifile_Fr.rc:
	avifil32: Updated French translation.

	* programs/xcopy/Fr.rc, programs/xcopy/rsrc.rc:
	xcopy: Updated French translation.

	* programs/net/Fr.rc, programs/net/rsrc.rc:
	net: Updated French translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Fr.rc:
	localui: Updated French translation.

	* dlls/credui/credui.rc, dlls/credui/credui_Fr.rc:
	credui: Updated French translation.

	* programs/regedit/Fr.rc:
	regedit: Updated French translation.

	* programs/cmd/Fr.rc:
	cmd: Updated French translation.

	* dlls/shell32/shell32_Fr.rc:
	shell32: Updated French translation.

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

	* server/queue.c:
	server: Make timer id allocation algorithm conform to the Windows one.

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

	* programs/winedbg/tgt_active.c:
	winedbg: Print a backtrace in --auto mode.

	* dlls/shell32/shelllink.c:
	shell32: Don't wait for the command to terminate in ShellLink_InvokeCommand.

	* dlls/shell32/shelllink.c, dlls/shell32/shlexec.c:
	shell32: Pass some of the ShellExecute flags through InvokeCommand.

	* include/shellapi.h:
	include: Added definition for SEE_MASK_NOASYNC.

2007-11-11  EA Durbin <ead1234@hotmail.com>

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub for GetConsoleKeyboardLayoutNameW.

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub implementation of GetConsoleKeyboardLayoutNameA.

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub implementation of GetConsoleInputExeNameW.

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub implementation of GetConsoleInputExeNameA.

2007-11-11  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Enable test for bad argument / fix memory leak.

	* dlls/msxml3/domdoc.c:
	msxml3: Return E_INVALIDARG on bad parameter.

2007-11-13  Francois Gouget <fgouget@free.fr>

	* dlls/ctapi32/ctapi32.c:
	ctapi32: Use quotes to include our headers. Fixes winapi_check warnings.

	* dlls/setupapi/stubs.c, include/cfgmgr32.h:
	cfgmgr32: Flesh out cfgmgr32.h a bit more and fix the corresponding functions.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add an API documentation stub to make winapi_check happy.

	* include/d3dx8math.h:
	d3dx8: Make d3dx8math.h C++ compatible.

	* dlls/acledit/main.c, include/Makefile.in, include/wfext.h:
	acledit: Add wfext.h.

	* dlls/ntoskrnl.exe/ntoskrnl.c:
	ntoskrnl: Remove trailing spaces in Wine traces.

	* dlls/wined3d/vertexshader.c:
	wined3d: Add trailing '\n's to two shader_addline() calls.

2007-11-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: Fix the condition for checking a drive.

	* dlls/msi/appsearch.c:
	msi: Set the file to NULL when running the directory search.

	* dlls/msi/dialog.c:
	msi: Implement the VolumeSelectCombo control.

	* dlls/msi/tests/install.c:
	msi: Test the Uninstall registry entries.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Delete the uninstall key when the product is removed.

2007-11-12  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixAffine Transformation.

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

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement RpcCancelThread for the ncacn_ip_tcp protocol sequence.

2007-11-12  Lei Zhang <thestig@google.com>

	* dlls/shell32/shellpath.c:
	shell32: Don't crash if $HOME is not set.

	* dlls/shell32/shell32_En.rc, dlls/shell32/shellpath.c:
	shell32: rename My Video to My Videos.

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

	* dlls/ole32/tests/marshal.c:
	ole32: Wait forever on the ready_event in the local server tests.

	* dlls/ole32/rpc.c:
	ole32: Use asynchronous I/O for the named pipe server for local servers.

	* dlls/ole32/usrmarshal.c:
	ole32: Fix the condition in HMETAFILEPICT_UserFree to match that in
	METAFILEPICT_UserMarshal.
	Actually free the memory.

	* dlls/ole32/tests/hglobalstream.c:
	ole32: Fix a memory leak in the HGLOBAL stream tests by telling
	CreateStreamOnHGlobal to free the memory it allocates, as we don't free it
	ourselves in this test.

	* dlls/ole32/compobj.c:
	ole32: Release the stream in COM_RevokeRegisteredClassObject.

	* dlls/ole32/hglobalstream.c:
	ole32: Fail before constructing an object in CreateStreamOnHGlobal to avoid
	a memory leak.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/thread.c, include/winbase.h:
	kernel32: Implement GetThreadId.

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

	* dlls/hlink/hlink_main.c, dlls/hlink/tests/hlink.c:
	hlink: Added HlinkGetSpecialReference implementation.

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fixed SHPackDispParamsV spec declaration.

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

	* dlls/dsound/tests/propset.c:
	dsound/tests: Better check to see if class is not available.

	* dlls/dsound/tests/ds3d8.c:
	dsound/tests: Fix test failures on WinXP.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Load GL_EXT_texture3D from gl 1.2 if the extension is not there.

	* dlls/wined3d/directx.c:
	wined3d: Mark extensions supported which are included in the gl core.

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

	* dlls/wined3d/directx.c:
	wined3d: Load GL functions from core if needed.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Extend the gl extension function loading table with ext info.

	* dlls/wined3d/directx.c:
	wined3d: Load extension functions after finding the supported extensions.

	* include/wine/wined3d_gl.h:
	wined3d: Align the gl function table.

2007-11-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/opengl32/make_opengl, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Add wglCopyContext support.

2007-11-09  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/exception.c:
	ntdll: Better trap exception handling.

	* dlls/ntdll/signal_i386.c:
	ntdll: Don't try to handle kill(SIGTRAP).

2007-11-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Prevent unneeded context switches.

2007-11-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Flush GL calls after drawing to the drawable. This fixes apps that
	use multiple GL contexts.

2007-11-09  Dan Kegel <dank@kegel.com>

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Implement return value for DdeClientTransaction for XTYP_EXECUTE.

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

	* dlls/user32/class.c, dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/hook.c, dlls/user32/input.c, dlls/user32/menu.c,
	  dlls/user32/message.c, dlls/user32/scroll.c:
	user32: Remove a few traces that only duplicate the relay information.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fixed asm proxys to support more than 128 methods.
	Reported by Martin Kochanski.

2007-11-12  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Cope with buggy apps passing setsockopt optval as a value instead of
	a pointer.

2007-11-12  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/clusapi/clusapi.c:
	clusapi: Corrected value in GetNodeClusterState.

2007-11-11  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXVec3Unproject.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3XMatrixVec3Project.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3XMatrixMultiplyTranspose.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3XMatrixInverse.

2007-11-11  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Check pad bytes for consistency when decrypting.

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

	* dlls/shell32/undocshell.h, include/shlobj.h:
	shell32: Some undocumented defines and functions are now in the PSDK.

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

	* dlls/kernel32/tests/volume.c:
	kernel32: Loosen requirements on what QueryDosDevice returns.

2007-11-10  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/mixer.c:
	dsound: Return primary_done when no mixing needs to be done instead of 0.

2007-11-11  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/dsound.c:
	dsound: Reassign pointers back to null when destroying structure.

2007-11-11  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix buffer overrun in tests/registry.c:wine_debugstr_wn().

2007-11-11  Rob Shearman <rob@codeweavers.com>

	* dlls/ntdll/tests/file.c:
	ntdll: Initialise the part of the buffer to be written to a file in the
	file test.

	* server/winstation.c:
	server: In set_user_object_info len is in bytes, not WCHARs.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Handle non-byref safe arrays in VARIANT_UserFree.

	* dlls/ole32/oleproxy.c:
	ole32: Disconnect the IRemUnknown stub buffer before destroying it to release
	the reference on the IRemUnknown object.

	* dlls/shell32/shelllink.c:
	shell32: Fix a memory leak in Stream_WriteLocationInfo.

	* dlls/shell32/pidl.c:
	shell32: Fix the length calculation of the pidl in ILSaveToStream by using
	the helper function ILGetSize.

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

	* dlls/urlmon/binding.c:
	urlmon: Fix PROTOCOLDATA message passing in IInternetProtocolSink interface
	of Binding.

	* dlls/urlmon/http.c:
	urlmon: Release IInternetProtocolSink and BindInfo on request handle closure,
	not on first handle closure.

2007-11-10  Tony Wasserka <tony.wasserka@freenet.de>

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXCOLOR structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXPLANE structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXQUATERNION structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXMATRIX structure.

2007-11-09  Tony Wasserka <tony.wasserka@freenet.de>

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXVECTOR4 structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXVECTOR3 structure.

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement the C++ stuff of the D3DXVECTOR2 structure.

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

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Get rid of unused variables.

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

	* dlls/shlwapi/ordinal.c:
	shlwapi: Reimplement IUnknown_CPContainerInvokeParam on top of SHPackDispParams.

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi: Added SHPackDispParams test.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Added SHPackDispParams implementation.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Added SHPackDispParamsV implementation.

	* include/hlink.idl:
	hlink.idl: Added Hlink[Get|Set]SpecialReference declaration.

	* dlls/mshtml/olewnd.c:
	mshtml: Remove nsIWebBrowserFocus_Activate useless call.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsevents.c:
	mshtml: Reset focus after loading the page in edit mode.

2007-11-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/msiserver.idl, dlls/msi/package.c, dlls/msi/preview.c,
	  dlls/msi/suminfo.c:
	msi: Return a remote interface to the database in a custom action.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Create the _Tables table when creating a database.

	* dlls/msi/tests/db.c:
	msi: Test the default tables added by MsiOpenDatabase.

2007-11-10  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Free the memory associated with the open DLL list on unloading of ole32.

	* dlls/ole32/datacache.c:
	ole32: Initialise data_cf in DataCacheEntry's to zero to indicate no data
	present on creation.

	* dlls/ole32/tests/ole2.c:
	ole32: Fix a leak of a moniker object in test_default_handler.

	* dlls/ole32/datacache.c:
	ole32: Fix a memory leak in DataCacheEntry_Save.

	* dlls/ole32/moniker.c:
	ole32: Fix a memory leak of moniker in RunningObjectTableImpl_Register.

	* dlls/ole32/filemoniker.c:
	ole32: Fix a leak of the IBindCtx object in FileMonikerImpl_IsEqual.

	* dlls/ole32/moniker.c:
	ole32: Fix a memory leak in get_moniker_comparison_data.

	* dlls/ole32/moniker.c:
	ole32: Store the InterfaceList object in the IEnumMoniker object.
	This is because the IEnumMoniker object is supposed to free the memory
	passed to it, but the array of InterfaceData pointers is inside the
	InterfaceList memory block.

	* dlls/ole32/tests/moniker.c:
	ole32: Add a missing IMoniker_Release to test_MkParseDisplayName.

	* dlls/ole32/itemmoniker.c:
	ole32: Fix memory leak in ItemMonikerImpl_Save.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a missing IStream_Release to test_same_apartment_unmarshal_failure.

	* dlls/ole32/tests/compobj.c:
	ole32: Add a missing IStream_Release to
	test_CoMarshalInterThreadInterfaceInStream.

2007-11-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/comm16.c:
	user32: Constify some variables.

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

	* dlls/wininet/tests/http.c:
	wininet: Fix two handle leaks in the test.

	* dlls/snmpapi/tests/util.c:
	snmpapi: Make a test pass on Vista.

	* dlls/pdh/tests/pdh.c:
	pdh: Make two tests pass on Vista.

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

	* dlls/dsound/tests/capture.c:
	dsound/tests: Fix tests after addition of 24/32 bits buffer tests.

2007-11-09  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/sound3d.c:
	dsound: Make AngleBetweenVectorsRad when vectors have no magnitude.

	* dlls/dsound/sound3d.c:
	dsound: Implement AngleBetweenVectorsDeg as a call to AngleBetweenVectorsRad.

2007-11-09  Paul Millar <paul@astro.gla.ac.uk>

	* libs/wine/config.c:
	libwine: Fix naked getuid() to allow compilation under MinGW.

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

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

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

	* dlls/user32/tests/dde.c:
	user32/tests: Fix access to an uninitialized variable.

2007-11-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c:
	user32: Simplify some code.

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

	* dlls/winex11.drv/dib.c:
	winex11: Add C alternatives to the assembly bits in X11DRV_DIB_SetImageBits_8().

	* dlls/advapi32/security.c, dlls/kernel32/tests/loader.c,
	  dlls/shell32/dialogs.c, dlls/wined3d/glsl_shader.c,
	  tools/widl/widl.man.in:
	Assorted spelling fixes.

	* dlls/user32/tests/dde.c:
	user32/tests: Skip some tests when DdeClientTransaction() returns NULL. This
	avoids some crashes on Win9x.

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Dynamically load GdiAlphaBlend() so the test runs on Win9x.

	* dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c:
	d3dx8: Fix compilation on systems that don't support nameless unions.

2007-11-09  Lei Zhang <thestig@google.com>

	* dlls/sane.ds/ui.c:
	sane.ds: Fix a memory leak.

	* dlls/sane.ds/ui.c:
	sane.ds: Check return value from sane_get_option_descriptor().

	* dlls/sane.ds/ui.c:
	sane.ds: Check return value from sane_control_option().

	* dlls/sane.ds/ui.c:
	sane.ds: Get number of options only once.

2007-11-08  EA Durbin <ead1234@hotmail.com>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Add stub Implementation of IoAllocateMdl.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Add stub Implementation of IoAllocateWorkItem.

2007-11-09  Lei Zhang <thestig@google.com>

	* dlls/wininet/tests/internet.c:
	wininet: Skip strcmp() in a test if the returned value/len is wrong.

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

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Added IDM_SETDIRTY implementation.

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

	* dlls/wined3d/pixelshader.c:
	wined3d: Actually store the PS's vertex processing flag.

2007-11-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Make sure the p8 shader is set to 0 after destroying the main render
	target.
	This fixes a render target recreation problem in Age of Empires II.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c:
	wined3d: Make sure SFLAG_LOCKED is set at the start of LockRect as various
	functions called from LockRect depend on it (e.g. LoadTexture if called from
	LoadLocation).

2007-11-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/browseui/progressdlg.c:
	browseui: Print 64bit integers with wine_dbgstr_longlong.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Release the window after the visual tests.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c:
	wined3d: Reinstall the projected texture disabling for generated coords.

	* dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c:
	wined3d: Load GLSL sampler uniforms at shader link time.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store integer uniform locations.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store the special uniforms' locations in the linked program.

	* dlls/wined3d/directx.c:
	wined3d: Hide NP2 textures support on R500 and earlier cards.

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

	* dlls/wined3d/directx.c:
	wined3d: Fix for MacOS'es incomplete glsl uniform truth.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Implement a detection for the MacOS OpenGL implementation.

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

	* dlls/dsound/tests/ds3d.c:
	dsound/tests: Fix test failures on WinXP and 2003.

2007-11-08  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/wincrypt.h:
	include: Add missing defines for RC5, SHA and AES in wincrypt.h.

2007-11-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/user32/button.c, dlls/user32/combo.c:
	user32: Constify some variables.

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

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix some more memory leaks.

	* dlls/usp10/tests/usp10.c:
	usp10: Fix a test to not rely on uninitialized memory.

	* dlls/usp10/tests/usp10.c:
	usp10: Fully initialize LOGFONT structure.

	* dlls/usp10/tests/usp10.c:
	usp10: Fix a memory leak.

2007-11-08  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/cookie.c:
	wininet: Initialize length of values that aren't being requested.

	* dlls/crypt32/decode.c:
	crypt32: If a decoding function failed, free the memory allocated for it.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix another leak in tests.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix a couple leaks in test.

2007-11-07  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c:
	dsound: Use a 2 stage mixing/normalization for sound.

	* dlls/dsound/dsound_convert.c, dlls/dsound/dsound_private.h:
	dsound: Add mixing and normalization functions.

	* dlls/dsound/Makefile.in, dlls/dsound/dsound_convert.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Add support for 24/32 bits input sound buffers.

2007-11-07  EA Durbin <ead1234@hotmail.com>

	* dlls/d3dxof/d3dxof.c:
	d3dxof: Fix some return values.

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

	* dlls/ntdll/signal_i386.c:
	ntdll: Increase the signal stack size to avoid crashes on nested signals.

	* server/queue.c:
	server: Don't drop mouse messages that should go to a different thread input.
	Instead requeue them into the proper destination queue. Reported by
	Ulrich Czekalla.

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

	* dlls/mlang/mlang.c:
	mlang: Fix buffer size calculation.

	* dlls/mlang/mlang.c:
	mlang: Free SCRIPTINFO structure embedded in EnumScript object.

	* dlls/mlang/tests/mlang.c:
	mlang: Release EnumRfc1766 object.

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

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c,
	  dlls/wldap32/control.c, dlls/wldap32/delete.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c, dlls/wldap32/extended.c, dlls/wldap32/init.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/page.c, dlls/wldap32/parse.c,
	  dlls/wldap32/rename.c, dlls/wldap32/search.c, dlls/wldap32/value.c,
	  dlls/wldap32/winldap_private.h:
	wldap32: Always return WLDAP32 error values instead of redefining the ldap.h
	ones.

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

	* configure, configure.ac, dlls/wldap32/parse.c,
	  dlls/wldap32/winldap_private.h, include/config.h.in:
	wldap32: Fix build against latest OpenLDAP release.

2007-11-03  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Fix test failure in test_WM_PASTE.
	Native riched20 won't obey simple WM_CHAR or WM_KEYDOWN/WM_KEYUP
	messages when processing Ctrl-Key keystrokes. Use keybd_event()
	instead.

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

	* libs/wine/config.c:
	libwine: Refuse to use a WINEPREFIX dir owned by a different user.

2007-11-07  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/http.c:
	wininet: Don't use HEAP_ZERO_MEMORY on memory that's fully initialized.

	* dlls/wininet/http.c:
	wininet: Fix another typo.

	* dlls/wininet/http.c:
	wininet: Fix typo.

2007-11-07  Lei Zhang <thestig@google.com>

	* dlls/wininet/ftp.c:
	wininet: Initialize ftp sockets.

2007-11-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/urlmon/format.c, dlls/urlmon/http.c, dlls/urlmon/umon.c:
	urlmon: Constify some variables.

	* dlls/twain_32/twain32_main.c:
	twain_32: Constify a variable.

2007-11-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Pass surface dirtification to the container.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Be less picky in the D3DFMT_X8L8V8U8 test.

2007-11-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Get rid of the conditionals in shader_glsl_compare.

2007-11-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Take care for client storage and pbos.

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Honor the driver's min point size.

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

	* dlls/wined3d/glsl_shader.c:
	wined3d: Avoid NOP additions.

	* dlls/wined3d/directx.c, dlls/wined3d/vertexshader.c:
	wined3d: Replace the position fixup mul-add-add with a MAD.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/glsl_shader.c:
	wined3d: mov to a0.x does a floor(), not a round to nearest.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Get rid of the conditionals in the glsl lit implementation.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Relative addressing offsets are limited to [-64; 63] in arb.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Remove the conditional from texdepth.

2007-11-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix the varying number comparison.

2007-11-07  Juan Lang <juan.lang@gmail.com>

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/cfgmgr32.spec,
	  dlls/cfgmgr32/main.c:
	cfgmgr32: Forward cfgmgr32 functions to setupapi.

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add stubs for CM_Get_Device_IDA and CM_Get_Device_ID_Size.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Fail decoding a CRL entry if the serial number is empty.

	* dlls/crypt32/tests/protectdata.c:
	crypt32: Fix a leak.

	* dlls/crypt32/protectdata.c:
	crypt32: Use 3DES to encrypt data.

	* dlls/crypt32/protectdata.c:
	crypt32: Set correct bit lengths for algorithms.

	* dlls/crypt32/protectdata.c:
	crypt32: Pass key length to CryptDeriveKey.

	* dlls/crypt32/protectdata.c:
	crypt32: Use the enhanced provider rather than the default (base) provider.

	* dlls/crypt32/protectdata.c:
	crypt32: Use SHA1 rather than MD5 to protect data.

	* dlls/crypt32/protectdata.c:
	crypt32: Save alg IDs in CryptProtectData output.

	* dlls/crypt32/protectdata.c:
	crypt32: Describe CryptProtectData data format more accurately.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix a comment.

2007-11-07  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/listbox.c:
	user32: Fix for failing tests of LB_GETTEXT on listbox on Win98.

	* dlls/user32/tests/listbox.c:
	user32: Fix LB_ITEMFROMPOINT tests for listbox control.

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

	* tools/winebuild/import.c:
	winebuild: Add a few nops to stub entry points to make Safedisc happy.

	* dlls/user32/nonclient.c:
	user32: Removed unused NC_DrawGrayButton function.

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/dde_private.h,
	  dlls/user32/user_private.h, include/win.h:
	user32: Make all internal user32 functions and variables hidden.

	* dlls/gdi32/enhmfdrv/enhmetafiledrv.h, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/mfdrv/metafiledrv.h:
	gdi32: Make all internal gdi functions hidden.

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

	* dlls/winspool.drv/info.c:
	winspool: Use unsigned type to avoid a compiler warning.

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

	* tools/wine.inf:
	wine.inf: Add APPDATA and LOCALAPPDATA environment variables.

2007-11-06  Dan Kegel <dank@kegel.com>

	* dlls/msvcrt/tests/heap.c:
	msvcrt: Fix two buglets in heap test.

2007-11-07  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/xmlelem.c:
	msxml3: Fix memory leak.

2007-11-06  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use LocalFree to free memory return by Crypt(Un)ProtectData.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to read key pairs from registry.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to delete a key container's registry key.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to open a key container's registry key.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to create a container's registry key.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Use helper function to persist keys.

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

	* include/winnt.h:
	include: Mark imported functions with hidden visibility.

	* include/wine/unicode.h:
	include: Only use DECLSPEC_IMPORT for Windows compilers in unicode.h.

	* include/winnt.h, include/winternl.h:
	include: Add NTSYSAPI to the exported ntdll functions.

	* include/winbase.h, include/wincon.h, include/winnls.h:
	include: Add WINBASEAPI to the exported kernel32 functions.

	* include/aclapi.h, include/wincred.h, include/wincrypt.h,
	  include/winreg.h, include/winsvc.h:
	include: Add WINADVAPI to the exported advapi32 functions.

	* include/wingdi.h:
	include: Add WINGDIAPI to the exported gdi32 functions.

	* include/dde.h, include/ddeml.h, include/winuser.h:
	include: Add WINUSERAPI to the exported user32 functions.

2007-11-06  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Correct a test where the tested function was not called.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Free the backbuffer array.

	* dlls/d3d9/tests/visual.c:
	d3d9: Initialize the test rectangle correctly.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement the varying map.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Install a varying map.

2007-10-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/texture.c:
	d3d9: Remove some spamy debug traces from the texture test.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Fix a test for Vista.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Be less picky about float precision.

2007-10-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Use HAL devices in some tests.

2007-10-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/volume.c:
	wined3d: Refuse to create volumes and volume textures if not supported.

	* dlls/wined3d/device.c:
	wined3d: Set the display mode before creating the context.

	* dlls/wined3d/device.c:
	wined3d: Set the main hwnd before setting up the screen.

2007-11-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/snmpapi/main.c:
	snmpapi: Constify a variable.

2007-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	wined3d: Shader Model 3.0 varying tests.

2007-11-06  EA Durbin <ead1234@hotmail.com>

	* dlls/wininet/internet.c:
	wininet: Return true for case INTERNET_OPTION_SECURITY_FLAGS.

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

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add stubs for RpcMgmtSetCancelTimeout and RpcCancelThread.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add a stub for RpcErrorStartEnumeration.

2007-11-05  Huw Davies <huw@codeweavers.com>

	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/mimeole.c,
	  dlls/inetcomm/tests/mimeole.c:
	inetcomm: Add a stub implementation of the MimeSecurity object.

2007-11-05  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/dsound_test.h:
	dsound: Add conformance tests for 24/32 bits buffers and waveformatextensible.

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c, dlls/dsound/dsound_main.c:
	dsound: Add support for WAVEFORMATEXTENSIBLE format.

	* include/ksmedia.h:
	include: Add a few speaker defines to ksmedia.h.

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

	* dlls/kernel32/kernel32.spec:
	kernel32: Add spec entries for LocaleNameToLCID and LCIDToLocaleName.

	* include/winbase.h, include/winuser.h:
	include: Moved AttachThreadInput prototype to winuser.h where it belongs.

2007-11-05  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/sync.c, server/event.c, server/handle.c,
	  server/handle.h, server/mapping.c, server/mutex.c,
	  server/semaphore.c:
	server: Don't do access checks on the security descriptors of newly created
	objects.

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

	* dlls/comctl32/tests/progress.c:
	comctl32/tests: Flush pending events before progress repaint tests.

	* dlls/cryptnet/cryptnet_main.c, dlls/hnetcfg/hnetcfg.c,
	  dlls/winhttp/main.c, dlls/wintrust/register.c:
	Include objbase.h where need to get the DllRegisterServer prototype.

	* dlls/advapi32/security.c, dlls/credui/credui_main.c,
	  dlls/msi/msi_main.c, dlls/rsaenh/mpi.c, dlls/rsaenh/tomcrypt.h:
	Make some variables static.

2007-11-05  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/En.rc, programs/net/Makefile.in, programs/net/net.c,
	  programs/net/resources.h:
	net.exe: Lists existing NetUse connections.

2007-11-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test that the install state is dependent on the feature and component
	registration.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Process the ADDSOURCE property when setting feature states.

	* dlls/msi/tests/package.c:
	msi: Test the install states of removed features.

	* dlls/msi/create.c:
	msi: Add a missing struct initialization.

2007-11-05  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Add a test for CloseFigure.

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

	* dlls/user32/winproc.c:
	user32: Fixed A<->W translations of CREATESTRUCTs that contain atoms.

2007-11-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Make sure the format of the render target is P8 too.

2007-11-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/wined3d_private.h:
	wined3d: Rewrite the draw buffer selection code.
	Before it was done in findContext, before selecting the new context
	which is bad (it doesn't always work). The new code works and this
	change also fixes some draw buffer regressions that happened during
	the surface rewrite from the last couple of days.

2007-10-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Handle ps 3.0 varyings in a different way.

2007-10-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add a max varyings member to the gl info structure.

2007-10-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pixel Shader varying indexing.

2007-10-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Make pixel shader input an array.

2007-10-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Only glBindAttribLocation used attributes.

2007-11-05  Juan Lang <juan.lang@gmail.com>

	* dlls/wsock32/socket.c:
	wsock32: Check return value rather than returned size for error.

	* dlls/setupapi/query.c:
	setupapi: Don't convert strings past NULL-terminator.

	* dlls/setupapi/query.c:
	setupapi: Downgrade an ERR to a WARN.

	* dlls/setupapi/query.c:
	setupapi: Correct a return value.

	* dlls/setupapi/devinst.c:
	setupapi: Fix a leak.

2007-11-05  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Don't rely on type_memsize to return 0 for all conformant arrays.

2007-11-06  Kovács András <andras@csevego.net>

	* dlls/dwmapi/dwmapi.spec, dlls/dwmapi/dwmapi_main.c:
	dwmapi: Add DwmEnableComposition stub.

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

	* dlls/winspool.drv/info.c:
	winspool: Error check in add_printer_driver() was to strict.
	Reported by Dan Sawyer.

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

	* dlls/shell32/trash.c, dlls/shell32/xdg.c:
	shell32: Constify some variables.

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

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added AcceptLanguage handling.

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

	* dlls/mshtml/navigate.c:
	mshtml: Call Exec(CGID_ShellDocView, 84) in start_binding.

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

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: More range tests and fixes.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Store HTMLDocument pointer in BSCallback object.

2007-11-05  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixOrthoOffCenterLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixOrthoOffCenterRH.

	* dlls/d3dx8/tests/math.c:
	d3dx8: Uniformize the matrix format in the tests.

2007-11-05  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_GETMODIFY should not report modification after WM_SETTEXT (fixes
	todo_wine).

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

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/inetcomm/tests/Makefile.in, dlls/inetcomm/tests/mimeole.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	inetcomm: Add a test for MimeOleCreateVirtualStream.

2007-11-05  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/tests/loader.c:
	kernel32: Fix the image size in a test to avoid a BSOD on Windows XP SP1.

	* dlls/winex11.drv/settings.c:
	winex11: Fix compilation on systems that don't support either nameless unions
	or nameless structs.

	* dlls/user32/sysparams.c:
	user32: Fix compilation on systems that don't support either nameless unions
	or nameless structs.

2007-11-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle FC_IGNORE in the base type functions.

	* include/midles.h:
	include: Fix a typo in midles.h.

2007-11-03  Nigel Liang <ncliang@gmail.com>

	* dlls/wininet/http.c:
	wininet: Release object in HttpSendRequestExW before return on error.

2007-11-03  Alistair Leslie-Hughes <leslie_alistair@hotmail.com>

	* dlls/msxml3/xmlelem.c:
	msxml: Fix a memory leak.

2007-11-03  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec:
	d3dx8: Fix the number and the type of variables in d3dx8.spec.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOrthoLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOrthoRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOffCenterLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveOffCenterRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveFovLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveFovRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixPerspectiveRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixLookAtLH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixLookAtRH.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationYawPitchRoll.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationQuaternion.

2007-11-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shell32_main.h, dlls/shell32/shlview.c,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Constify some variables.

2007-11-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/msipriv.h:
	msi: Implement the CCPSearch standard action.

	* dlls/msi/string.c:
	msi: Explicitly check the returned value against -1 as the variable is unsigned.

	* dlls/msi/table.c:
	msi: Don't update a table entry when applying a transform if the string value
	is the same.

	* dlls/msi/action.c:
	msi: Fix the location used to write the user's environment variables.

	* dlls/msi/tests/automation.c:
	msi: Remove an unused parameter.

	* dlls/msi/tests/msi.c:
	msi: Use a magic constant to silence signedness comparison warnings.

	* dlls/msi/tests/msi.c:
	msi: MsiQueryProductState returns INSTALLSTATE, not UINT.

	* dlls/msi/tests/msi.c:
	msi: MsiQueryFeatureState and MsiUseFeatureEx return INSTALLSTATE, not UINT.

	* dlls/msi/tests/db.c:
	msi: MsiViewGetError returns MSIDBERROR, not UINT.

	* dlls/msi/alter.c:
	msi: Remove an unused parameter.

	* dlls/msi/action.c:
	msi: Remove an unused parameter.

	* dlls/msi/action.c:
	msi: Fix the sign of an index variable.

	* dlls/msi/action.c:
	msi: Remove a legacy error check.

	* dlls/msi/msiquery.c, dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Test and implement the MSIMODIFY_DELETE command.

	* dlls/msi/tests/install.c:
	msi: Initialize a handle in case MsiGetSummaryInformation fails.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Fix the location used to read machine context source list info.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: szUserSid must be NULL if context is MSIINSTALLCONTEXT_MACHINE.

	* dlls/msi/source.c, dlls/msi/tests/install.c, dlls/msi/tests/source.c:
	msi: Handle the MSIINSTALLCONTEXT_USERMANAGED context.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Reimplement MsiSourceListAddSourceEx to handle reordering the source list.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: The options must include a source type.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: An empty source is an invalid parameter.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Append a slash to network and url sources.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Validate the product code.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return the error from OpenSourceKey.

	* dlls/msi/tests/source.c:
	msi: Add tests for MsiSourceListAddSourceEx.

	* dlls/msi/source.c:
	msi: Don't create the product source key when adding a source.

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Implement MsiSourceListAddSourceExA.

	* dlls/msi/tests/package.c:
	msi: do_query is supposed to fail, so don't release a handle that is never
	initialized.

2007-11-04  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Fix detection of CFE_LINK on WinXP-SP2.

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

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Add stub for DIPROP_AUTOCENTER property.

2007-11-04  Juan Lang <juan.lang@gmail.com>

	* dlls/wsock32/socket.c:
	wsock32: Don't use HEAP_ZERO_MEMORY for memory that's fully initialized anyway.

	* dlls/wsock32/socket.c:
	wsock32: Correctly handle the case where a table size is 0 in
	IP_MIB_TABLE_ENTRY_ID.
	Spotted by Gerald Pfeifer.

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

	* dlls/shdocvw/factory.c:
	shdocvw: Fixed typos.
	Found by Detlef Riekenberg.

	* dlls/urlmon/http.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added https protocol class factory stub implementation.

2007-11-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Update Norwegian Bokmål translation.

2007-11-04  Dan Kegel <dank@kegel.com>

	* dlls/cabinet/fci.c:
	cabinet: FCICreate: Initialize oldCCAB.

2007-11-03  Dan Kegel <dank@kegel.com>

	* dlls/cabinet/fci.c, dlls/cabinet/tests/fdi.c:
	cabinet: FCIAddFile: Set defaults in case callback doesn't set some fields.

2007-11-02  Juan Lang <juan.lang@gmail.com>

	* dlls/comdlg32/cdlg_En.rc:
	comdlg32: Grammar fixes.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Implement OFN_CREATEPROMPT checking.

	* dlls/crypt32/store.c:
	crypt32: Don't define function pointers that are NULL (and unused).

	* dlls/crypt32/store.c:
	crypt32: Don't store a redundant copy of data in the message store.

	* dlls/crypt32/sip.c:
	crypt32: Initialize a variable.

2007-11-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: UnlockRect regression fix.

2007-11-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Only use p8 conversion on render targets.

	* dlls/wined3d/surface.c:
	wined3d: Fix LockedRect regression.

	* dlls/wined3d/directx.c:
	wined3d: Fix glsl detection bug.

2007-11-03  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Map SO_REUSEADDR.
	BSD socket SO_REUSEADDR is not a complete match, but features like
	"allow binding to a port immediately after closing it" seem to be compatible.

	* dlls/netapi32/access.c:
	netapi32: Fix valgrind warnings.
	For now, those pointers are always null, anyway.

2007-11-02  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Don't output a void conformance for NdrClearOutParameters.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/header.h, tools/widl/typegen.c:
	widl: Handle pointers to conformant arrays (e.g., "[size_is(, n)] int **p; ").

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialize allocated pointers to NULL in PointerUnmarshall.
	This patch initializes allocated pointers in PointerUnmarshall since later
	code checks the value for NULL (specifically, NdrConformantArrayUnmarshall).

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Initialize memory in the get_name test.
	This initializes the memory for an [in] parameter.

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

	* dlls/ddraw/tests/dsurface.c:
	wined3d: Don't test D3DDEVICE surfaces in dsurface tests.

2007-11-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/vertexdeclaration.c:
	d3d8: Initialize the vertex decl when allocating it.

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

	* dlls/wined3d/surface.c:
	wined3d: Move texture->sysmem specific code into its special function.

	* dlls/wined3d/surface.c:
	wined3d: Move drawable->sysmem specific code to its special function.

	* dlls/wined3d/surface.c:
	wined3d: Move sysmem->drawable specific blit code out of LoadLocation.

	* dlls/wined3d/surface.c:
	wined3d: Remove a wrong return.

	* dlls/wined3d/surface.c:
	wined3d: Remove an unneeded check.

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

	* dlls/mshtml/install.c, dlls/shdocvw/factory.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw.inf, tools/wine.inf:
	iexplore: Added self-registration code.

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

	* include/Makefile.in, include/midles.h:
	include: Add a new header file: midles.h.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Factorise out the argument processing from NdrStubCall2 into two
	functions.

	* dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/ndr_stubless.h:
	rpcrt4: Move some type definitions from ndr_stubless.c to ndr_stubless.h.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add a small bit of documentation as to what NdrStubCall2 does.

	* include/sspi.h, include/wincred.h:
	include: Take care to not declare CtxtHandle and PCtxtHandle more than once
	when including both sspi.h and wincred.h.

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

	* dlls/mshtml/nsio.c:
	mshtml: AsyncOpen code clean up.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: More test fixes.

2007-11-02  Juan Lang <juan.lang@gmail.com>

	* dlls/url/url.spec, dlls/url/url_main.c:
	url: Fix prototype of FileProtocolHandlerA.

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

	* include/mimeole.idl:
	include: Add a couple more interfaces.

	* dlls/inetcomm/mimeole.c, include/mimeole.idl:
	inetcomm: Add two missing member functions.

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

	* dlls/inetcomm/mimeole.c, dlls/inetcomm/regsvr.c:
	inetcomm: Add a stub implementation of the IMimeMessage object returned from
	MimeOleCreateMessage.

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

	* dlls/inetcomm/inetcomm.spec, dlls/inetcomm/mimeole.c:
	inetcomm: Add a stub for MimeOleCreateVirtualStream.

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

	* dlls/inetcomm/mimeole.c:
	inetcomm: Include mimeole.h and fix the type of MimeOleCreateMessage.

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

	* include/mimeole.idl:
	include: Add a few defines and fill out IMimeMessageCallback.

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

	* .gitignore, include/Makefile.in, include/mimeole.idl:
	include: Add mimeole.idl.

	* dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm.spec,
	  dlls/inetcomm/mimeole.c:
	inetcomm: Add stubs for MimeOleSetCompatMode and MimeOleCreateMessage.

	* dlls/inetcomm/inetcomm_main.c:
	inetcomm: Call InternetTransport_RegisterClass and UnregisterClass on process
	attach and detach respectively, to register a window class and initialize
	Winsock.

	* dlls/inetcomm/internettransport.c:
	inetcomm: Use InternetTransport_ChangeStatus in InternetTransport_DropConnection
	so that the callback gets called.

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

	* dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm_main.c,
	  dlls/inetcomm/regsvr.c:
	inetcomm: Add self-registration code.
	Based on a patch by Rob Shearman.

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

	* dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm_private.h,
	  dlls/inetcomm/internettransport.c:
	inetcomm: Add a framework for connecting to a server and sending/receiving
	data asynchronously with callbacks being called in the context of the original
	thread, using window messages.

	* .gitignore, include/Makefile.in, include/imnact.idl,
	  include/imnxport.idl:
	include: Add imnact.idl and imnxport.idl.

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

	* dlls/user32/win.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c, server/window.c:
	server: Allow to specify the class name instead of the atom to find a window.

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/win.c,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  server/window.c:
	server: Allow to specify the class name instead of the atom to create a window.

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

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/inetcomm/Makefile.in, dlls/inetcomm/inetcomm.spec,
	  dlls/inetcomm/inetcomm_main.c:
	inetcomm: Add stub implementation of inetcomm.dll.

2007-11-02  Christian Eggers <christian@p2400.wgnetz.xx>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ctapi32/Makefile.in, dlls/ctapi32/ctapi.h,
	  dlls/ctapi32/ctapi32.c, dlls/ctapi32/ctapi32.spec:
	ctapi32: Added wrapper dll for ctapi (CardTerminal API).

2007-11-01  Rok Mandeljc <manrok@email.si>

	* dlls/wnaspi32/winaspi32.c:
	wnaspi32: Fix controller number validation.

	* dlls/wnaspi32/aspi.c:
	wnaspi32: Fix Controller -> H/C mapping.

	* dlls/wnaspi32/winaspi32.c:
	wnaspi32: Do the command dumping only after device has been verified.

	* dlls/wnaspi32/winaspi32.c:
	wnaspi32: Call ASPI_GetNumControllers() only once.

2007-11-01  Rok Mandeljc <rok.mandeljc@email.si>

	* dlls/wnaspi32/aspi.c:
	wnaspi32: Degrade ERR of not finding registry entry for a device to TRACE.

	* dlls/wnaspi32/aspi.c:
	wnaspi32: Print error when device cannot be opened.

2007-11-01  Lei Zhang <thestig@google.com>

	* dlls/comctl32/rebar.c:
	comctl32: Fix typo in rebar.

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

	* dlls/ntdll/tape.c:
	ntdll: Fix calculation of tape position offsets.
	Reported by Gerald Pfeifer.

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

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Make tests run on win98 again.

2007-11-01  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/str.c:
	crypt32: Use consistent error checking.

	* dlls/crypt32/str.c:
	crypt32: Free memory on all paths.

	* dlls/crypt32/str.c:
	crypt32: Set last error on alloc failure.

2007-11-01  Lei Zhang <thestig@google.com>

	* dlls/comctl32/status.c:
	comctl32: Fix uninitialized, unused variables.

	* dlls/comctl32/datetime.c:
	comctl32: Datetime should close its monthcal when the monthcal loses focus.

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

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add a test for the pointers in [in,out] pointer structs not changing
	when the pointers aren't NULL.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Make the setupapi tests load on systems < Vista by providing a
	private implementation of RegDeleteTreeW.

2007-11-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/dinput/mouse.c:
	dinput: Fix type of loop variable in alloc_device().

	* dlls/shell32/recyclebin.c:
	shell32: Avoid checking for <0 for unsigned variables.

	* dlls/user32/tests/dde.c:
	user32: Don't check unsigned types for >= 0.

	* dlls/wined3d/cubetexture.c:
	wined3d: Fix type of loop variable in IWineD3DCubeTextureImpl_Destroy().

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

	* dlls/setupapi/install.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupInstallServicesFromInfSectionW.

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

	* dlls/winex11.drv/settings.c:
	winex11.drv: Initialize buffer size.

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

	* dlls/user32/tests/dde.c:
	user32/tests: Don't test the contents of uninitialized buffers.

2007-11-01  Marcel Partap <mpartap@gmx.net>

	* include/Makefile.in, include/ddk/winddiui.h:
	include: Add winddiui.h header.

2007-11-01  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shlfileop.c:
	shell32: Constify some variables.

2007-11-01  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/shell32/recyclebin.c:
	shell32: Use SHStrDupW in IShellFolder2::GetDetailsOf to allocate returned
	string.

2007-11-01  Chris Robinson <chris.kcat@gmail.com>

	* dlls/mshtml/install.c:
	mshtml: Fix hkey leak.

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

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/factory.c, dlls/shdocvw/regsvr.c,
	  dlls/shdocvw/shdocvw.inf, dlls/shdocvw/shdocvw.rc:
	shdocvw: Move registration code to .inf file.

	* dlls/msimtf/msimtf.inf:
	msimtf: Fixed typos.

2007-11-01  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix a leaked key.

	* dlls/crypt32/encode.c:
	crypt32: Don't leak buffer when a unicode string contains an invalid character.

	* dlls/crypt32/tests/encode.c:
	crypt32: Initialize a variable.

	* dlls/crypt32/cert.c:
	crypt32: Use memmove rather than memcpy when addresses might overlap.

	* dlls/crypt32/chain.c:
	crypt32: Fix a leak building an alternate chain.

	* dlls/crypt32/rootstore.c:
	crypt32: Fix leaked chains creating the root store.

	* dlls/crypt32/chain.c:
	crypt32: Fix a leak during chain creation.

	* dlls/crypt32/cert.c:
	crypt32: Set size when calling CryptDecodeObjectEx without
	CRYPT_DECODE_ALLOC_FLAG set.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of an unneeded variable.

	* dlls/crypt32/tests/chain.c:
	crypt32: Fix another leak in the tests.

	* dlls/crypt32/tests/cert.c:
	crypt32: Fix a leak in the tests.

2007-11-01  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32: Make parameters of expect_band_content() match the corresponding
	types of REBARBANDINFO and fix one format string.

	* dlls/shell32/tests/shelllink.c:
	shell32: Remove useless comparison >= 0 for unsigned variables.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32: Use -0.0 directly in test_VarBstrFromR4().

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

	* dlls/ole32/compobj_private.h:
	ole32: Remove an incorrect comment.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoGetObjectContext.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for CoGetObjectContext.

	* dlls/ole32/tests/marshal.c:
	ole32: Improve the error reporting in the marshal test when CreateProcess fails.

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

	* dlls/user32/class.c:
	user32: Cache the window class name on the client side.

	* dlls/user32/class.c:
	user32: Properly handle integer atoms specified as strings in class names.

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

	* dlls/user32/class.c, include/wine/server_protocol.h, server/class.c,
	  server/protocol.def, server/trace.c:
	server: Support using a name to destroy a window class too.

	* dlls/user32/class.c, include/wine/server_protocol.h, server/class.c,
	  server/protocol.def, server/trace.c:
	server: Allow to send a name instead of an atom when creating a window class.

	* dlls/user32/button.c, dlls/user32/class.c, dlls/user32/combo.c,
	  dlls/user32/controls.h, dlls/user32/desktop.c, dlls/user32/dialog.c,
	  dlls/user32/edit.c, dlls/user32/icontitle.c, dlls/user32/listbox.c,
	  dlls/user32/mdi.c, dlls/user32/menu.c, dlls/user32/scroll.c,
	  dlls/user32/static.c:
	user32: Store the builtin class names in Unicode.

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

	* dlls/mshtml/install.c:
	mshtml: Set IE version when installing wine gecko.

2007-10-31  Rob Shearman <rob@codeweavers.com>

	* server/handle.c:
	server: Make sure to always initialise req_sd.owner_len and req_sd.group_len
	in the handler for the get_security_object call.

2007-11-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/tests/install.c:
	msi: A feature's requested action does not depend on its installed state.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Only unpublish the features if the entire product is being uninstalled.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Properly register features.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Properly register and unregister components.

	* dlls/msi/action.c:
	msi: Remove a duplicated function.

	* dlls/msi/action.c, dlls/msi/tests/install.c, include/msidefs.h:
	msi: Implement the MoveFiles standard action.

	* dlls/msi/tests/install.c:
	msi: Test the MoveFiles standard action.

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

	* dlls/kernel32/kernel32.spec, dlls/kernel32/process.c:
	kernel32: Implement GetProcessHandleCount.

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

	* dlls/version/info.c:
	version: Use GetModuleHandleEx to increment the module ref count.

	* dlls/winex11.drv/settings.c:
	winex11.drv: Add support for saving/reading display settings.

	* dlls/user32/sysparams.c, dlls/winex11.drv/settings.c:
	user32: Initialize more fields in the DEVMODE structure.

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/init.c,
	  dlls/wineps.drv/ps.c, dlls/winspool.drv/info.c, include/wingdi.h,
	  programs/cmdlgtst/cmdlgtst.c:
	include: Synchronize DEVMODE layout with PSDK.

2007-11-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/vertexbuffer.c:
	d3d9: Silence a FIXME.

2007-10-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make resource memory 32 byte aligned.

	* dlls/wined3d/device.c, dlls/wined3d/resource.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_base.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Disconnect allocatedMemory and Heap allocation.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Allocate memory for default pool resources too.

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

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move a part of LockRect to the base class.

2007-11-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Reenable render target unlocking via textures.

	* dlls/wined3d/surface.c:
	wined3d: Move memory allocation into a separate function.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move texture -> drawable blits to LoadLocation.

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

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Implement and test FtpCommand{A, W}.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Correct several ftp server response to error code mappings.

2007-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Set the WM_STATE_ABOVE hint on topmost windows.

	* dlls/user32/winpos.c, server/window.c:
	server: Added support for HWND_TOPMOST and HWND_NOTOPMOST.

	* server/window.c:
	server: Fix get_next/prev_window behavior for unlinked windows.

	* dlls/user32/win.c:
	user32: SetParent should not make the window topmost.

	* dlls/user32/tests/win.c, dlls/user32/win.c:
	user32: Don't allow changing the WS_EX_TOPMOST style with SetWindowLong.

	* dlls/winex11.drv/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	server: Also return the new extended style in the set_window_pos request.

2007-10-30  Dan Kegel <dank@kegel.com>

	* dlls/ntdll/sec.c:
	ntdll: NtAccessCheck: Only send used bytes to server.

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

	* programs/winemine/Ko.rc:
	winemine: Update Korean resource.

	* dlls/user32/resources/user32_Ko.rc:
	user32: Updated Korean resource.

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

2007-10-29  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Allow for Win98 behavior for return value of EM_REPLACESEL.

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

	* dlls/pdh/tests/pdh.c:
	pdh: Remove or fix tests that fail on Windows.

2007-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cpp.c:
	msvcrt: Silence FIXME about an unknown parameter that isn't used.

2007-10-30  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/hal/Makefile.in, dlls/hal/hal.c, dlls/hal/hal.spec:
	hal: Added stubs for KfAquireSpinLock, KfReleaseSpinLock, KfLowerIrql,
	KfRaiseIrql.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Added a stub for FindVolumeMountPointClose.

2007-10-31  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/shdocvw/persist.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Add IPersistMemory interface stub.

2007-10-30  Chris Wulff <crwulff@rochester.rr.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Implement OLEIVERB_HIDE.

2007-10-30  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widl.man.in:
	widl: Add a --local-stubs option.

2007-10-30  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shell.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	shell32: Constify some variables.

2007-10-30  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/d3dx8/d3dx8.spec:
	d3dx8: Fix number of parameter of functions D3DXVec4Cross and D3DXVec?CatmullRom.

2007-10-30  Tim Schwartz <tim@sanityinternet.com>

	* dlls/netapi32/netapi32.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetUseEnum().

2007-10-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/pdh/pdh_main.c:
	pdh: Fix two missing LeaveCriticalSection() on error paths.

2007-10-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winealsa.drv/dsoutput.c:
	winalsa.drv: Explicitly include assert.h.

2007-10-30  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationAxis.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationZ.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationY.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixRotationX.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixTranslation.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixScaling.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixTranspose.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixMultiply.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXMatrixfDeterminant.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Fix the condition in D3DXMatrixIsIdentity.

2007-10-30  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/cred.c:
	advapi32: Implement filter matching for CredEnumerate.

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/cred.c:
	advapi32: Add tests for credential management functions.

	* dlls/advapi32/advapi.c, dlls/advapi32/advapi32.spec,
	  dlls/advapi32/cred.c:
	advapi32: Implement ANSI credential management functions.

	* dlls/advapi32/advapi.c, dlls/advapi32/cred.c:
	advapi32: Implement CredEnumerateW.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/cred.c:
	advapi32: Implement CredDeleteW.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/cred.c:
	advapi32: Implement CredReadW and CredFree.

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi32.spec,
	  dlls/advapi32/cred.c, dlls/advapi32/crypt.h:
	advapi32: Implement CredWriteW.

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server_protocol.h, server/trace.c:
	server: Add the generated files missing from the last commit.

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

	* dlls/credui/credui_Ko.rc:
	credui: Updated Korean resource.

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

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Don't release the parent object in FTP_Connect, the caller will do that.

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

	* dlls/ntdll/file.c, server/file.c, server/protocol.def:
	server: Pass the security descriptor into create_file, if one is specified,
	and set the initial mode for the file appropriately.

	* dlls/ntdll/sync.c, dlls/ntdll/virtual.c, server/event.c,
	  server/mapping.c, server/mutex.c, server/protocol.def,
	  server/security.h, server/semaphore.c, server/token.c,
	  server/trace.c:
	server: Add the name length to the object_attributes structure so that other
	variable length data can be present after object_attributes.

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/win.c:
	user32: Fix a slightly incorrect assert.

2007-10-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/user32/class.c, dlls/user32/controls.h, dlls/user32/tests/class.c,
	  dlls/user32/win.c, dlls/user32/winproc.c:
	user32: Better fix how to handle GetWindowLongPtr[AW](..., GWLP_WNDPROC)
	for builtin winprocs.

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/pdh/pdh_main.c:
	pdh: Fix a couple of race conditions in the thread handling.

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

	* dlls/itss/tests/protocol.c:
	itss: Fixed tests on old IE.

2007-10-29  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Fix undefined memory references in registry.c.

2007-10-29  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tab.c, dlls/comctl32/tests/tab.c:
	comctl32: Set tab focus correctly.

	* dlls/comctl32/tests/tab.c:
	comctl32: Add tab delete item / get focus test.

	* dlls/comctl32/tests/tab.c:
	comctl32: Add tab insert item / get focus test.

	* dlls/comctl32/tests/tab.c:
	comctl32: Move tab test's createParentWindow() into START_TEST().

2007-10-30  Alexandre Julliard <julliard@winehq.org>

	* server/device.c:
	server: Remove failed ioctls from the queue as soon as the result is set.

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

	* dlls/wininet/tests/ftp.c:
	wininet: Use a single connection for all ftp tests.

2007-10-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Constify some variables.

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

	* dlls/ntdll/thread.c:
	ntdll: Report FIXME only once.

2007-10-28  Klaus Layer <klaus.layer@gmx.de>

	* dlls/ntdll/nt.c:
	ntdll: Add missing FIXMEs for incomplete info classes in
	NtQuerySystemInformation.

2007-10-28  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix broken detection of non-empty string.

	* dlls/comctl32/toolbar.c:
	comctl32: Pass command id of button in wParam.

2007-10-27  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Vec4Cross.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DXTransformNormal.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*TransformCoord.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Transform.

2007-10-26  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c:
	d3dx8: Test the function D3DXVec3Cross really.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*CatmullRom.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Hermite.

	* dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*BaryCentric.

	* dlls/d3dx8/Makefile.in, dlls/d3dx8/d3dx8.spec, dlls/d3dx8/math.c,
	  dlls/d3dx8/tests/Makefile.in, dlls/d3dx8/tests/math.c,
	  include/d3dx8math.h:
	d3dx8: Implement D3DX*Normalize.

2007-10-28  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advpack/tests/files.c:
	advpack/tests: Print the unexpected result in function check_ini_contents.

2007-10-26  Vincent Hardy <vincent.hardy.be@gmail.com>

	* dlls/oleaut32/typelib16.c:
	oleaut32: Add TypeLib version for W2K, WXP, and Vista.

2007-10-28  Tom Brus <tombrus@gmail.com>

	* dlls/ntdll/serial.c:
	ntdll: Serial/COM code misinterpreted XON/XOFF direction.

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

	* dlls/dbghelp/module.c:
	dbghelp: Fix detection of ELF libs by their name.

2007-10-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/mscat32/mscat32.spec:
	mscat32: Forward calls to wintrust where possible.

2007-10-28  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mscat32/Makefile.in, dlls/mscat32/main.c,
	  dlls/mscat32/mscat32.spec:
	mscat32: Add stub dll.

2007-10-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/variant.c:
	oleaut32: Properly initialize the result variant in VarImp.

2007-10-27  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/credui/credui_main.c:
	credui: Fix memory leak (found by Smatch).

	* dlls/mshtml/protocol.c:
	mshtml: Fix memory leak (found by Smatch).

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

	* dlls/shdocvw/navigate.c:
	shdocvw: Print the unsupported args in a FIXME.

	* dlls/acledit/acledit.spec, dlls/acledit/main.c:
	acledit: Add a stub for FMExtensionProcW.

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

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Always send a content length header, even if there is no content.

2007-10-28  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/shlwapi/tests/url.c:
	shlwapi/tests: Remove overly aggressive const declaration for TEST_URL_UNESCAPE.

2007-10-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c:
	wined3d: Default to GLSL. This is safe because we now have proper ps2.0/vs2.0
	detection.

2007-10-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Detect vertex shader 2.0 support using a pixel shader 2.0 limit.
	Without this vertex shader 3.0 is reported on non-Nvidia cards that
	only support vertex shader 2.0. Reporting 3.0 would result in slow
	software rendering as it is much more advanced than 2.0.

	* dlls/wined3d/directx.c:
	wined3d: Fix the amount of texture memory in the debug traces.

	* dlls/wined3d/directx.c:
	wined3d: Print the correct pixel/vertex shader version in a debug trace.

	* dlls/wined3d/directx.c:
	wined3d: Add proper PS2.0 detection for older cards with GLSL support.

	* dlls/wined3d/directx.c:
	wined3d: Use native shader limits instead of the maximum the driver can handle
	in software.
	This should prevent software fallbacks and and second it will allow for
	ps2.0/ps3.0 detection.

2007-10-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/tests/editor.c:
	riched20: Fix test crash on WinXP-SP2.

2007-10-28  Paul Millar <paul@astro.gla.ac.uk>

	* tools/widl/write_msft.c:
	widl: Add support for overriding recorded time, allowing binary-identical
	compilation.

2007-10-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/winealsa.drv/alsa.c, dlls/winealsa.drv/midi.c,
	  dlls/winealsa.drv/mixer.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveinit.c, dlls/winealsa.drv/waveout.c:
	winealsa.drv: Avoid the alsa alloca macros that cause compiler warnings.

2007-10-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_fs.c:
	shell32: Constify some variables.

2007-10-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix a typo in the previous patch. Spotted by Francois Gouget.

2007-10-28  Francois Gouget <fgouget@free.fr>

	* include/d3dx8math.inl:
	d3dx8: Make sure d3dx8math.inl compiles fine, whether nameless unions are
	supported or not.

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

	* include/tapi.h:
	tapi32: Add prototypes for lineInitializeExA/W().

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix the DeleteMenuWrap() forward.

	* dlls/crypt32/cert.c, include/wincrypt.h, tools/winapi/win32.api:
	crypt32: Better match the PSDK types and update win32.api to fix the winapi_check
	warnings.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Fix compilation on systems that don't support nameless structs.

	* programs/winetest/Makefile.in, programs/winetest/main.c:
	winetest: Add an option that shuts Windows down once the tests have completed.

	* programs/wineboot/shutdown.c:
	wineboot: Add a reminder that EWX_FORCEIFHUNG is not implemented.

2007-10-28  Francois Gouget <fgouget@codeweavers.com>

	* programs/wineboot/wineboot_En.rc, programs/wineboot/wineboot_Ko.rc,
	  programs/wineboot/wineboot_Sv.rc:
	wineboot: Make sure 'Cancel' has the focus and is the default button in the
	'Do you want to kill all your applications' dialog.

2007-10-28  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/dialogs.c:
	shell32: Pass the shutdown reason to ExitWindowsEx().

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

	* dlls/wined3d/surface.c:
	wined3d: Honor pbos when downloading a compressed texture.

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

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move texture loading to LoadLocation.

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

	* dlls/wined3d/surface.c:
	wined3d: Move sysmem->drawable copying to LoadLocation.

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

	* dlls/wined3d/surface.c:
	wined3d: Add a comment explaining what LoadLocation does.

	* dlls/wined3d/surface.c:
	wined3d: Move drawable->sysmem reading to UpdateLocation.

2007-10-26  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Fix ExprEvalRoutines output.

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

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Always close the data connection before receiving a server response.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Always return an error when a transfer is in progress.

	* dlls/snmpapi/main.c:
	snmpapi: Fix memory allocation in SnmpUtilVarBindListCpy.

2007-10-26  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/tests/string.c:
	msvcrt/tests: Loosen the mbctype test to pass under Windows 9x and NT 4.0.

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

	* dlls/kernel32/comm.c:
	kernel32: Fix description for SetDefaultCommConfig.

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

	* dlls/urlmon/tests/url.c:
	urlmon: Add tests for BindToObject for URL monikers based on the existing
	tests for BindToStorage.

2007-10-26  Aric Stewart <aric@codeweavers.com>

	* dlls/msdmo/dmoreg.c:
	msdmo: Fix to DMOEnum to properly enumerate the keys and properly respect
	the flag.

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

	* include/winbase.h:
	include/winbase: Fix a typo.

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

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

----------------------------------------------------------------
2007-10-26  Marcus Meissner <meissner@suse.de>

	* AUTHORS:
	Updated AUTHORS file.

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

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

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

	* dlls/wined3d/surface.c:
	wined3d: Move regular surface / texture downloading to LoadLocation.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  include/wine/wined3d_interface.h:
	wined3d: Add a method for surface location updates.

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

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Begin centralizing surface location management.

2007-10-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: A point size fix.

2007-10-26  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/advapi32/advapi32.spec:
	advapi32: Export RegOverridePredefKey.

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

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Initial tests for PrintDlgExW.

	* dlls/comdlg32/printdlg.c:
	comdlg32: Improve stub for PrintDlgEx.

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

	* dlls/ntdll/loader.c:
	ntdll: Dump the base address when a module is loaded.

2007-10-25  Jeremy Newman <jnewman@codeweavers.com>

	* dlls/credui/banner.bmp:
	credui: Add a Wine-themed banner for the credentials dialog.

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

	* dlls/credui/Makefile.in, dlls/credui/banner.bmp, dlls/credui/credui.rc,
	  dlls/credui/credui_De.rc, dlls/credui/credui_En.rc,
	  dlls/credui/credui_Ko.rc, dlls/credui/credui_No.rc,
	  dlls/credui/credui_Pl.rc, dlls/credui/credui_Sv.rc,
	  dlls/credui/credui_main.c, dlls/credui/credui_resources.h:
	credui: Add a banner and message box to the dialog presented by
	CredUIPromptForCredentials.

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

	* dlls/itss/tests/protocol.c:
	itss: Fixed test crash on IE7.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: More IE7 test fixes.

	* dlls/urlmon/binding.c:
	urlmon: Use QueryInterface in get_callback.

2007-10-25  Dan Kegel <dank@kegel.com>

	* dlls/winmm/tests/mixer.c:
	winmm: Avoid testing linecontrols if can't get line info.

2007-10-26  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/msvcrt/tests/string.c:
	msvcrt/tests: Fix memory leak (found by Smatch).

2007-10-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/istream.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/shlwapi.spec, dlls/shlwapi/thread.c:
	shlwapi: Update exported API entries according to the info published by Geoff
	Chappell.

2007-10-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix a memory leak.

2007-10-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Use package_from_db instead of opening the package with MsiOpenPackage.

	* dlls/msi/tests/suminfo.c:
	msi: Output expected values on failing tests.

	* dlls/msi/tests/msi.c:
	msi: Define _WIN32_MSI to pull in new definitions.

	* dlls/user32/tests/msg.c:
	user32: Define WM_LBTRACKPOINT if it's not previously defined.

	* dlls/user32/tests/dde.c:
	user32: Fix a test that now passes in Windows.

	* dlls/advpack/tests/advpack.c:
	advpack: Restore the LProgramF string using the acquired Program Files string.

	* dlls/msi/tests/install.c:
	msi: Set the ROOTDRIVE property so the admin sequence won't choose its own.

	* dlls/msi/tests/install.c:
	msi: Add missing newline to the adm_custom_action table.

	* dlls/cabinet/tests/extract.c:
	cabinet: Fix two tests that return E_FAIL on win98.

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

	* dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c:
	urlmon: Fixed tests on IE7.

	* dlls/urlmon/tests/url.c:
	urlmon: Added emulated http tests.

2007-10-25  Aric Stewart <aric@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Set last error to ERROR_INSUFFICIENT_BUFFER in LCMapString when the
	sort key buffer is too small.

2007-10-25  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c, include/winnt.h:
	advapi32: Add a well known sid.

	* dlls/advapi32/tests/security.c:
	advapi32: Fix CreateWellKnownSid test on Windows XP.

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

	* tools/winebuild/build.h, tools/winebuild/parser.c,
	  tools/winebuild/spec32.c, tools/winebuild/winebuild.man.in:
	winebuild: Add a -ordinal flag for entry points that must be imported by
	ordinal but exported by name.

2007-10-25  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/chain.c:
	crypt32: Remove iTunes chain from certificate policy tests, there's no guarantee
	the root cert is trusted.

	* dlls/crypt32/tests/cert.c:
	crypt32: Remove a test because of a Windows 2003 SP1 bug.

	* dlls/setupapi/devinst.c:
	setupapi: Include enumerator string as part of device instance ID.

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

	* dlls/advapi32/tests/security.c, server/token.c:
	server: Ignore ACEs with the INHERIT_ONLY_ACE flag set during access checks.

	* dlls/advapi32/tests/security.c:
	advapi32: Fix the ACCESS_SYSTEM_SECURITY test by impersonating the token during
	the call to RtlAdjustPrivileges.

	* dlls/advapi32/tests/security.c:
	advapi32: Add a test for access checks with the INHERIT_ONLY_ACE flag.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	server: Make create_mapping use struct object_attributes and set the security
	descriptor of file mapping objects.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/mutex.c,
	  server/protocol.def, server/trace.c:
	server: Make create_mutex use struct object_attributes and set the security
	descriptor of mutex objects.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/semaphore.c, server/trace.c:
	server: Make create_semaphore use struct object_attributes and set the security
	descriptor of semaphore objects.

2007-10-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/xcopy/xcopy.c:
	xcopy: Fix some memory leaks.

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

	* dlls/browseui/rsrc.rc, dlls/browseui/rsrc_Ko.rc:
	browseui: New Korean resource.

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

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

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Updated Korean resource.

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

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

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

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

	* dlls/msacm32/msacm_Ko.rc:
	msacm32: Updated Korean resource.

	* dlls/wininet/wininet_Ko.rc:
	wininet: Updated Korean resource.

	* dlls/mpr/mpr_Ko.rc:
	mpr: Updated Korean resource.

	* dlls/comdlg32/cdlg_Ko.rc:
	comdlg32: Updated Korean resource.

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

	* dlls/comctl32/comctl_Ko.rc:
	comctl32: Updated Korean resource.

2007-10-25  Lei Zhang <thestig@google.com>

	* dlls/user32/dialog.c, dlls/user32/tests/dialog.c:
	user32: Do not send button click to dialog with disabled default button.

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

	* include/commdlg.h:
	include/commdlg: Add more defines for PrintDlg/PrintDlgEx.

2007-10-24  Dan Hipschman <dsh@linux.ucla.edu>

	* .gitignore, dlls/oleaut32/Makefile.in, dlls/oleaut32/oaidl_p.c,
	  dlls/oleaut32/oleaut32_oaidl.idl, dlls/oleaut32/usrmarshal.c:
	oleaut32: Use widl to generate oaidl_p.c.

	* tools/widl/typegen.c:
	widl: Fix a crash in compare_expr.

	* tools/widl/typegen.c:
	widl: Allow void pointers with iid_is attributes.

2007-10-24  Aric Stewart <aric@codeweavers.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Correct GetBestRoute when there is no route.

2007-10-24  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/protectdata.c:
	crypt32: Avoid misleading fixme when no data are passed to CryptUnprotectData.

	* dlls/setupapi/devinst.c:
	setupapi: Return FALSE if a NULL buffer is passed in.

	* dlls/advapi32/advapi.c, dlls/advapi32/advapi32.spec:
	advapi32: Add stubs for CredEnumerateA/W.

	* dlls/credui/credui_main.c:
	credui: Add proper parameter names to SSO stubs, and use symbolic return values.

2007-10-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Forward GetStringType3ExW to GetStringTypeW.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Forward SetDlgItemTextWrapW to user32.SetDlgItemTextW.

2007-10-24  Dan Kegel <dank@kegel.com>

	* tools/wine.inf:
	wine.inf: Add fake DLL for mshtml.dll.

2007-10-24  Aric Stewart <aric@codeweavers.com>

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: For platforms that do not implement /proc, return Unimplemented for
	the functions trying to read from there.

2007-10-24  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Initialize variable to avoid compiler warning.

2007-10-24  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/sync.c:
	kernel32: Add tests for creating events with different initial security
	descriptors.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/console.c,
	  server/event.c, server/named_pipe.c, server/object.h,
	  server/process.c, server/protocol.def, server/security.h,
	  server/token.c, server/trace.c:
	server: Use the security descriptor passed in when creating events.

	* dlls/advapi32/tests/security.c:
	advapi32: Print out the unknown value for sid use in the LookupAccountName test,
	instead of the known value.

	* dlls/comctl32/comboex.c:
	comctl32: Don't set the focus to the text box when the ComboBoxEx receives a
	CBN_SELENDCANCEL notification.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/credui/tests/Makefile.in, dlls/credui/tests/credui.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	credui: Add tests for CredUIPromptForCredentialsW and CredUIConfirmCredentialsW.

	* dlls/credui/Makefile.in:
	credui: Build the import library.

	* dlls/credui/credui_main.c:
	credui: Verify some of the parameters to CredUIPromptForCredentials, like
	native does.

	* dlls/credui/credui_main.c:
	credui: The pUIInfo parameter is optional to CredUIPromptForCredentials,
	so check before dereferencing it to get the parent window.

	* dlls/credui/credui_main.c:
	credui: Implement CredUIConfirmCredentialsW.

2007-10-23  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/winedbg/source.c:
	winedbg: Fix a memory leak.

	* programs/winhelp/hlpfile.c:
	winhelp: Fix a memory leak.

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

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

2007-10-24  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix unchecked NULL ptr in BIDI_Reorder.

2007-10-23  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneMatrixIsIdentity.

	* include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneMatrixIdentity.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorSubtract.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorAdd.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorScale.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorModulate.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorLerp.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneColorNegative.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneDotNormalize.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneDotCoord.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXPlaneDot.

2007-10-24  Bang Jun-young <junyoung@mogua.com>

	* include/shlwapi.h:
	shlwapi: SHRegDuplicateHKey() is now defined in the Windows SDK.

2007-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Forward more entries to user32 exports.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Use existing shlwapi/Win32 APIs to compare strings in Windows encoding.

	* dlls/ntdll/tests/rtlstr.c:
	ntdll: Use symbolic names when possible.

2007-10-23  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Add stubs for IPropertyBag_Read.

	* tools/widl/parser.y:
	widl: Use error_loc instead of yyerror.

	* tools/widl/parser.l, tools/widl/proxy.c, tools/widl/utils.c,
	  tools/widl/utils.h:
	widl: parser_error must append a newline, so write a new function, error_loc.

2007-10-23  Juan Lang <juan.lang@gmail.com>

	* dlls/credui/credui.spec, dlls/credui/credui_main.c:
	credui: Add stubs.

2007-10-23  Roy Shea <roy@cs.hmc.edu>

	* include/rpc.h:
	include/rpc.h: Add missing headers.

2007-10-03  Mikolaj Zalewski <mikolajz@google.com>

	* .gitignore, dlls/browseui/Makefile.in, dlls/browseui/browseui.h,
	  dlls/browseui/browseui_main.c, dlls/browseui/progressdlg.c,
	  dlls/browseui/regsvr.c, dlls/browseui/resids.h,
	  dlls/browseui/rsrc.rc, dlls/browseui/rsrc_En.rc:
	browseui: Implement the progress dialog.

	* include/shlguid.h, include/shlobj.h:
	include: Add IProgressDialog definitions.

2007-10-23  Dan Kegel <dank06@kegel.com>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Fix false pass in warn+heap case.

2007-10-23  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c:
	crypt32: Implement cert chain revocation checking.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement CertVerifyRevocation.

	* dlls/crypt32/tests/cert.c:
	crypt32: Add basic test for CertVerifyRevocation.

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

	* tools/wine.inf:
	wine.inf: Register cryptnet.dll.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Don't prefer native version.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement CertDllVerifyRevocation.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Get cache entry expire time from HTTP expires header.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Set timeout on http connections when a timeout is specified.

2007-10-23  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix runaway loop because of unsigned comparison in BIDI_Reorder.

2007-10-22  Alex Villacís Lasso <a_villacis@palosanto.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/riched32/tests/Makefile.in, dlls/riched32/tests/editor.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	riched32: Skeleton of richedit 1.0 test plus WM_SETTEXT test.

2007-10-23  Rob Shearman <rob@codeweavers.com>

	* include/winnt.h:
	include: Remove duplicate ACL_REVISION1 and ACL_REVISION2 defines in winnt.h.
	Move the remaining ACL_REVISION define nearer to the other ACL revision defines.

	* dlls/advapi32/security.c, dlls/ntdll/ntdll.spec, dlls/ntdll/sec.c,
	  include/winternl.h:
	ntdll: Add a stub for RtlSetControlSecurityDescriptor.
	Implement SetSecurityDescriptorControl on top of RtlSetControlSecurityDescriptor.

2007-10-23  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/comctl32/theming.c,
	  dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c,
	  dlls/crypt32/crypt32_private.h, dlls/dplayx/dplay.c,
	  dlls/dsound/mixer.c, dlls/gdi32/region.c, dlls/msi/appsearch.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/ole2.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/typelib.c,
	  dlls/opengl32/make_opengl, dlls/riched20/rtf.h,
	  dlls/usp10/tests/usp10.c, dlls/wined3d/device.c,
	  dlls/winedos/dosaspi.c, dlls/winejack.drv/audio.c,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/dib_convert.c,
	  dlls/winex11.drv/dib_dst_swap.c, dlls/winex11.drv/dib_src_swap.c,
	  dlls/winex11.drv/mouse.c, dlls/wininet/urlcache.c,
	  programs/explorer/systray.c, programs/taskmgr/applpage.c,
	  programs/taskmgr/graphctl.c, programs/winedbg/stack.c,
	  tools/winedump/README:
	Assorted spelling fixes.

	* dlls/advapi32/security.c, dlls/cryptnet/cryptnet_main.c,
	  include/winbase.h, tools/winapi/win32.api:
	Better match the PSDK types and update win32.api to fix the winapi_check
	warnings.

	* dlls/winex11.drv/dib.c:
	winex11: Remove some unneeded casts.

2007-10-23  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	ntdll: Fix RtlValidAcl to accept newer ACL revisions.

	* dlls/advapi32/tests/security.c:
	advapi32: Add some tests for ACL functions.

	* dlls/advapi32/tests/security.c:
	advapi32: Runtime link to CreateWellKnownSid in the tests for the function,
	since it isn't available on all platforms.

	* dlls/ntdll/sec.c:
	ntdll: Allow the newer ACL revisions in RtlCreateAce.

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

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/postscript MIME filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added audio/wav MIME filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added text/richtext MIME filter.

2007-10-23  Luke Bratch <l_bratch@yahoo.co.uk>

	* dlls/mshtml/view.c:
	mshtml: Fix text input fields.

2007-10-23  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Set media info strings to NULL after freeing them.

	* dlls/msi/tests/install.c:
	msi: Include the null terminator when writing data to the stream.

	* dlls/msi/alter.c:
	msi: Don't delete the table if the table deleted itself because of a release.

	* dlls/msi/action.c:
	msi: Release the record only after using the record's data.

2007-10-22  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winealsa.drv/mixer.c:
	winealsa.drv: Leave the CriticalSection before destroying it. Found by Smatch.

	* dlls/winealsa.drv/dscapture.c:
	winealsa.drv: Leave the CriticalSection before destroying it. Found by Smatch.

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

	* dlls/comdlg32/printdlg.c:
	comdlg32: Do not crash with PageSetupDlg(NULL).

2007-10-22  Juan Lang <juan.lang@gmail.com>

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement CryptRetrieveObjectByUrlW for the http protocol.

	* dlls/cryptnet/cryptnet_main.c, dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Return FALSE if the requested URL exists and the url array size
	is NULL.

	* dlls/cryptnet/Makefile.in, dlls/cryptnet/cryptnet_main.c,
	  dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Implement CryptRetrieveObjectByUrlW for the file: protocol.

	* dlls/cryptnet/cryptnet_main.c, dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Implement CryptRetrieveObjectByUrlA on top of
	CryptRetrieveObjectByUrlW.

	* dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Add tests for CryptRetrieveObjectByUrl.

	* dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Add stubs for CryptRetrieveObjectByUrlA/W.

	* dlls/wininet/http.c:
	wininet: Don't assume lpBuffersIn is not NULL.

	* dlls/wininet/urlcache.c:
	wininet: Pass hash entry directly to URLCache_DeleteEntryFromHash.

	* dlls/wininet/urlcache.c:
	wininet: Implement RetrieveUrlCacheEntryFileW.

	* dlls/wininet/urlcache.c:
	wininet: Implement UnlockUrlCacheEntryFileW.

	* dlls/wininet/urlcache.c:
	wininet: Pass hash entry directly to URLCache_HashEntrySetUse rather than
	searching for it again.

	* dlls/wininet/urlcache.c:
	wininet: Introduce a URLCache_FindHashW, and use it rather than
	URLCache_FindEntryInHashW.

	* dlls/wininet/urlcache.c:
	wininet: Use URLCache_FindHash rather than URLCache_FindEntryInHash.

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

	* dlls/gdi32/tests/font.c:
	gdi32: Remove a test that expects the break character to equal ascii space.

	* dlls/advapi32/tests/crypt_sha.c:
	advapi32: Remove tests for the sha context structure.

2007-10-21  Alex Busenius <the_unknown@gmx.net>

	* dlls/user32/edit.c:
	user32: Fix segfault when combobox contains a longer text than buffer_limit.

2007-10-18  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXQuaternionIsIdentity.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXQuaternionIdentity.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXQuaternionConjugate.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec3Cross.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Scale.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Minimize.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Maximize.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Lerp.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Subtract.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Add with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Dot with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*LengthSq.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.inl:
	d3dx8: Implement D3DX*Length with a test.

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

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Care for the inverted y coords in dsy.

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

	* dlls/wined3d/state.c:
	wined3d: Ignore texture transforms when a shader is used, not set.

	* dlls/wined3d/device.c:
	wined3d: Create query private data when faking the query.

2007-10-21  Alexander Dorofeyev <alexd14@hushmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix off by one error in BIDI_Reorder.

2007-10-20  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Fix memory leaks (found by Smatch) and fix a message.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fix memory leak (found by Smatch).

	* dlls/kernel32/tests/actctx.c, dlls/kernel32/tests/pipe.c:
	kernel32/tests: Fix memory leaks (found by Smatch).

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Fix memory leak (found by Smatch).

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Fix memory leak (found by Smatch).

2007-10-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Make CreateWellKnownSid create domain sids (with test).

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Add a test for CreateWellKnownSid and implement two more SIDs.

2007-10-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Define OBJECT_BASIC_INFORMATION in source file as it is not
	defined in Windows SDK winternl.h.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Make the SDDL test pass under Vista.

2007-10-21  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/hhctrl.ocx/version.rc:
	hhctrl.ocx: Update version info.

	* dlls/tapi32/line.c, dlls/tapi32/tapi32.spec, include/tapi.h:
	tapi32: Add stub for lineInitializeExA.

2007-10-21  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/urlmon.spec, dlls/urlmon/urlmon_main.c, include/urlmon.idl:
	urlmon: Add a stub for GetClassFileOrMime.

	* dlls/urlmon/http.c:
	urlmon: Fix the MIME type reported by the HTTP protocol when the Content-Type
	headers contains charset data too.

2007-10-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/str.c:
	crypt32: Always set *ppszError.

	* dlls/crypt32/str.c:
	crypt32: Don't allocate a 0-length string.

	* dlls/crypt32/encode.c:
	crypt32: Don't assume string pointer has been set if length is 0.

	* dlls/crypt32/str.c:
	crypt32: Fail if MultiByteToWideChar converts 0 characters.

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

	* dlls/wininet/tests/ftp.c:
	wininet: Use passive mode for the ftp tests.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Fix some failing ftp tests on Windows and Wine.

	* dlls/wininet/ftp.c:
	wininet: Properly clean up ftp sessions.

	* dlls/wininet/ftp.c:
	wininet: Separate ftp session destruction from closing connections.

2007-10-20  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/wineboot/wineboot.c:
	wineboot: Fix some memory leaks.

	* programs/taskmgr/perfdata.c:
	taskmgr: Fix a memory leak.

2007-10-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c,
	  dlls/riched20/tests/editor.c:
	riched20: 2.0 and higher inserts CRCRLF as space (with tests).

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

	* loader/wine.man.in:
	wine.man: Document OSS environment variables.

2007-10-20  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/widl.man.in:
	widl: Update the manpage.

2007-10-19  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix problems with variable-size user types.

2007-10-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Rebind the 2D texture corresponding to the p8 surface. In some programs
	this caused nothing to show up.

2007-10-20  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/ntdll_misc.h:
	ntdll: #include <sys/types.h> to get dev_t.

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

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Fixed spaces handling in range object.

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

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::expand("TextEdit") implementation.

2007-10-21  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/tests/dom.c:
	mshtml/tests: Move the 'const' after REFIID as REFIID is a macro that already
	starts with 'const'.

	* dlls/winex11.drv/window.c:
	winex11.drv: Fix two missing unlocks on error paths. Found by Smatch.

	* tools/wrc/parser.y:
	wrc: Remove redundant NULL check before free(). Found by Smatch.

	* libs/wpp/ppy.y:
	wpp: Remove redundant NULL check before free(). Found by Smatch.

2007-10-19  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/urlcache.c:
	wininet: Implement DeleteUrlCacheEntryW.

	* dlls/wininet/urlcache.c:
	wininet: Implement IsUrlCacheEntryExpiredW.

	* dlls/wininet/urlcache.c:
	wininet: Add a URLCache_FindEntryInHashW helper, and use it to simplify finding
	an entry in a hash with a wide-character URL string.

	* dlls/wininet/urlcache.c:
	wininet: Implement IsUrlCacheEntryExpiredA.

	* dlls/wininet/urlcache.c:
	wininet: Update comments to match function parameters.

2007-10-20  Rob Shearman <rob@codeweavers.com>

	* server/file.c:
	server: Fix file_set_sd to handle NULL DACLs.
	These mean that the file should have full permissions for everyone.

2007-10-20  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/setupapi/install.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupInstallServicesFromInfSectionA.

2007-10-20  Lionel Debroux <lionel_debroux@yahoo.fr>

	* server/registry.c:
	server: Remove redundant NULL checks before free (found by Smatch).

	* server/console.c:
	server: Remove redundant NULL checks before free (found by Smatch).

	* dlls/itss/chm_lib.c:
	itss: Remove redundant NULL check before free (found by Smatch).

	* dlls/comctl32/toolbar.c:
	comctl32: Remove redundant NULL check before free (found by Smatch).

	* dlls/comctl32/tab.c:
	comctl32: Remove redundant NULL check before free (found by Smatch).

2007-10-19  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msi/dialog.c:
	msi: Use BS_GROUPBOX for group boxes.

2007-10-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Reset the parent storage on overwritten streams so that operations on
	them now fail.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a test to show that operations on overwritten should no longer
	succeed.

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

	* dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/wps_xx.rc:
	wineps: Remove unused resource file.

	* dlls/shell32/shell32_xx.rc, dlls/shell32/shres.rc:
	shell32: Remove unused resource file.

	* dlls/spoolss/tests/spoolss.c:
	spoolss/test: Add a test for BuildOtherNamesFromMachineName.

2007-10-19  Ken Thomases <ken@codeweavers.com>

	* configure, configure.ac:
	configure: Use 0 instead of NULL because NULL isn't defined.

	* configure, configure.ac:
	configure: netinet/in_pcb.h and netinet/ip_var.h require netinet/in.h on Mac
	OS X.

	* configure, configure.ac:
	configure: Fixed a typo: code snippet outside AC_CHECK_HEADERS macro.

2007-10-19  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi32/bidi.c:
	gdi32: Add a set of braces to silence a GCC 3.4 warning.

2007-10-19  Juan Lang <juan.lang@gmail.com>

	* dlls/cryptnet/tests/cryptnet.c:
	cryptnet: Fix a leak.

	* dlls/crypt32/cert.c:
	crypt32: Initialize mask when allocating it.

	* dlls/crypt32/store.c:
	crypt32: Simplify I_CertUpdateStore.

	* dlls/crypt32/encode.c:
	crypt32: Replace a private type with a public one.

	* include/wincrypt.h:
	crypt32: Add more missing definitions.

	* dlls/crypt32/tests/cert.c:
	crypt32: Remove tests that cause memory corruption.

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

	* dlls/itss/protocol.c:
	itss: Fixed memory freeing.

2007-10-18  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winex11.drv/dib.c:
	winex11.drv: Remove the coloruse == -1 special case. Add
	X11DRV_DIB_GetColorCount() for computing a bitmap's number of colors.

2007-10-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/path.c:
	ntdll: Fixed off-by-one error in RtlGetFullPathName_U (spotted by Michael
	Builov).

2007-10-19  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Keep signer handle count separate from signer info.

2007-10-18  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/oid.c:
	crypt32: Free memory on an error path.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/main.c,
	  dlls/crypt32/rootstore.c:
	crypt32: Free root store when quitting.

	* dlls/crypt32/tests/msg.c:
	crypt32: Fix a couple leaked messages.

	* dlls/crypt32/msg.c:
	crypt32: Get rid of an unused key.

	* dlls/crypt32/msg.c:
	crypt32: Make sure a signed encode message's signer info is always initialized.

	* dlls/crypt32/chain.c:
	crypt32: Set lower quality chain count and pointer to 0 when freeing them.

	* dlls/crypt32/chain.c:
	crypt32: Don't keep a pointer to the lower quality chains when choosing a
	higher quality one, otherwise they'll get double-freed.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c:
	crypt32: Use GetSystemTimeAsFileTime rather than
	GetSystemTime/SystemTimeToFileTime.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/regstore.c,
	  dlls/crypt32/store.c:
	crypt32: Use I_CertUpdateStore in registry stores.

	* dlls/crypt32/regstore.c:
	crypt32: Pass reg store's key and memory store to CRYPT_RegReadFromReg, rather
	than passing a private type.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/filestore.c:
	crypt32: Use I_CertUpdateStore in file stores.

	* dlls/crypt32/main.c, dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Implement I_CertUpdateStore.

	* dlls/crypt32/tests/store.c:
	crypt32: Add tests for I_CertUpdateStore.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add I_CertUpdateStore stub.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add stubs for I_CryptFindLruEntry and I_CryptCreateLruEntry.

	* dlls/cryptnet/cryptnet_main.c:
	cryptnet: Partially implement CryptGetObjectUrl.

	* include/wincrypt.h:
	cryptnet: Add URL_OID_GET_OBJECT_URL_FUNC definition.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/cryptnet/Makefile.in, dlls/cryptnet/tests/Makefile.in,
	  dlls/cryptnet/tests/cryptnet.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	cryptnet: Add tests for CryptGetObjectUrl.

	* dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Add stub for CryptGetObjectUrl.

	* dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Add CertDllVerifyRevocation stub.

	* dlls/cryptnet/Makefile.in, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement DllRegisterServer/DllUnregisterServer.

2007-10-18  Allan Tong <actong88@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix comment typos in SetMultithreaded.

	* dlls/wined3d/device.c:
	wined3d: Fix resource cleanup if CreateCubeTexture fails.

2007-10-18  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: FindExSearchLimitToDirectories has no effect on FindFirstFileEx.

2007-10-16  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Don't use default:XX to open up a hardware control.

2007-10-18  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Single-line control must refuse to insert carriage returns (with
	tests).

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

	* dlls/msi/tests/install.c:
	msi/tests: Do not leak a HKEY when RegQueryValueEx failed.

2007-10-18  Francois Gouget <fgouget@free.fr>

	* include/dimm.idl:
	dimm.idl: Don't import unknwn.idl if DO_NO_IMPORTS is defined.

	* include/mshtml.idl:
	mshtml: Add a missing import directive to mshtml.idl.

	* include/imm.h:
	imm32: #ifdef-out some functions in imm.h if wingdi.h was not included first.

	* include/ndrtypes.h:
	ndrtypes.h: Include limits.h.

	* tools/fnt2fon.c:
	tools/fnt2fon: Remove error() as it is almost unused. Transform errno into a
	meaningful string for the error message.

2007-10-18  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/mpr/wnet.c:
	mpr: Delete a stub trace.

2007-10-18  Aric Stewart <aric@codeweavers.com>

	* dlls/ws2_32/protocol.c:
	ws2_32: Return proper WSAENOBUFS error when enuming protocols.

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

	* tools/wine.inf:
	wine.inf: Self-register msimtf.dll.

	* dlls/mshtml/install.c:
	mshtml: Added support for installing Gecko from build dir.

	* dlls/mshtml/selection.c, dlls/mshtml/tests/dom.c:
	mshtml: Set selection to default on IHTMLSelectionObject::createRange if there
	is no range selected.

2007-10-18  Francois Gouget <fgouget@free.fr>

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/readres.c, tools/wrc/utils.c,
	  tools/wrc/wrc.c, tools/wrc/writeres.c:
	wrc: Modify the error, warning and tracing functions to behave like all the
	other Wine tracing methods, that is to not append a '\n' to the message.

	* tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/write.c:
	wmc: Modify the error and warning functions to behave like all the other Wine
	tracing methods, that is to not append a '\n' to the message.

	* tools/winegcc/utils.c, tools/winegcc/winegcc.c:
	winegcc: Modify error() to behave like all the other Wine tracing methods,
	that is to not append a '\n' to the message.

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/proxy.c,
	  tools/widl/utils.c:
	widl: Modify generic_msg() to behave like all the other Wine tracing methods,
	that is to not append a '\n' to the message.

	* tools/widl/typegen.c:
	widl: Add the trailing '\n' to an error message.

	* tools/widl/utils.c, tools/widl/utils.h:
	widl: Remove internal_error() as it is unused.

2007-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/path.c:
	ntdll: Cache the DOS drives stat info for up to one second.

	* dlls/shell32/shellole.c:
	shell32: Check for internal shell classes before querying the registry in
	SHCoCreateInstance.

2007-10-16  EA Durbin <ead1234@hotmail.com>

	* dlls/kernel32/locale.c:
	kernel32: Partially implement GetUserGeoID().

2007-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/tests/ole2.c, dlls/shell32/tests/systray.c:
	Fix redundant uses of MAKEINTRESOURCE.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Use wine_get_dos_file_name instead of duplicating knowledge about
	the drive symlinks.

2007-10-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/tests/edit.c:
	user32: Tests for fix EM_SETLIMITTEXT with zeroed args.

2007-10-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/edit.c:
	user32: Fix EM_SETLIMITTEXT with zeroed args.

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

	* dlls/user32/listbox.c, dlls/user32/tests/msg.c:
	user32: Add more listbox message tests, make them pass under Wine.

2007-10-18  Evan Teran <evan.teran@gmail.com>

	* dlls/shell32/shell32_main.c:
	shell32: Fix typo in GlobalAlloc parameters.

2007-10-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msi/action.c:
	msi: Make the WriteEnvironmentStrings handling of [~] a bit better.

2007-10-17  Nigel Liang <ncliang@gmail.com>

	* dlls/wininet/http.c:
	wininet: Release object in HttpEndRequestW after use.

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

	* dlls/spoolss/spoolss_main.c:
	spoolss: Return a magic number as HANDLE in RevertToPrinterSelf.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add a stub for BuildOtherNamesFromMachineName.

2007-10-16  Apostolos Alexiadis <djapal@gmail.com>

	* dlls/comctl32/comctl_El.rc, dlls/comctl32/rsrc.rc:
	comctl32: Add Greek resources.

2007-10-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/oid.c:
	crypt32: Always return an empty list on failure from CryptGetDefaultOIDDllList.

	* dlls/crypt32/oid.c:
	crypt32: Don't abort early if encoding type is 0 for
	CryptRegisterOIDFunction/CryptUnregisterOIDFunction.

	* dlls/crypt32/oid.c:
	crypt32: Don't crash logging numeric function names.

	* dlls/crypt32/oid.c:
	crypt32: Implement CryptGetDefaultOIDFunctionAddress.

	* dlls/crypt32/tests/oid.c:
	crypt32: Add basic tests for CryptGetDefaultOIDFunctionAddress.

	* dlls/crypt32/oid.c:
	crypt32: Use a structure to hold function address handle.

2007-10-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/kernel32/tests/actctx.c, dlls/ntdll/actctx.c:
	ntdll: Support for UTF-16 manifests with reverse endianness.

	* dlls/kernel32/tests/actctx.c, dlls/ntdll/actctx.c:
	ntdll: Manifests should be parsed as UTF-16 only if there is a BOM (with
	testcase).

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Make the actctx test pass when the application is run from a
	different directory.

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Support for spaces in actctx test executable path.

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Don't close an invalid handle if the process is being debugged
	as this will raise an exception.

2007-10-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/streams.c:
	msi: Add handling for MSIMODIFY_INSERT for the streams table.

	* dlls/msi/string.c, dlls/msi/tests/db.c:
	msi: Save nonpersistent strings as holes in the string pool.

	* dlls/msi/tests/db.c:
	msi: Test adding nonpersistent strings to the string table.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Return ERROR_FUNCTION_FAILED if a matching row is not found.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Return ERROR_FUNCTION_FAILED when inserting duplicate keys.

2007-10-17  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Detect conformant arrays of user types correctly.

	* tools/widl/typegen.c, tools/widl/widl.c:
	widl: Remove printf format strings that aren't really format strings.

	* tools/widl/parser.y, tools/widl/utils.c, tools/widl/utils.h,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate dlldata files.

	* tools/widl/widl.c:
	widl: Improve file cleanup when errors occur.

2007-10-17  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Enlarge buffer in test_enum_container. Fixes two test failures on Vista.

2007-10-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/oleview/pane.c:
	oleview: Fix a memory leak.

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

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c, include/mshtml.idl:
	mshtml: Import dimm.idl and fix compilation.

	* include/hlink.idl:
	hlink.idl: Undef unicode GetObject macro.

2007-10-17  Alexandre Julliard <julliard@winehq.org>

	* server/window.c:
	server: Don't expose the parent window in areas that are now part of the child
	visible region.

	* dlls/winex11.drv/winpos.c, server/window.c:
	server: Avoid refreshing areas of a window that have already been copied by
	the X server.

	* configure, configure.ac, dlls/gdi32/Makefile.in:
	configure: Check for fontconfig in the X directory if not found in the standard
	places.

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

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add a stub for SplIsUpgrade.

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

	* dlls/msimtf/main.c:
	msimtf: Added class factory implementation.

	* .gitignore, dlls/msimtf/Makefile.in, dlls/msimtf/main.c,
	  dlls/msimtf/msimtf.inf, dlls/msimtf/rsrc.rc:
	msimtf: Added Dll[Un]RegisterServer implementation.

2007-10-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winproc.c:
	user32: Replace a pointer cast by FIELD_OFFSET.

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Replace a couple of macros by a function to avoid compiler
	warnings.

	* dlls/comctl32/listview.c:
	comctl32: Fix a discard const warning.

	* dlls/crypt32/decode.c:
	crypt32: Fix pointer casts in decode.c too.

	* dlls/msi/table.c:
	msi: Avoid casting const pointers to non-const.

	* dlls/msi/table.c:
	msi: Properly clear the new table data when a column is added.

2007-10-17  Bang Jun-young <junyoung@mogua.com>

	* dlls/ole32/ole32_main.c:
	ole32: Include wine/port.h for snprintf().

	* dlls/advapi32/security.c, include/winbase.h:
	advapi32: Fix AdjustTokenPrivileges() to match the PSDK.

2007-10-16  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: Avoid setting IS_TEXT_UNICODE_NUL_BYTES for the last byte of an ANSI
	string.

	* dlls/ntdll/tests/rtlstr.c:
	ntdll: Add some tests for RtlIsTextUnicode.

2007-10-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Insert the decimal seperator, if it is just 1 char.

	* dlls/msi/tests/install.c:
	msi: Common Files is translated to current language.

	* dlls/msi/tests/install.c:
	msi: Marked two variables static.

2007-10-16  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/imm32/imm32.spec:
	imm32: ImmDisableIme is an alias to ImmDisableIME.

2007-10-16  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c:
	crypt32: Always set pPolicyStatus->dwError.

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

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Refuse to load OLE compound storage files like Windows does.

2007-10-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11: Process all types of messages while moving/resizing a window.

	* dlls/ntdll/reg.c:
	ntdll: Fixed typo in RTL_GetKeyHandle (spotted by Sean Chu).

2007-10-16  Alexandre Julliard <julliard@winehq.org>

	* include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: The inline functions should be static instead of extern.

2007-10-14  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Lerp with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVecScale with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Maximize with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Minimize with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Subtract with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Add with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2CCW with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DXVec2Dot with a test.

	* dlls/d3dx8/tests/math.c, include/d3dx8math.h, include/d3dx8math.inl:
	d3dx8: Implement D3DX8Vec2LengthSq with a test.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3dx8/tests/Makefile.in, dlls/d3dx8/tests/math.c,
	  include/Makefile.in, include/d3dx8math.h, include/d3dx8math.inl,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	d3dx8: Implement D3DX8Vec2Length with a test.

2007-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/tests/url.c:
	shlwapi/tests: Make local variables static and const.

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

	* dlls/shlwapi/tests/url.c:
	shlwapi/test: Test dwSize for UrlCanonicalizeA/W.

	* dlls/shlwapi/tests/Makefile.in, dlls/shlwapi/tests/path.c,
	  dlls/shlwapi/tests/url.c:
	shlwapi/tests: Move URL testing functions from path.c to url.c.

	* dlls/wininet/tests/internet.c:
	wininet/tests: Test NULL pointer for InternetCanonicalizeUrlA.

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Fix flags and SetLastError for InternetCanonicalizeUrlA/W.

	* dlls/shlwapi/url.c:
	shlwapi: Fix returned result code and size in UrlCanonicalizeA.

2007-10-13  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/mixer.c:
	dsound: Only warn for unsupported channels (or bits) when volume adjustment
	is done.

2007-10-16  Rob Shearman <rob@codeweavers.com>

	* server/trace.c:
	server: Owner and group SIDs in security descriptors are optional in many
	server calls.
	So print "<not present>" when they aren't provided instead of "<invalid sid>".

	* dlls/advapi32/tests/security.c:
	advapi32: Don't link to CreateWellKnownSid at compile time in the security tests.
	It isn't available on some Windows platforms.

	* dlls/advapi32/tests/security.c, server/token.c:
	server: Fix token_access_check to allow full access to security descriptors
	with present but NULL DACLs.

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	ntdll: Fix the return code from RtlSetDaclSecurityDescriptor when daclpresent
	is FALSE.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for AccessCheck with NULL DACLs and blank DACLs.

	* dlls/ntdll/sec.c:
	ntdll: Fix NtAccessCheck for NULL, but present SACLs and DACLs.

2007-10-15  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Output the correct value for TableSize in ProxyFileInfo.

2007-10-15  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: NULL name in PRINTDLG_SetUpPrinterListComboA is correct so don't
	print a FIXME.

2007-10-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Only double the returned size when szValueBuf is NULL.

2007-10-16  Alexandre Julliard <julliard@winehq.org>

	* programs/progman/Xx.rc:
	progman: Remove the obsolete Xx.rc file.

2007-10-15  Daniel Nylander <po@danielnylander.se>

	* tools/wine.desktop:
	tools: Add Swedish name to .desktop file.

	* dlls/shdoclc/Sv.rc:
	shdoclc: Update Swedish translation.

	* dlls/oleaut32/oleaut32_Sv.rc:
	oleaut32: Update Swedish translation.

	* dlls/mshtml/Sv.rc:
	mshtml: Update Swedish translation.

	* dlls/comdlg32/cdlg_Sv.rc:
	comdlg32: Update Swedish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Sv.rc:
	wldap32: Add Swedish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Sv.rc:
	wininet: Add Swedish translation.

	* dlls/msrle32/msrle_Sv.rc, dlls/msrle32/rsrc.rc:
	msrle32: Add Swedish translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Sv.rc:
	mpr: Add Swedish translation.

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Sv.rc:
	localspl: Add Swedish translation.

	* dlls/serialui/Sv.rc, dlls/serialui/serialui_rc.rc:
	serialui: Add Swedish translation.

	* dlls/hhctrl.ocx/Sv.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Add Swedish translation.

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Sv.rc:
	crypt32: Add Swedish translation.

	* dlls/msvidc32/msvidc32_Sv.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Add Swedish translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Sv.rc:
	shlwapi: Add Swedish translation.

	* dlls/winspool.drv/Sv.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Add Swedish translation.

	* dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/wps_Sv.rc:
	wineps.drv: Add Swedish translation.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Sv.rc:
	sane.ds: Add Swedish translation.

	* dlls/oledlg/oledlg_Sv.rc, dlls/oledlg/rsrc.rc:
	oledlg: Add Swedish translation.

	* dlls/msvfw32/msvfw32_Sv.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Swedish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Sv.rc:
	msi: Add Swedish translation.

	* dlls/msacm32/msacm.rc, dlls/msacm32/msacm_Sv.rc:
	msacm32: Add Swedish translation.

	* dlls/localui/localui.rc, dlls/localui/ui_Sv.rc:
	localui: Add Swedish translation.

	* dlls/iccvid/iccvid_Sv.rc, dlls/iccvid/rsrc.rc:
	iccvid: Add Swedish translation.

	* dlls/gphoto2.ds/gphoto2_Sv.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add Swedish translation.

	* dlls/credui/credui.rc, dlls/credui/credui_Sv.rc:
	credui: Add Swedish translation.

	* dlls/avifil32/avifile_Sv.rc, dlls/avifil32/rsrc.rc:
	avifil32: Add Swedish translation.

	* programs/clock/Sv.rc, programs/clock/Sw.rc, programs/clock/rsrc.rc:
	clock: Update Swedish translation.

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Sv.rc:
	wineboot: Add Swedish translation.

	* programs/winhelp/Sv.rc, programs/winhelp/Sw.rc,
	  programs/winhelp/rsrc.rc:
	winhelp: Update Swedish translation.

	* programs/wineconsole/wineconsole_Sv.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Add Swedish translation.

	* programs/winecfg/Sv.rc, programs/winecfg/winecfg.rc:
	winecfg: Add Swedish translation.

	* programs/uninstaller/Sv.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Swedish translation.

	* programs/notepad/Sv.rc, programs/notepad/Sw.rc,
	  programs/notepad/rsrc.rc:
	notepad: Update Swedish translation.

2007-10-15  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/header.h, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Use new functions need_proxy and need_stub to clean up code and avoid
	generating unnecessary files.

2007-10-15  Andrew Talbot <andrew.talbot@talbotville.com>

	* programs/msiexec/msiexec.c:
	msiexec: Fix a memory leak.

2007-10-14  Lei Zhang <thestig@google.com>

	* dlls/comctl32/monthcal.c:
	comctl32: Monthcal should send notifications when today link gets clicked.

	* dlls/comctl32/monthcal.c:
	comctl32: Correct monthcal WM_LBUTTONDOWN return values.

	* dlls/comctl32/monthcal.c:
	comctl32: Select today's date when the today link is clicked.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Monthcal today link test.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Simplify monthcal test.

2007-10-15  Bang Jun-young <junyoung@mogua.com>

	* dlls/version/resource.c:
	version: Use the official NT macro rather than obsolete one.

	* dlls/avifil32/api.c, include/vfw.h:
	avifil32: Fix prototype for AVIStreamFindSample() to match the PSDK.

	* dlls/crypt32/oid.c, include/wincrypt.h:
	crypt32: Fix typo in CryptGetDefaultOIDFunctionAddress().

	* configure, configure.ac, include/config.h.in, include/wine/port.h:
	configure: Add check for presence of _strdup() and strdup().

2007-10-15  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/crypt32/encode.c:
	crypt32: Fix incorrect casts in X509_CERT and friends.

2007-10-15  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c:
	crypt32: Implement CertVerifyCertificateChain for the Microsoft root policy.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Avoid spamming console.

	* dlls/setupapi/misc.c:
	setupapi: Avoid spamming console.

	* include/wininet.h:
	wininet.h: Add some more defines.

	* include/wincrypt.h:
	wincrypt.h: Add a few more definitions.

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

	* dlls/kernel32/heap.c:
	kernel32: Fix GlobalMemoryStatus to take into account the
	IMAGE_FILE_LARGE_ADDRESS_AWARE flag.
	Also the page file size must not be truncated to 2Gb no matter what
	the flag is set to.

2007-10-12  James Hawkins <truiken@gmail.com>

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Convert an HDDEDATA handle to a DDEPOKE structure for WM_DDE_POKE.

	* dlls/user32/tests/dde.c:
	user32: Add tests for DdeCreateDataHandle.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Return DMLERR_INVALIDPARAMETER if hszItem is NULL.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Return DMLERR_MEMORY_ERROR instead of posting an ACK when fAckReq is
	returned by the server for WM_DDE_DATA.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: Return DMLERR_INVALIDPARAMETER if hszItem is NULL.

	* dlls/user32/dde_client.c, dlls/user32/tests/dde.c:
	user32: The server should release data sent with WM_DDE_POKE.

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

	* dlls/user32/tests/dde.c:
	user32: Fix message processing in dde test and go back to more reasonable
	timeouts.

2007-10-12  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c:
	user32: Increase the message timeout.

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

	* dlls/wined3d/directx.c:
	wined3d: Don't report filtering for WINED3DFMT_R32F.

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

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Spelling fix.

2007-10-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/progress.c, dlls/comctl32/tests/rebar.c,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/tests/treeview.c:
	comctl32/tests: Avoid remove redundant invocation of MAKEINRESOURCEA for
	IDC_ARROW and IDC_IBEAM.

	* dlls/gdi32/freetype.c:
	gdi32: Avoid compiler warning in WineEngGetGlyphOutline().

	* dlls/kernel32/system.c, dlls/kernel32/thunk.c:
	kernel32: Use FIELD_OFFSET instead of pointer cast.

	* libs/wine/mmap.c:
	libwine: Conditionally provide reserve_area().

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

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/msimtf/Makefile.in, dlls/msimtf/main.c, dlls/msimtf/msimtf.spec:
	msimtf: Added msimtf.dll.

	* .gitignore, dlls/uuid/uuid.c, include/Makefile.in, include/dimm.idl:
	include: Added dimm.idl.

	* include/imm.h:
	imm.h: Added REGISTERWORD[AW] declaration.

2007-10-14  Vincent Pelletier <plr.vincent@gmail.com>

	* dlls/user32/sysparams.c:
	user32: Implement SPI_GETMOUSESPEED in SystemParametersInfoW.

2007-10-14  Allan Tong <actong88@gmail.com>

	* dlls/shell32/systray.c:
	shell32: Fix a memory leak.

2007-10-13  Juan Lang <juan.lang@gmail.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Implement GetAdapterIndex.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: UINT and DWORD are now equivalent, even in 64-bit compiles, so remove
	unnecessary complication.

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Use route table to find an adapter's default gateway in
	GetAdaptersInfo.

2007-10-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winmm/mmsystem.c:
	winmm: Fix some memory leaks.

2007-10-13  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/advapi32/service.c:
	advapi32: Improve stub for EnumServicesStatusExA a bit.

2007-10-13  Dmitry Potapov <dpotapov@gmail.com>

	* programs/cmd/builtins.c:
	cmd: copy: Fix "Path not found" error.

2007-10-12  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Free memory from one of the tests.

2007-10-12  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/winealsa.drv/dscapture.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/winealsa.drv/wavein.c, dlls/winealsa.drv/waveout.c:
	winealsa: Use S24_3LE instead of S24_LE.
	S24_LE is aligned with 4 bytes instead of the expected 3.

2007-10-11  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/dsound.c:
	dsound: Remove a few null initializations in DirectSoundDevice_Create.
	The memory is allocated with HEAP_ZERO_MEMORY.

2007-10-13  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/primary.c:
	dsound: Make sure device buflen is initially set to ds_hel_buflen.

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

	* dlls/advapi32/security.c, dlls/shell32/shellord.c,
	  tools/winapi/win32.api:
	Better match the PSDK types and update win32.api to fix the winapi_check
	warnings.

	* include/wtsapi32.h:
	wtsapi32: Add a couple of related prototypes.

	* dlls/user32/input.c, include/winuser.h, tools/winapi/win32.api:
	user32: Fix the HRAWINPUT definition and the GetRawInputData() prototype. Update
	win32.api to fix the winapi_check warnings.

	* dlls/msdmo/dmoreg.c, include/dmoreg.h, tools/winapi/win32.api:
	msdmo: Fix the DMOGetName() prototype.

	* dlls/msdmo/dmoreg.c:
	msdmo: Fix a winapi_check documentation warning and improve the documentation
	a bit.

	* dlls/ole32/compobj.c:
	ole32: Fix the CoCreateGuid() ordinal in the documentation.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Fix the calling convention of _wsearchenv() and _wspawnv*().

	* dlls/mshtml/install.c:
	mshtml: Check for HAVE_UNISTD_H before including unistd.h.

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

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

	* dlls/wined3d/surface.c:
	wined3d: Fix the d3dfmt_p8_init_palette() prototype.

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

	* dlls/mshtml/htmlnode.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added ref counting to node object.

	* dlls/mshtml/install.c, dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Try installing Gecko from local file in DllRegisterServer.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::moveStart("character") implementation.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added more range tests and fixes.

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

	* dlls/mshtml/htmlselect.c:
	mshtml: Added IHTMLSelectElement::selectedIndex property implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElementFactory::create implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElement::get_text implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElement::put_text implementation.

	* dlls/mshtml/htmloption.c:
	mshtml: Added IHTMLOptionElement::put_value implementation.

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

	* dlls/mshtml/htmloption.c, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLOptionElement::get_value implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added IHTMLStyle display and visibility properties implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc3.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDocument4 stub implementation.

	* dlls/mshtml/nsio.c:
	mshtml: Use wine scheme mechanism in do_load_from_moniker_hack.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmloption.c,
	  dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLWindow2::get_option implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed ref count leak.

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

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Fix range pos after put_text call.

2007-10-12  Juan Lang <juan.lang@gmail.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Improve GetPerAdapterInfo stub.

	* dlls/ws2_32/socket.c:
	ws2_32: Fix broadcast address calculation.

	* dlls/setupapi/devinst.c:
	setupapi: Correct device enumeration.

	* dlls/setupapi/devinst.c:
	setupapi: Don't abort key enumeration early.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  include/setupapi.h:
	setupapi: Implement SetupDiDeleteDevRegKey.

	* dlls/setupapi/devinst.c:
	setupapi: Make error checking in SetupDiCreateDevRegKeyW more like that in
	SetupDiOpenDevRegKey.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiOpenDevRegKey.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Test SetupDiOpenDevRegKey.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Improve parameter checking in SetupDiInstallClass.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Remove bogus part of test.

2007-10-12  Gerald Pfeifer <gerald@pfeifer.com>

	* tools/widl/parser.y:
	widl: Fix build failure in parser.y.

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

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/xrender.c:
	winex11.drv: The 'lossy' parameter is always false so remove it.

2007-10-12  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Try to load Wine's TrueType fonts from the build directory.

	* dlls/gdi32/freetype.c:
	gdi32: Don't load Wine's bitmap-only TrueType fonts.

	* fonts/courier.sfd, fonts/marlett.sfd, fonts/ms_sans_serif.sfd,
	  fonts/small_fonts.sfd, fonts/system.sfd:
	fonts: Change to OS2 Vendor ID to be 'Wine'.

	* dlls/gdi32/freetype.c:
	gdi32: Factor out the code to call FT_Load_Sfnt_Table.

2007-10-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Optimize P8 fragment shader.

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

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

----------------------------------------------------------------
2007-10-06  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wine.desktop:
	tools/wine.desktop: Add Name field in Russian.

2007-10-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wininet/cookie.c:
	wininet: Fix a memory leak.

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

	* dlls/kernel32/locale.c:
	kernel32: Get rid of the NLS_RegOpenSubKey function, its behavior is broken.

2007-10-12  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/inkobj/Makefile.in, dlls/inkobj/inkcollector.c,
	  dlls/inkobj/inkobj_internal.h, include/msinkaut.idl:
	inkobj: Stub implementation of IInkCollector.

2007-10-11  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/inkobj/inkobj.c, dlls/inkobj/inkobj_internal.h:
	nkobj: Use an internal header.

2007-10-12  Marcus Meissner <marcus@jet.franken.de>

	* dlls/imm32/imm.c:
	imm32: Avoid spamming the debug output.

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

	* dlls/urlmon/http.c:
	urlmon: Increment/decrement reference count when internet handles are
	created/destroyed.

2007-10-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use a fragment shader to do P8 palette conversion in hardware.

	* dlls/wined3d/surface.c:
	wined3d: Fix inverse palette lookup for P8 surfaces.
	The previous method didn't take into account duplicate entries for the same
	color.

2007-10-11  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDevRegKeyW.

	* dlls/setupapi/devinst.c:
	setupapi: Add a device ID member to DeviceInfo.

	* dlls/setupapi/devinst.c:
	setupapi: Don't require caller to pass a SP_DEVINFO_DATA pointer to
	SETUPDI_AddDeviceToSet.

	* dlls/setupapi/devinst.c:
	setupapi: Add helper function to open a device's hardware key.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDevRegKeyA on top of SetupDiCreateDevRegKeyW.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  include/setupapi.h:
	setupapi: Add stubs for SetupDiCreateDevRegKeyA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Install more items when installing a class.

	* dlls/setupapi/devinst.c:
	setupapi: Correct creating the class key.

	* dlls/setupapi/devinst.c:
	setupapi: SetupOpenAppendInfFile is implemented, so remove #if 0 around it.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Test SetupDiInstallClass.

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

	* dlls/d3d9/tests/visual.c:
	wined3d: Add a (nested) loop test.

2007-10-11  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement name constraint checking.

2007-10-10  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement name constraints decoding.

	* dlls/crypt32/decode.c:
	crypt32: Don't check tag in AsnDecodeIntInternal, caller already checks it.

	* dlls/crypt32/tests/encode.c:
	crypt32: Allow either NULL or empty strings where one or the other is expected.

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement name constraint encoding.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding/decoding name constraints.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add another test to show that time validity nesting isn't checked.

	* dlls/crypt32/tests/chain.c:
	crypt32: Remove superficially different certificates.

	* dlls/crypt32/tests/encode.c:
	crypt32: Allow imprecision of one millisecond in time decoding to fix test
	failures on Windows.

2007-10-11  David Adam <jeremielapuree@yahoo.fr>

	* include/d3dx8math.h:
	d3dx8: Fix the definition of D3DXVECTOR.

2007-10-11  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/security.c, dlls/wined3d/pixelshader.c,
	  dlls/winex11.drv/dib.c, programs/wineboot/wineboot.c:
	Assorted spelling fixes.

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

	* dlls/comctl32/tests/header.c:
	comctl32/tests: Fix the control's size reporting in an error message.

	* dlls/user32/tests/msg.c:
	user32/tests: Don't use nameless unions where they are not needed.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Add the trailing '\n' to a Wine trace.

	* dlls/winex11.drv/dib.c:
	winex11.drv: Remove an obsolete FIXME comment.

2007-10-07  Andrey Turkin <andrey.turkin@gmail.com>

	* tools/wine.inf:
	wine.inf: Add Protected Storage System Provider key.

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

	* dlls/mshtml/install.c:
	mshtml: Added support for installing Gecko from the local file.

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

	* dlls/msdmo/dmoreg.c:
	msdmo: Improve registration and reading of codecs.

2007-10-10  John Klehm <xixsimplicityxix@gmail.com>

	* include/msinkaut.idl:
	msinkaut.idl: Declare the IInkCollector interface and its dependencies.

2007-10-08  Roy Shea <roy@cs.hmc.edu>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/qmgr/Makefile.in, dlls/qmgr/bits_main.c, dlls/qmgr/qmgr.spec:
	qmgr: Skeleton implementation of Background Intelligent Transfer Service (BITS).

2007-10-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/window.c:
	winex11: Don't use a window manager border for a simple WS_BORDER-style border.

	* dlls/winex11.drv/window.c:
	winex11: Reuse the mwm hints when computing the window X11 rectangle.
	This allows more flexibility in deciding which elements of the decor
	are done by the window manager.

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11: Set the SKIP_PAGER and SKIP_TASKBAR styles on tool windows.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Add generic mechanism for managing WM_STATE properties.

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

	* dlls/wininet/tests/internet.c:
	wininet/tests: Initial tests for InternetCanonicalizeUrlA.

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

	* dlls/wined3d/directx.c:
	wined3d: Set D3DCAPS2_CANAUTOGENMIPMAP flag when supported.

2007-10-10  Nigel Liang <ncliang@gmail.com>

	* include/winsock.h:
	include/winsock.h: Fix parenthesis mismatch.

2007-10-10  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c,
	  dlls/rpcrt4/tests/server.idl, tools/widl/typegen.c:
	rpcrt4, widl: Make pointer layouts compatible with windows; fix conformant
	array tests.

2007-10-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineps.drv/init.c, dlls/wineps.drv/type42.c:
	wineps.drv: Fix some memory leaks.

2007-10-05  Mikolaj Zalewski <mikolajz@google.com>

	* .gitignore, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/test_tlb.idl, dlls/oleaut32/tests/typelib.c,
	  dlls/oleaut32/typelib.c:
	oleaut32: Function kind for dispatch interfaces should be FUNC_DISPATCH.

2007-10-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Release pixel shaders after we're done with them in the visual test.

2007-10-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Fix demangling of function pointers by maintaining the left/right
	distinction for type references.

2007-10-10  Robert Shearman <rob@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Set the SETUP_IS_CHROME_WRAPPER to FALSE as the embedded Gecko is
	always used to display content and not chrome.

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

	* tools/wine.inf:
	wine.inf: Add 2 keys for *.chm files.

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

	* dlls/winex11.drv/opengl.c:
	winex11: Don't choose double buffered modes with gdi support.

	* dlls/winex11.drv/opengl.c:
	winex11: Use the specified format for GL Bitmaps.

	* dlls/winex11.drv/opengl.c:
	winex11: Create GLXPixmap for bitmaps in SetPixelFormat.

2007-10-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't store a physdev pointer in the GL context.

	* dlls/winex11.drv/init.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use ExtEscape to flush the GL drawable to the physdev.
	Based on a patch by Chris Robinson.

	* dlls/ntdll/file.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/file.c, server/file.h,
	  server/mapping.c, server/protocol.def, server/trace.c,
	  tools/make_requests:
	server: Use the file_pos_t type for file sizes and offsets in the protocol
	structures.

2007-10-05  Ken Thomases <ken@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Work around a bug in Mac OS X's getdirentries().

2007-10-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/ne_segment.c:
	kernel32: Use FIELD_OFFSET instead of pointer cast.

2007-10-04  Karl Relton <karllinuxtest.relton@ntlworld.com>

	* dlls/user32/tests/msg.c, server/queue.c:
	wineserver: Allow already peeked messages to merge.

2007-10-09  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/regedit/regproc.c:
	regedit: Replace call to delete_branch with RegDeleteTreeA.

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

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

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

	* dlls/dinput/mouse.c:
	dinput: Use ClipCursor() to keep mouse from leaving the window.

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

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fixed test crash on Windows.

2007-10-05  David Adam <David.Adam@math.cnrs.fr>

	* include/Makefile.in, include/d3dx8.h, include/d3dx8math.h:
	include: Skeleton header for D3DX8.

2007-10-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Merge p8 palette initialization code.

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

	* dlls/ddraw/ddraw.c:
	ddraw: Downgrade the SetCooperativeLevel FIXME to a TRACE.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Do not fail on surface creation errors, skip instead.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Silently ignore setting the 0 texture on gdi surfaces.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c:
	ddraw: Cope with Init3D failures.

	* dlls/wined3d/device.c:
	wined3d: Clear up in Init3D if something fails.

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

	* programs/wineboot/wineboot.rc, programs/wineboot/wineboot_Ko.rc:
	wineboot: New Korean resource.

2007-10-09  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Fix some memory leaks.

2007-10-08  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/wined3d/resource.c:
	wined3d: Fix a memory leak.

2007-10-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Fix a memory leak.

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

	* dlls/urlmon/sec_mgr.c:
	urlmon: Fix some memory leaks.

2007-10-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regproc.c:
	regedit: Add support for 'regedit /E -', to export the registry to stdout.

	* programs/regedit/regedit.c:
	regedit: Add support for 'regedit -' for feeding regedit from stdin.

2007-10-08  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/ole32/ole2.c, dlls/ole32/tests/ole2.c:
	ole32: OleIsRunning should return TRUE if the class doesn't implement
	IRunnableObject.

2007-10-08  Andrey Turkin <andrey.turkin@gmail.com>

	* libs/wine/loader.c:
	libwine: Emulate MS linker stub for builtin dlls.

	* dlls/dbghelp/pe_module.c:
	dbghelp: Avoid crashing on files with bogus export table.

2007-10-06  EA Durbin <ead1234@hotmail.com>

	* dlls/kernel32/locale.c:
	kernel32: Implement SetUserGeoID.

2007-10-08  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Add generic chain action to known actions.

	* dlls/wintrust/softpub.c:
	wintrust: Add traces.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement GenericChainFinalProv.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement GenericChainCertificateTrust.

	* dlls/wintrust/softpub.c:
	wintrust: Add a helper function to create a chain for a signer.

	* dlls/wintrust/softpub.c:
	wintrust: Add a helper function to initialize chain creation parameters.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Trace input to WinVerifyTrust.

2007-10-08  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c:
	user32: Test the ddeml server interface.

	* dlls/user32/tests/dde.c:
	user32: Move the test_ddeml_client function closer to the other ddeml client
	test functions.

	* dlls/user32/tests/dde.c:
	user32: Set client_pid to zero before initializing dde.

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

	* dlls/mshtml/navigate.c:
	mshtml: Move init_nsevents call from start_binding to read_stream_data to
	avoid race.

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

	* dlls/mshtml/tests/misc.c:
	mshtml: Fixed tests on IE7.

2007-10-08  Juan Lang <juan.lang@gmail.com>

	* include/softpub.h:
	softpub.h: Add missing definitions.

	* dlls/crypt32/msg.c:
	crypt32: Add an extra pointer alignment to avoid possible memory corruption.

2007-10-09  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/audio.c:
	wineoss: Remove useless fixme shown on initialisation.

	* dlls/dsound/primary.c:
	dsound: Release buffer before reopening when buffer is too small.

2007-10-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/winemm.h, programs/winecfg/audio.c:
	winmm: Set default sound driver to alsa,oss,coreaudio.

2007-10-07  Reece H. Dunn <msclrhd@gmail.com>

	* dlls/comctl32/trackbar.c:
	comctl32: Fixed drawing the trackbar background when themes are installed.

2007-10-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winecfg/winecfg.c:
	winecfg: Replace call to remove_path with RegDeleteTreeW.

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

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Fixed test on IE7.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Fixed tests on IE7.

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

	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
	ole32: RegisterDragDrop should return E_OUTOFMEMORY in the case that COM isn't
	intialised, instead of CO_E_NOTINITIALIZED.

2007-10-07  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Fix monthcal hit tests.

2007-10-07  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Fixed buffer overflow in encode test.

2007-10-08  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/typegen.c, tools/widl/typelib.c,
	  tools/widl/widltypes.h:
	widl: Keep track of every allocated type_t to simplify set_all_tfswrite.

	* tools/widl/parser.h, tools/widl/parser.y, tools/widl/typelib.c,
	  tools/widl/widltypes.h:
	widl: Implement pointer_default functionality.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/utils.h:
	widl: Allow quoted UUIDs.

2007-10-07  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32/tests: Don't assume that the default font height is 16 pixels.

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

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Add a check for a test that depends on the decimal separator being
	a dot.

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

	* dlls/wined3d/state.c:
	wined3d: Prevent some console spamming.

2007-10-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Use EXT-versions of glBlend*.

2007-10-07  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32/tests: Skip some font dependent tests if we don't have System or
	Tahoma installed.

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

	* dlls/ntdll/actctx.c:
	actctx: Rename version to assembly_version.

	* dlls/mshtml/tests/dom.c:
	mshtml: Skip tests if we can't get body object - it means that there is no
	Gecko available.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move most code from handle_editor_load to exec_editmode.

2007-10-07  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: ntlm_auth returns BH if the connection to winbindd fails.

2007-10-06  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Print values of failing time tests.

	* dlls/crypt32/tests/encode.c:
	crypt32: Remove some tests that fail inconsistently on Windows.
	Reported by Steven Edwards.

2007-10-05  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: Remove a misleading fixme.

2007-10-06  Dan Kegel <dank@kegel.com>

	* dlls/quartz/tests/referenceclock.c:
	quartz: Make clock test less flaky.

2007-10-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/advpack/tests/advpack.c:
	advpack: Handle localized C:\Program Files.

2007-10-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Do not rely on CreateVertexShader failing.

2007-10-06  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/d3d9/tests/texture.c:
	d3d9: Fix crash in texture test.

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

	* dlls/user32/tests/dde.c:
	user32/tests: Remove an unneeded cast.

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Tell PageSetupDlg() not to bring up a dialog if there is no
	default printer.

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

	* server/file.c:
	server: Only call fchmod in file_set_fd if the mode actually changed.

	* server/file.c:
	server: Remove an unnecessary check from file_set_fd.

2007-10-06  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wsock32/wsock32.spec:
	wsock32: Export 3 more functions.

2007-10-04  Mikolaj Zalewski <mikolajz@google.com>

	* programs/oleview/typelib.c:
	oleview: Don't crash if the parent type couldn't be retrieved.

2007-10-05  Dan Kegel <dank@kegel.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix ^Z handling in text mode.

2007-10-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Remove an unused ChoosePixelFormat line.

	* dlls/wined3d/context.c:
	wined3d: Make sure we receive a hw accelerated pixel format with OpenGL support.

2007-10-05  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, tools/widl/parser.y:
	widl: Make structs containing user types bogus; fix square_test_us test failure.

	* dlls/rpcrt4/tests/server.idl:
	rpcrt4/tests: Make server.idl compatible with MIDL.

2007-10-03  Aric Stewart <aric@codeweavers.com>

	* dlls/msdmo/dmoreg.c:
	msdmo: Implement DMOGetTypes.

2007-10-04  Dan Kegel <dank@kegel.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Improve CR CR LF handling.

2007-10-04  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/cert.c:
	crypt32: Don't assume a maximum of 32 valid usages.

	* dlls/crypt32/tests/cert.c:
	crypt32: Add tests for CertGetValidUsages.

	* dlls/crypt32/cert.c:
	crypt32: Reduce valid usages count when removing a valid usage.

	* dlls/crypt32/cert.c:
	crypt32: Don't set ret to FALSE when it isn't checked.

	* dlls/crypt32/cert.c:
	crypt32: Always set cNumOIDs.

	* dlls/crypt32/cert.c:
	crypt32: Don't fail if a cert is invalid, Windows doesn't either (tests
	to follow).

	* dlls/crypt32/cert.c:
	crypt32: Don't fail if buffer is NULL, just return required size.

	* dlls/crypt32/cert.c:
	crypt32: Improve trace.

	* dlls/crypt32/cert.c:
	crypt32: Fix a silly variable name.

2007-10-04  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shelllink.c:
	shell32: Fix some memory leaks.

2007-10-03  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix some memory leaks.

2007-10-04  Huw Davies <huw@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/tahomabd.sfd:
	fonts: Add a very incomplete Tahoma Bold.

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

	* dlls/winex11.drv/mouse.c:
	winex11drv: Ignore mouse move events when position did not change only when
	other events are present.

2007-10-04  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fixed a misplaced break.

2007-10-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3dx8/d3dx8.spec:
	d3dx8: Update spec file.

	* dlls/d3dx8/d3dx8_main.c:
	d3dx8: Add DllMain.

2007-10-03  Rob Shearman <rob@codeweavers.com>

	* server/file.c, server/security.h, server/token.c:
	server: Add primitive support for setting and getting the security descriptor
	of files based on their Unix permissions.

	* server/async.c, server/atom.c, server/change.c, server/clipboard.c,
	  server/completion.c, server/console.c, server/debugger.c,
	  server/device.c, server/directory.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c, server/queue.c,
	  server/registry.c, server/request.c, server/semaphore.c,
	  server/serial.c, server/signal.c, server/snapshot.c, server/sock.c,
	  server/symlink.c, server/thread.c, server/timer.c, server/token.c,
	  server/winstation.c:
	server: Add get_sd and set_sd object operations to allow the security descriptor
	to be stored somewhere other than server memory, such as on disk.

	* server/security.h, server/token.c:
	server: Add a simple mapping from Unix uids to NT SIDs.

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

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Nested loop support.

2007-10-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Implement the vFace register.

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

	* dlls/ws2_32/socket.c:
	ws2_32: Silently ignore WS_IP_DONTFRAGMENT.

2007-10-04  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c, include/ddeml.h:
	user32: Test the ddeml client interface.

2007-09-28  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c:
	advapi32: security: Remove unneeded FIXME.

2007-10-03  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: olepicture: When drawing metafiles set the coordinates system so
	that it is drawn in the correct place.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: olepicture: Support loading Aldus Placable Metafiles.

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

	* dlls/mshtml/htmlinput.c:
	mshtml: Added IHTMLInputTextElement interface implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLInputTextElement interface.

	* dlls/mshtml/htmlselect.c:
	mshtml: Added IHTMLSelectElement::get_length implementation.

	* dlls/mshtml/htmlelem.c:
	mshtml: IHTMLElementContainer::item rewrite.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmloption.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLOptionElement interface stub implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Include document element in collection returned by
	IHTMLDocument2::get_all.

	* dlls/mshtml/htmlelem.c:
	mshtml: Return IHTMLElementCollection instead of IDispatch from
	HTMLElementCollection_Create.

	* dlls/mshtml/htmlelem.c:
	mshtml: Move common code to separated function.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Move nodes' QueryInterface implementation to vtbl.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Use vtbl for node destructors.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Pass HTMLDOMNode pointer to HTMLElement's destructor.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Pass HTMLDOMNode pointer to its destructor.

2007-10-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Render to the correct hwnd/hdc.

2007-10-03  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/softpub.c:
	wintrust: Use verify time rather than current time to check certificate chain.

	* dlls/wintrust/softpub.c:
	wintrust: Remove bad check that prevents root certificates from appearing
	time valid.

	* dlls/wintrust/softpub.c:
	wintrust: Use file's creation time as time to verify.

	* dlls/wintrust/softpub.c:
	wintrust: Copy time to verify from cert info.

2007-10-03  Huw Davies <huw@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/tahoma.sfd:
	fonts: Add a Tahoma replacement. Almost entirely based on a patch by Larry
	Snyder.

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

	* dlls/localspl/localspl.spec, dlls/localspl/localspl_main.c:
	localspl: Implement InitializePrintProvidor.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/spoolss/tests/Makefile.in, dlls/spoolss/tests/spoolss.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	spoolss/tests: Add tests for SplInitializeWinSpoolDrv.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Implement SplInitializeWinSpoolDrv.

	* dlls/winspool.drv/winspool.drv.spec:
	winspool: Add a missing export.

	* dlls/msi/database.c:
	msi: Dump the database name in a FIXME.

2007-10-02  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix a typo.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix memory leaks (found by Smatch).

2007-09-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Load and use GLX_MESA_copy_sub_buffer for swapping buffers on a
	GLXPixmap.

	* dlls/winex11.drv/dce.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use a GLXPixmap for offscreen OpenGL rendering when XComposite isn't
	available.

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/x11drv.h:
	winex11: Track async GL drawable changes.

	* dlls/winex11.drv/bitmap.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Pass a display parameter when destroying glxpixmaps.

2007-09-25  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Use an offscreen redirected window for child OpenGL rendering.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_norm.c,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	wgl: Remove GL scissors/viewport override.

	* dlls/winex11.drv/dce.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Store a GL-specific drawable with the window.

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

	* dlls/advapi32/security.c:
	advapi32: Allow GetFileSecurityA/W to work on files that have been opened
	already with restricted sharing flags.
	Only use the minimum required access rights for the information being retrieved.

	* dlls/advapi32/security.c:
	advapi32: Implement SetFileSecurityW on top of NtSetSecurityObject.

	* server/token.c:
	server: Use ACL_REVISION in create_default_dacl instead of MAX_ACL_REVISION
	since we don't use any features from later ACL revisions.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add a new get_security_object call for getting the security descriptor
	of an object.
	Use it to implement NtQuerySecurityObject.

	* server/handle.c, server/object.c, server/object.h, server/security.h,
	  server/token.c:
	server: Move set_security_object to handle.c and set_object_sd to object.c.
	These both don't operate on tokens so token.c is not the right place for
	them to be implemented.

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

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: d3d ignores the sign of the input value in the log instruction.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Take care against overwriting a source register in cmp.

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

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Reverse the position fixup if the pshader is reading vpos.

2007-10-02  Rémi Assailly <remi.assailly@free.fr>

	* dlls/user32/desktop.c, dlls/user32/user.exe.spec, dlls/user32/user16.c:
	user32: Renamed and moved SetDeskPattern.

	* dlls/user32/clipboard.c, dlls/user32/desktop.c, dlls/user32/user16.c:
	user32: Moved some 16-bit functions.

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

	* dlls/setupapi/devinst.c:
	setupapi: Use correct parameter in pointer init.

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Initialize shader to NULL.

2007-10-02  Roy Shea <roy@cs.hmc.edu>

	* programs/net/net.c:
	net.exe: Added missing service name.

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

	* dlls/gdi32/freetype.c:
	gdi32: Let the WINE_GGO_GRAY16_BITMAP case load a bitmap.

	* dlls/gdi32/freetype.c:
	gdi32: Only cache the glyph metrics when rendering to a monochrome bitmap or
	when just retrieving the metrics.

	* dlls/gdi32/freetype.c:
	gdi32: TrueType fonts from the data directory should be added to the registry.

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

	* programs/net/Ru.rc, programs/net/rsrc.rc:
	net.exe: Add Russian resources.

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

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c:
	mshtml: Pass the IDispatch interface of the element right-clicked on to
	IDocHostUIHandler_ShowContextMenu if applicable instead of always the
	document's one.
	Found by Rob Shearman.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/tests/dom.c:
	mshtml: Added get_tagName implementation.

2007-10-02  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Correct default pointers.

	* tools/widl/header.c, tools/widl/typegen.c:
	widl: Write types in the format string comments.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c:
	widl: Add a declonly argument to write_type_left.

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Add newlines to error messages that are missing them.

2007-10-02  Juan Lang <juan.lang@gmail.com>

	* dlls/ntdll/heap.c:
	ntdll: Fix a typo.

2007-10-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Fix the HEAP_CreateSubHeap return value (spotted by Allan Tong).

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

	* dlls/winenas.drv/audio.c:
	winenas.drv: Add workaround for INT64 type too.

	* dlls/user32/tests/class.c:
	user32/tests: Replace GWL_WNDPROC by GWLP_WNDPROC.

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed UpdateDebugInfoFile definition.

	* server/change.c, server/device.c, server/directory.c, server/fd.c,
	  server/file.c, server/file.h, server/named_pipe.c, server/serial.c,
	  server/sock.c:
	server: Add a default access mapping function for files, and use it for
	devices too.

	* dlls/kernel32/heap.c:
	kernel32: Improve tracing in GlobalAlloc.

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

	* dlls/user32/listbox.c, dlls/user32/tests/msg.c:
	user32: Add a message test for ownerdrawn listbox, make it pass under Wine.

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

	* dlls/pdh/pdh_main.c:
	pdh: Removed superflous NULL ptr check.

	* dlls/mpr/wnet.c:
	mpr: Initialize lpwSystem.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Test IsBadReadPtr/ IsBadCodePtr / IsBadWritePtr.

2007-10-01  Luke Bratch <l_bratch@yahoo.co.uk>

	* programs/winecfg/En.rc:
	winecfg: Add more keyboard shortcuts.

2007-10-01  Chris Spencer <spencercw@googlemail.com>

	* tools/wine.inf:
	wine.inf: Create psapi.dll as a fake dll.

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

	* dlls/gdi32/freetype.c:
	gdi32: Prefer a Microsoft cmap table over other platform ones.

2007-10-01  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c:
	crypt32: Don't check decoded length against encoded length for indefinite-form
	sequences.

2007-10-01  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/faultrep/faultrep.c, dlls/faultrep/faultrep.spec:
	faultrep: Add stub for ReportFault.

2007-09-29  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/mshtml/editor.c:
	mshtml: Removed unused function get_child_text_node().

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Move X11DRV_XRender_Installed under #ifdef SONAME_LIBXRENDER.

	* dlls/kernel32/heap.c:
	kernel32: Fix types for the FreeBSD implementation of GlobalMemoryStatusEx().

	* dlls/kernel32/cpu.c:
	kernel32: Fix signedess for FreeBSD-specific implementation of GetSystemInfo().

2007-10-01  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix some memory leaks.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix some memory leaks.

2007-09-29  Stéphane LOEUILLET <leroutier@gmail.com>

	* tools/wine.desktop:
	Fix substandard wine.desktop file.

2007-10-01  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/capture.c:
	dsound: Fix IDirectSoundBuffer_GetPosition.

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

	* dlls/urlmon/binding.c:
	urlmon: Get rid of no longer needed IHttpNegotiate wrapper.

	* dlls/urlmon/tests/url.c:
	urlmon: Added more RegiterBindStatusCallback tests.

	* dlls/urlmon/tests/url.c:
	urlmon: Added more strict QueryInterface tests.

	* dlls/urlmon/bindctx.c, dlls/urlmon/tests/url.c, dlls/urlmon/umon.c:
	urlmon: Wrap callback in RegisterBindStatusCallback.

	* dlls/uuid/uuid.c:
	urlmon: Added IID_IBindStatusCallbackHolder to uuid.

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

	* dlls/secur32/ntlm.c:
	secur32: Remove hardcoded assumption that the SECBUFFER_DATA is always at
	index 1 for en/decrypting.

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

	* dlls/ntdll/heap.c:
	ntdll: Make the heap structure more compatible with the NT layout.

	* dlls/ntdll/heap.c:
	ntdll: Convert the subheap list to a standard list.

	* dlls/ntdll/heap.c:
	ntdll: Remove assumptions that the subheap is at the beginning of the memory
	block.

	* dlls/ntdll/heap.c:
	ntdll: Clear heap blocks also for WARN_ON(heap).

	* dlls/shlwapi/ordinal.c:
	shlwapi: Fix GetAcceptLanguagesA to not read past the end of the buffer.

	* dlls/user32/tests/dde.c:
	user32/tests: Compare against ASCII string first since it may not be a valid
	Unicode string in that case.

	* dlls/msi/alter.c:
	msi: Avoid accessing a freed object.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/persist.c:
	mshtml: The HTMLDocument URL is a standard WCHAR string, not a BSTR.

	* dlls/comctl32/tests/dpa.c:
	comctl32/tests: Avoid destroying a DPA twice.

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

	* .gitignore, programs/wineboot/Makefile.in, programs/wineboot/resource.h,
	  programs/wineboot/shutdown.c, programs/wineboot/wineboot.rc,
	  programs/wineboot/wineboot_En.rc:
	wineboot: Add a timeout dialog when any WM_QUERYENDSESSION or WM_ENDSESSION
	messages take too long.

2007-10-01  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/mpr/wnet.c, include/npapi.h:
	mpr: Implement WNetGetResourceInformation functions.

2007-09-29  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/user32/resources/version16.rc:
	user32: Define WINE_FILEVERSION in version resource of user.exe.

	* dlls/kernel32/version16.rc:
	kernel32: Define WINE_FILEVERSION in version resource of krnl386.exe.

	* dlls/gdi32/version16.rc:
	gdi32: Define WINE_FILEVERSION in version resource of gdi.exe.

	* dlls/ole32/version16.rc:
	ole32: Define WINE_FILEVERSION in version resource of ole2nls.dll too.

2007-09-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/ddraw/regsvr.c:
	ddraw: Fix RegDeleteTreeA/W compile issues when building ddraw for Windows.

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

	* dlls/ole32/compobj.c, dlls/ole32/compobj.spec:
	ole32: Implement win16 COCREATEGUID.

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

	* dlls/wined3d/baseshader.c:
	wined3d: Bem is an instruction and uses registers.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Enable the mNxN implementation for pixel shaders.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement texbeml in arb shaders.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Add proper input register handling to texreg2ar/gb.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add texreg2rgb support to arb shaders.

2007-09-30  Rob Shearman <rob@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Add tests for DefWindowProc processing the undocumented 0x3B message.

2007-09-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* include/wine/wined3d_interface.h:
	wined3d: WINAPI compile fixes.

2007-10-01  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/wineoss.drv/audio.c, dlls/wineoss.drv/audio.h,
	  dlls/wineoss.drv/dscapture.c, dlls/wineoss.drv/dsrender.c:
	wineoss: Seperate wave-in and wave-outs shared use of a single OSS_DEVICE struct.

	* dlls/dsound/capture.c:
	dsound: Call waveInUnPrepareHeader and waveInPrepareHeader when submitting
	new buffer.

2007-09-29  Maarten Lankhorst <maarten@codeweavers.com>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/primary.c:
	dsound: Use smaller buffers for wavein capture.

2007-09-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/tests/pdh.c:
	pdh: Skip tests when running on non-english locale.

	* dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Fix parameter handling in PdhAddEnglishCounter{A, W} and
	PdhCollectQueryDataWithTime.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhCalculateCounterFromRawValue.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c,
	  include/pdh.h:
	pdh: Implement and test PdhCollectQueryDataEx.

	* dlls/pdh/pdh_main.c:
	pdh: Serialize access to performance counters and queries.

	* dlls/pdh/tests/pdh.c:
	pdh: Add tests for PdhValidatePath{, Ex}{A, W}.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, include/pdh.h, include/pdhmsg.h:
	pdh: Implement PdhValidatePath{, Ex}{A, W}.

2007-09-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Only call ENTER_GL for the parts in ActivateContext that actually
	need it.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c:
	wined3d: CreateContext should not be called between ENTER_GL/LEAVE_GL.

	* dlls/wined3d/directx.c:
	wined3d: CreateFakeGLContxt/ReleaseFakeGLContext doesn't need ENTER_GL/LEAVE_GL
	and they are making GDI calls.
	The removal of ENTER_GL from the fake context code, requires the
	addition of ENTER_GL/LEAVE_GL to FillGLCaps which was protected by the
	fake context code before.

2007-09-28  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/msvfw32/mciwnd.c:
	msvfw32: Fix a memory leak.

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

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

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

	* dlls/mshtml/nsio.c:
	mshtml: Use GetWineURL in before_async_open.

	* dlls/mshtml/olecmd.c:
	mshtml: Remove no longer used defines.

2007-09-28  Juan Lang <juan.lang@gmail.com>

	* include/wincrypt.h:
	wincrypt.h: Add a few more definitions.

	* dlls/wintrust/asn.c, dlls/wintrust/wintrust.spec:
	wintrust: Add stub for WVTAsn1SpcSpOpusInfoDecode.

	* dlls/crypt32/msg.c:
	crypt32: Correct copying a signer info's attributes.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Don't warn for generic cert verify action.

	* dlls/wintrust/softpub.c:
	wintrust: In SoftpubLoadSignature, don't assume a message is present.

	* dlls/wintrust/softpub.c:
	wintrust: Improve SoftpubLoadMessage for WTD_CHOICE_CERT.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SoftpubDefCertInit.

	* dlls/crypt32/serialize.c:
	crypt32: Be more strict about format of serialized store files.

	* dlls/crypt32/filestore.c, dlls/crypt32/tests/store.c:
	crypt32: Implement opening file name stores from files that contain PKCS7
	messages.

	* dlls/crypt32/filestore.c:
	crypt32: Allow file stores to support more than one type of file.

	* dlls/crypt32/filestore.c:
	crypt32: Create file store directly in CRYPT_FileNameOpenStoreW.

	* dlls/crypt32/filestore.c:
	crypt32: Add a helper function to create a file store from an already-initialized
	memory store.

2007-09-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: WM_IME_SETCONTEXT messages are optional.

2007-09-28  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/gdi32/bidi.c:
	gdi32: Fix 3 tiny bugs in bidi.

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

	* dlls/gdi32/bidi.c, dlls/gdi32/gdi_private.h:
	gdi32: Fix meaning and use of bidirectionality flags.

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

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/msvcirt/Makefile.in, dlls/msvcirt/msvcirt.c,
	  dlls/msvcirt/msvcirt.spec:
	msvcirt: Added stub implementation of msvcirt.dll.

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

----------------------------------------------------------------
2007-09-28  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/kernel32/change.c, dlls/kernel32/file.c, dlls/kernel32/sync.c,
	  dlls/kernel32/vxd.c:
	kernel32: Pass completion value to ntdll layer.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/completion.c,
	  server/fd.c, server/file.h, server/protocol.def, server/request.h,
	  server/trace.c:
	server: Allow completion object to be attached to an fd object.

2007-09-27  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c:
	crypt32: Move CertSaveStore to serialize.c.

	* dlls/crypt32/filestore.c:
	crypt32: Use CertSaveStore to save file stores.

	* dlls/crypt32/store.c:
	crypt32: Implement CertSaveStore.

	* include/wincrypt.h:
	crypt32: Add definitions used by CertSaveStore.

	* dlls/crypt32/serialize.c:
	crypt32: Implement CRYPT_WriteSerializedStoreToFile using
	CRYPT_WriteSerializedStoreToStream.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c:
	crypt32: Add a function to serialize a store to an arbitrary stream.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/filestore.c,
	  dlls/crypt32/object.c, dlls/crypt32/serialize.c:
	crypt32: Rename a couple of functions.

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/msg.c:
	crypt32: Add/improve some traces.

2007-09-26  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32: Fix GetServiceDisplayNameA for cchBuffer == 0.

2007-09-27  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Implement GetPrivateObjectSecurity (with test).

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: In ConvertStringSecurityDescriptorToSecurityDescriptor "AU" should
	be checked before "A" (with testcase).

	* dlls/advapi32/security.c:
	advapi32: Make ConvertStringSecurityDescriptorToSecurityDescriptor write the ACL.

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	advapi32/ntdll: GetSecurityDescriptorOwner/Group should fill isDefaulted also
	for NULL sids.

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	advapi32/ntdll: MakeRelativeSD should preserve NULL pointers (with testcase).

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Add some already implemented function to the spec file.

2007-09-27  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Minimal fix for WM_SETTEXT without ES_MULTILINE style.

2007-09-27  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.h, tools/widl/server.c, tools/widl/typegen.c:
	widl: Generate client and server code for using context handles.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widl.c, tools/widl/widltypes.h:
	widl: Write prototypes for context handle rundown rountines into generated
	header files.

2007-09-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* .gitignore, dlls/ole32/Makefile.in, dlls/ole32/version16.rc:
	ole32: Added version resource for ole2nls.dll.

2007-09-27  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/object.c:
	crypt32: Support PKCS messages wrapped in a PKCS content info in
	CryptQueryObject.

	* dlls/crypt32/object.c:
	crypt32: Fix CryptQueryObject for embedded PKCS7 signatures.

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

	* dlls/gdi32/font.c:
	gdi32: Don't hold the GDI lock while calling the driver SelectFont function.

	* dlls/gdi32/gdiobj.c:
	gdi32: Don't hold the GDI lock while calling the SelectObject backends.

	* dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/font.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c, dlls/gdi32/pen.c:
	gdi32: Move the object refcount handling to the SelectObject backend functions.

	* dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/font.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c, dlls/gdi32/pen.c,
	  dlls/gdi32/region.c:
	gdi32: Don't pass an object pointer to the SelectObject backend functions.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Always drag the full window for top-level windows to avoid having
	to grab the server.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Remove static keywords that hide test failures.

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

	* dlls/gdi32/bidi.c, dlls/gdi32/font.c, dlls/ntdll/signal_i386.c,
	  dlls/oleaut32/ungif.c, dlls/twain_32/TWAIN, dlls/user32/tests/win.c,
	  dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h, dlls/winex11.drv/keyboard.c,
	  dlls/winspool.drv/info.c, programs/cmd/wcmdmain.c:
	Assorted spelling fixes.

	* tools/winapi/win32.api:
	winapi: Assorted win32.api updates.

	* dlls/ntoskrnl.exe/ntoskrnl.c, include/ddk/wdm.h:
	ntoskrnl.exe: Fix the PsCreateSystemThread() prototype and declare it in wdm.h.
	Add a prototype for PsTerminateSystemThread().

	* include/appmgmt.h, include/cfgmgr32.h, include/evntrace.h,
	  include/icmpapi.h, include/msiquery.h, include/powrprof.h,
	  include/rpcdcep.h, include/rpcproxy.h, include/setupapi.h,
	  include/winnetwk.h:
	includes: Make headers C++ compatible.

	* include/msidefs.h, include/wshisotp.h:
	includes: Remove unneeded extern "C" statements.

	* dlls/riched20/tests/editor.c:
	riched20/tests: Add '\n's to ok() calls.

2007-09-27  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wineoss.drv/midi.c:
	wineoss.drv: Add support for $MIDIDEV to match $AUDIODEV and $MIXERDEV.

2007-09-26  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/kernel32/profile.c:
	kernel32: Fix a memory leak.

2007-09-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Fix some memory leaks.

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

	* dlls/gdi32/freetype.c:
	gdi32: Fix typo in FIXME (spotted by Rob Shearman).

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/xrender.c:
	winex11.drv: Don't call GDI functions while holding the X11 lock.

2007-09-26  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32: The lpServiceStartName should default to LocalSystem for Win32
	services.

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

	* dlls/wineoss.drv/midi.c:
	wineoss: Only initialise midi once.

2007-09-26  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/winhttp/main.c, dlls/winhttp/winhttp.spec, include/winhttp.h:
	winhttp: Add WinHttpGetIEProxyConfigForCurrentUser stub.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/virtual.c, include/winternl.h:
	ntdll: NtAreMappedFilesTheSame semi stub.

2007-09-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/format_msg.c, dlls/kernel32/tests/format_msg.c:
	kernel32: Check for NULL output buffer in FormatMessage{A, W}.

2007-09-26  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* include/npapi.h:
	include/npapi.h: Add some constants.

	* dlls/mpr/wnet.c, include/npapi.h:
	mpr: Correct usage of dwScope and dwEnumScopes.

2007-09-26  Lionel_Debroux <Lionel_Debroux@pc-debroux>

	* dlls/mlang/mlang.c:
	mlang: Fix memory leaks in error paths (found by Smatch).

	* dlls/mlang/mlang.c:
	mlang: Fix memory leaks in error path (found by Smatch).

2007-09-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETCHARFORMAT must fail and return 0 with	TM_PLAINTEXT and
	SF_SELECTION.

2007-09-26  Michael Stefaniuc <mstefani@redhat.de>

	* server/completion.c:
	server: Include stdarg.h in completion.c. Needed for older gcc versions.

2007-09-26  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/amstream/regsvr.c:
	amstream: Remove 'recursive registry key delete' function.

	* dlls/browseui/regsvr.c:
	browseui: Remove 'recursive registry key delete' function.

2007-09-26  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/gdi32/printdrv.c:
	gdi32: printdrv: Use umask for creating a spool file.

2007-09-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xcomposite.h:
	winex11: Be compatible with older XComposite headers.

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

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add sincos support to arb shaders.

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

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement the nrm instruction in arb.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add dp2add support to arb shaders.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Add crs and pow instruction support.

2007-09-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Handle modifiers in cmp.

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

	* dlls/mshtml/nsembed.c:
	mshtml: Use get_nsinterface in set_ns_editmode and get_editor_controller.

	* dlls/mshtml/olecmd.c:
	mshtml: Use get_nsinterface in exec_print and do_ns_command.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Added generic get_nsinterface function and use it in
	get_ns_command_state.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added IDM_COPY in browse mode implementation.

	* dlls/mshtml/persist.c:
	mshtml: Ignore app's User-Agent header and Content-Type if there is no data
	to post.

	* dlls/mshtml/htmltextcont.c:
	mshtml: Forward IHTMLTextContainer::put_scrollTop and put_scrollLeft calls to
	IHTMLElement2 interface.

	* dlls/mshtml/htmlelem2.c:
	mshtml: Added IHTMLElement2::put_scrollTop and put_scrollLeft implementation.

	* dlls/mshtml/htmldoc5.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/tests/dom.c:
	mshtml: Added get_compatMode implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc5.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDocument5 interface stub implementation.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Added HlinkGetSpecialReference stub.

2007-09-26  Michael Stefaniuc <mstefani@redhat.com>

	* dlls/crypt32/object.c:
	crypt32: Add missing parameter to a TRACE.

	* dlls/advapi32/security.c:
	advapi32: Move the storage specifier to the beginning of the declaration.

2007-09-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Check if hardware buffer is big enough before accepting it.

2007-09-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/audio.c, dlls/wineoss.drv/dsrender.c:
	wineoss: Silence some harmless warnings.

2007-09-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/style.c,
	  dlls/riched20/tests/editor.c:
	riched20: EM_SETCHARFORMAT must return 0, not assert, on invalid struct size.

2007-09-26  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Fix array alignment bug.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix string codes in pointer descriptions.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix top-level conformant arrays with pointer attributes.

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

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h:
	gdi32: Move the generic part of FontIsLinked() to font.c.

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h:
	gdi32: Don't pass a DC handle to WineEngGetFontUnicodeRanges.

	* dlls/gdi32/dc.c:
	gdi32: Don't hold the gdi lock while calling DC driver functions.

	* dlls/gdi32/dc.c, dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/mfdrv/init.c:
	gdi32: Don't hold the gdi lock while creating a DC.

2007-09-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETCHARFORMAT must return 1 on success, not 0.

2007-09-25  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/main.c, dlls/crypt32/object.c:
	crypt32: Partially implement CryptQueryObject.

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

	* programs/wineconsole/curses.c, programs/wineconsole/user.c,
	  programs/wineconsole/wineconsole.c:
	wineconsole: Default to the user backend, falling back to curses if we can't
	create a window.

2007-09-18  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/Makefile.in,
	  server/completion.c, server/protocol.def, server/request.h,
	  server/trace.c:
	server: Implement server-side completion queues and operations on them.

2007-09-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/itss/protocol.c:
	itss: Fix a typo.

2007-09-25  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c, include/shlobj.h:
	shell32: Implement SHCreatePropSheetExtArrayEx.

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

	* dlls/shell32/shlview.c:
	shell32: shlview: Change some more ANSI calls to Unicode.

	* dlls/shell32/shlview.c, include/shlobj.h:
	shell32: Make the shell view control Unicode.

2007-09-25  EA Durbin <ead1234@hotmail.com>

	* programs/winecfg/audio.c, programs/winecfg/idw_testsound.wav,
	  programs/winecfg/resource.h, programs/winecfg/winecfg.rc:
	winecfg: Implement audio test.

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

	* dlls/wineps.drv/init.c:
	wineps.drv: Fix end of list check in PSDRV_UpdateDevCaps().

2007-09-25  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c:
	advapi32: Make ConvertSidToStringSid use helper functions of
	ConvertSecurityDescriptorToStringSecurityDescriptor.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  dlls/advapi32/tests/security.c:
	advapi32: Implement ConvertSecurityDescriptorToStringSecurityDescriptor[AW].

	* include/winnt.h:
	include: Fix the definition of VALID_INHERIT_FLAGS.

	* tools/wine.inf:
	wine.inf: add four keys found on Windows XP to Active Setup\Installed Components.

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

	* dlls/ntdll/loader.c:
	ntdll: Avoid segfault with snoop for exefiles with a broken export table.

2007-09-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/comcat/regsvr.c:
	comcat: Remove 'recursive registry key delete' function.

	* dlls/d3dxof/regsvr.c:
	d3dxof: Remove 'recursive registry key delete' function.

2007-09-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Make message test pass cleanly under XP SP2.

2007-09-24  L. Rahyen <mail@science.su>

	* dlls/user32/input.c, dlls/user32/user32.spec, include/winuser.h:
	user32: Implement initial stubs for all raw input functions.

2007-09-21  Christian Gmeiner <christian.gmeiner@gmail.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/security.c, dlls/advapi32/service.c:
	advapi32: fix some compiler warnings when using -Wsign-compare.

2007-09-22  Philip Nilsson <wine-devel@nullref.se>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Add a testcase for binding with IPv6 and IPv4 on the same port.

	* dlls/ws2_32/socket.c:
	ws2_32: Set IPV6_V6ONLY when required to be compatible with Windows.

2007-09-21  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c:
	wininet: When sending INTERNET_STATUS_HANDLE_CLOSING make sure the freed handle
	is not yet available.

2007-09-22  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_norm.c,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	wgl: Override glFinish and glFlush.

	* configure, configure.ac, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xcomposite.h, include/config.h.in:
	winex11.drv: Load the XComposite extension when available.

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

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Remove debug code and the tabs.

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Add tests for PRINTDLG->hDevNames.

2007-09-24  Karl Relton <karllinuxtest.relton@ntlworld.com>

	* dlls/msvcrt/math.c, dlls/msvcrt/tests/printf.c:
	msvcrt: New implementation of fcvt.

2007-09-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wtsapi32/wtsapi32.c, dlls/wtsapi32/wtsapi32.spec:
	wtsapi32: Add stub for WTSUnRegisterSessionNotification.

	* dlls/wtsapi32/wtsapi32.c, dlls/wtsapi32/wtsapi32.spec:
	wtsapi32: Add stub for WTSRegisterSessionNotification.

2007-09-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add a test for read-only mapping of a write-only section, test actual
	page access rights of the mapping.

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

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Implement GetDeviceInfo for evdev joystick.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Make default dead zone configurable.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c:
	dinput: Add a helper function to open configuration registry keys.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c:
	dinput: Move get_config_key to a common place.

2007-09-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Clean up write_conf_or_var_desc with string_of_type.

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

	* dlls/ole32/tests/storage32.c:
	ole32/tests: Remove test that tries to create a huge file on Windows.

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

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Add modifier handling to cnd in arb.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Implement WINED3DSI_TEXLD_BIAS in arb.

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

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add support for some unimplemented instructions to arb shaders.

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

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Improve projected texture handling in arb.

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

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/utils.c:
	wined3d: Put V8U8 back into the UNKNOWN format group.

2007-09-24  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/stubs.c:
	setupapi: Implement SetupDiGetClassDevsExA.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDevsA on top of SetupDiGetClassDevsExW.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDevsW on top of SetupDiGetClassDevsExW.

	* dlls/setupapi/devinst.c:
	setupapi: Partially implement SetupDiGetClassDevsExW.

	* dlls/setupapi/devinst.c, dlls/setupapi/stubs.c:
	setupapi: Implement SetupDiGetDeviceInfoListDetailA/W.

2007-09-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ddraw/regsvr.c:
	ddraw: Remove 'recursive registry key delete' function.

	* dlls/ddrawex/regsvr.c:
	ddrawex: Remove 'recursive registry key delete' function.

2007-09-24  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Make ConvertStringSidToSid not to ignore the first subauthority.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add AddAuditAccessAceEx.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/sec.c, include/winternl.h:
	ntdll: Add RtlAddAuditAccessAceEx.

	* dlls/advapi32/tests/service.c:
	advapi32: Fix a test.

2007-09-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ole32/oleproxy.c:
	ole32: Free memory on error path (found by Smatch).

2007-09-24  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/gdi32/painting.c:
	gdi32: Fix a memory leak.

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

	* dlls/gdi32/driver.c, dlls/gdi32/printdrv.c:
	gdi32: Don't hold the GDI lock while calling the driver printer functions.

	* dlls/gdi32/clipping.c:
	gdi32: Don't hold the GDI lock while calling the driver clipping functions.

	* dlls/gdi32/opengl.c:
	gdi32: Don't hold the GDI lock while calling the driver OpenGL functions.

	* dlls/gdi32/painting.c:
	gdi32: Don't hold the GDI lock while calling the driver painting functions.

	* dlls/gdi32/path.c:
	gdi32: Don't hold the GDI lock while calling the driver path functions.

	* dlls/gdi32/mapping.c:
	gdi32: Don't hold the GDI lock while calling the driver mapping functions.

2007-09-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/process.c:
	msvcrt: Implement _wspawnv{, e, p, pe}.

	* dlls/msvcrt/dir.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implement _wsearchenv.

2007-09-21  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: When freeing an interface, delete it from the registry if its device
	is a phantom.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement SetupDiDeleteDeviceInterfaceRegKey.

	* dlls/setupapi/devinst.c:
	setupapi: Save interface to registry when creating it.

	* dlls/setupapi/devinst.c:
	setupapi: Store pointer to set in device, and use it to make sure that a device
	is a member of a set.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInterfaceRegKeyA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Return the interface's device from SetupDiGetDeviceInterfaceDetailA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Store pointer to an interface's device in the interface instance.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stubs for SetupDiCreateDeviceInterfaceRegKeyA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Convert device's interfaces to a standard list.

	* include/setupapi.h:
	setupapi: Fix prototype of SetupDiCreateDeviceInterfaceRegKeyA/W.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Create symbolic link value when interface is created.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add test showing value of path.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiGetDeviceInterfaceDetailA/W.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiGetDeviceInterfaceDetail.

	* dlls/setupapi/devinst.c:
	setupapi: When enumerating an interface, add the interface to its device.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiEnumDeviceInterfaces.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInterfaceW.

	* dlls/setupapi/devinst.c:
	setupapi: Set last error on invalid input.

	* dlls/setupapi/devinst.c:
	setupapi: Remove a redundant parameter check.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Add error checking to SetupDiCreateDeviceInterfaceW stub.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInterfaceA on top of
	SetupDiCreateInterfaceW.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiCreateDeviceInterface.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stubs for SetupDiCreateDeviceInterfaceA/W.

	* dlls/setupapi/devinst.c:
	setupapi: Set last error on failure in SetupDiOpenClassRegKeyExW.

	* dlls/setupapi/devinst.c:
	setupapi: Respect samDesired in SetupDiOpenClassRegKeyExW.

2007-09-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/resource.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Move video memory tracking to the adapter.

2007-09-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/name_server.c:
	dplayx: Fix some memory leaks.

2007-09-21  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/tests/msg.c:
	user32/tests: Fix test for switch maximized MDI children.

2007-09-24  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dinput/regsvr.c:
	dinput: Remove 'recursive registry key delete' function.

	* dlls/dinput8/regsvr.c:
	dinput8: Remove 'recursive registry key delete' function.

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

	* dlls/mshtml/view.c:
	mshtml: Don't crash in UIActivate if Gecko is not available.

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::Resizable property implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::FullScreen property implementation.

2007-09-23  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix WM_GETTEXT to change \r to \r\n.

	* dlls/riched20/tests/editor.c:
	riched20: Tests show WM_GETTEXT change \r to \r\n.

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

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c,
	  include/iads.idl:
	advapi32: Add some more rights constants for
	ConvertStringSecurityDescriptorToSecurityDescriptor.

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

	* dlls/wined3d/arb_program_shader.c:
	wined3d: A0 needs the .x swizzle.

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

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: SRGB write correction emulation.

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

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Unify pixel format correction.

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Recompile glsl pixelshaders if the sampler format changes.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/surface.c:
	wined3d: Add signed format conversion for glsl.

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

	* dlls/mshtml/htmlbody.c:
	mshtml: Fix another typo and add trace.

	* dlls/mshtml/htmlelem.c:
	mshtml: Fix typo.

2007-09-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/wined3d_main.c:
	wined3d: The amount of video memory is set in FillGLCaps unless overridden
	using a registry option.

2007-09-21  Jeff Latimer <lats@yless4u.com.au>

	* dlls/mpr/pwcache.c:
	mpr: Check for out of memory condition.

2007-09-20  Carroll Vance <ovencleaner@gmail.com>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Added PsCreateSystemThread.

2007-09-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/wintab32/wintab32.c:
	wintab32: Add DisableThreadLibraryCalls.

2007-09-20  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/wintab32/context.c, dlls/wintab32/wintab_internal.h:
	wintab32: Store the context internally as Unicode, implement WTOpenW and WTGetW.

	* dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/wintab.c,
	  dlls/wintab32/context.c, dlls/wintab32/wintab32.c,
	  dlls/wintab32/wintab_internal.h:
	winex11.drv/wintab32: Make wintab strings in winex11.drv Unicode, implement
	WTInfoW.

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

	* dlls/setupapi/devinst.c:
	setupapi: Simplify the SetupDiGetClassDescriptionExA/W implementation.

2007-09-20  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDevsW.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiRegisterDeviceInfo.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiRegisterDeviceInfo.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupDiRegisterDeviceInfo.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetClassDescriptionExA.

	* dlls/setupapi/devinst.c:
	setupapi: Devices created by SetupDiCreateDeviceInfo are "phantoms", and are
	deleted from the registry when the set that contains them is closed.

	* dlls/setupapi/devinst.c:
	setupapi: Save class GUID to registry when creating a device.

	* dlls/setupapi/devinst.c:
	setupapi: Save device description to registry when creating a device.

	* dlls/setupapi/devinst.c:
	setupapi: Make a helper to convert a GUID to a string.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement SetupDiSetDeviceRegistryPropertyA/W.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement SetupDiGetDeviceRegistryPropertyA/W.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiGetDeviceInstanceIdW.

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInfoW.

2007-09-20  Rob Shearman <rob@codeweavers.com>

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c,
	  include/userenv.h:
	userenv: Add a stub for UnloadUserProfile.

2007-09-20  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/editor.c,
	  dlls/riched20/tests/editor.c:
	riched20: Only WM_CHAR respects text limit.

2007-09-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel32/resource.c:
	kernel32: Fix a memory leak. Found by cross referencing Andrew Talbot's list
	of potential memory leaks with Smatch's view of the same problem.

2007-09-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/tests/http.c:
	wininet/tests: Add test to show that InternetCloseHandle closes open child
	handles too.

	* dlls/wininet/cookie.c, dlls/wininet/ftp.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/urlcache.c:
	wininet: Track child handles, free all child handles on WININET_FreeHandle
	as native.

2007-09-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dpnet/address.c:
	dpnet: Indirection level fix.

	* dlls/dmusic/dmusic_main.c:
	dmusic: Indirection level fix.

	* dlls/dmsynth/dmsynth_main.c:
	dmsynth: Indirection level fix.

	* dlls/dmscript/dmscript_main.c:
	dmscript: Indirection level fix.

	* dlls/dswave/dswave_main.c:
	dswave: Indirection level fix.

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

	* dlls/gdi32/bidi.c:
	gdi32: Add a '\n' to a Wine trace.

	* include/indexsrv.idl:
	infosoft: indexsrv.idl must import objidl.idl and not unknwn.idl.
	Add a commented out import directive as a reminder.

	* include/fci.h:
	fci.h: Include basetsd.h.

	* include/iprtrmib.h, include/mprapi.h:
	mpr: Move MAX_INTERFACE_NAME_LEN to mprapi.h and add related constants.
	Fix iprtrmib.h so it includes mprapi.h.

	* include/gdiplustypes.h:
	gdiplus: Make gdiplustypes.h C++ compatible.
	Add GetThumbnailImageAbort.

	* include/regstr.h:
	regstr.h only defines constants and structures and thus does not need an extern
	"C" statement.

2007-09-20  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/tests/dialog.c:
	user32/tests: Fix dialog proc prototypes.

	* include/winnt.h:
	include: Add new processor feature constants.

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

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Don't call GDI functions while holding the xrender lock.

	* loader/glibc.c:
	loader: Set the address space limit before starting the preloader.

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

	* server/window.c:
	server: Clip the visible region of a window to the desktop window.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Skip the debugger test if the child process is not loaded at the
	right address.

2007-09-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: Don't set a pixel format on windows that already have one.

2007-09-19  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/paint.c, dlls/riched20/tests/editor.c:
	riched20: Adjust event mask when sending EN_CHANGE notification.

2007-09-19  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: wintab: Add missing CTX_PKTDATA support.

	* dlls/winex11.drv/wintab.c:
	winex11.drv: wintab: Add a missing break.

2007-09-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* configure, configure.ac, dlls/gdi32/freetype.c, include/config.h.in:
	gdi32: Use symbolic names for font tags.

2007-09-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c,
	  include/wine/wined3d_gl.h:
	wined3d: Better video memory reporting.

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

	* dlls/wined3d/surface.c:
	wined3d: Fix a typo in the surface code.

	* dlls/d3d9/tests/device.c, dlls/wined3d/drawprim.c:
	wined3d: Check for NULL streams.

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

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix a typo in shader_glsl_cross.

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

	* dlls/wined3d/state.c:
	wined3d: Keep the selected stencil setup face set to GL_FRONT.

2007-09-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Print last error in failure messages of the MapViewOfFile test.

2007-09-19  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Handle top-level conformance for complex arrays.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y:
	widl: Respect pointer attributes better.

	* tools/widl/typegen.c:
	widl: Set the pointer description offset to zero if there are no pointers.

2007-09-19  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Add error checking to SetupDiCreateDeviceInfoW stub.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiGetDeviceInstanceIdA on top of
	SetupDiGetDeviceInstanceIdW.

	* dlls/setupapi/devinst.c:
	setupapi: Implement SetupDiEnumDeviceInfo.

	* dlls/setupapi/devinst.c:
	setupapi: Add a placeholder for devices.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiGetDeviceInstanceId.

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stubs for SetupDiGetDeviceInstanceIdA/W.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Add tests for SetupDiCreateDeviceInfo.

2007-09-19  James Hawkins <truiken@gmail.com>

	* dlls/user32/tests/dde.c:
	user32: Add a test that shows ddeml string handles use local atoms.

2007-09-20  James Hawkins <truiken@gmail.com>

	* dlls/kernel32/heap.c, dlls/kernel32/tests/heap.c:
	kernel32: Don't crash accessing an invalid handle in GlobalSize.

2007-09-19  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/tests/editor.c:
	riched20: Add tests for text limit behavior.

2007-09-19  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmcompos/dmcompos_main.c:
	dmcompos: Indirection level fix.

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

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update the wm hints when the window frame is changed.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: If a window is not resizable through the window manager fall back
	to non-managed resizing.

	* dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added implementation of a few more __crt functions.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c:
	msvcrt: Added implementation for __STRINGTOLD.

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

	* dlls/msvcrt/dir.c, dlls/msvcrt/errno.c, dlls/msvcrt/file.c,
	  dlls/msvcrt/misc.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/process.c:
	msvcrt: Resolve symbols clashes with FreeBSD libc.

2007-09-18  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/dmband/band.c:
	dmband: Fix a memory leak.

2007-09-19  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/tests/editor.c:
	riched20: Add test for event masks and notifications.

2007-09-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add a test for rw mapping of a read-only section.

2007-09-15  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/gdi32/bidi.c:
	gdi: Implement line-by-line phase of the BiDi algorithm.

	* dlls/gdi32/bidi.c:
	gdi: Implement implicit resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement neutrals resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement weak resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement explicit resolving in BiDi.

	* dlls/gdi32/bidi.c:
	gdi: Implement BiDi classification of characters and copying according to them.

2007-09-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* configure, configure.ac, dlls/gdi32/Makefile.in, dlls/gdi32/bidi.c,
	  dlls/gdi32/font.c, dlls/gdi32/gdi_private.h, include/config.h.in:
	gdi: Remove support for libicu and all dependencies.

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

	* dlls/mshtml/editor.c:
	mshtml: Added Exec(IDM_FONT) stub implementation.

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

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed IHTMLTxtRange::get_text implementation with no nsrange associated.

	* dlls/mshtml/htmlstylesheet.c:
	mshtml: Added IHTMLStyleSheetsCollection::get_length implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/htmlstylesheet.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added get_styleSheets implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added HTMLStyle::get_textDecoration* implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added more IHTMLStyle getters implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Return NULL for empty results in get_style_attr.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c:
	mshtml: Forward node ref calls to IHTMLDOMNode interface.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Get rid of node_type variable in HTMLNode object.

	* dlls/mshtml/htmlelem.c:
	mshtml: Don't use node_type from HTMLNode object.

2007-09-18  Juan Lang <juan.lang@gmail.com>

	* dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add missing prototypes and definitions, and change function prototypes
	to match.

	* dlls/setupapi/devinst.c:
	setupapi: Fix typo.

	* dlls/setupapi/devinst.c:
	setupapi: Fix return type.

	* include/setupapi.h:
	setupapi: Correct type to match PSDK.

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

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Don't wait for FD_CONNECT event when non-blocking connect()
	was successful.

2007-09-18  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Fix alignment for 64-bit systems.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement streamed encoding of an indefinite-length data message.

	* dlls/crypt32/msg.c:
	crypt32: Pass length rather than entire message to CRYPT_EncodeContentLength.

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

	* dlls/wined3d/state.c:
	wined3d: Disable two sided stencil if it is supported, but not enabled.

	* dlls/wined3d/state.c:
	wined3d: Enable the stencil test if two sided stencil is used.

	* dlls/wined3d/state.c:
	wined3d: Fix a copypaste error.

	* dlls/wined3d/state.c:
	wined3d: Set the stencil mask for both faces.

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

	* dlls/wined3d/context.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Untie culling and offscreen rendering.

2007-09-18  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Implement complex arrays.

	* tools/widl/typegen.c:
	widl: Handle all buffer sizes.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Implement pointer descriptions for complex structures.

	* tools/widl/typegen.c:
	widl: Fix alignment comments.

2007-09-18  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Implement RpcSmDestroyClientContext and RpcSsDestroyClientContext.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a copy-and-paste error in RpcAuthInfo_Release that caused a double
	free of memory.

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

	* .gitignore, Make.rules.in, tools/Makefile.in, tools/bin2res.c:
	tools: Remove the no longer needed bin2res tool.

	* .gitignore, programs/wordpad/Makefile.in,
	  programs/wordpad/formatbar.bmp, programs/wordpad/rsrc.rc,
	  programs/wordpad/rtf.ico, programs/wordpad/toolbar.bmp,
	  programs/wordpad/txt.ico, programs/wordpad/wordpad.ico,
	  programs/wordpad/wri.ico:
	wordpad.exe: We can now store binary files in the repository.

	* .gitignore, programs/winetest/Makefile.in, programs/winetest/dist.rc,
	  programs/winetest/wine.ico, programs/winetest/winetest.rc:
	winetest.exe: We can now store binary files in the repository.

	* .gitignore, programs/winemine/Makefile.in, programs/winemine/faces.bmp,
	  programs/winemine/leds.bmp, programs/winemine/mines.bmp,
	  programs/winemine/rsrc.rc, programs/winemine/winemine.ico:
	winemine.exe: We can now store binary files in the repository.

	* .gitignore, programs/winefile/Makefile.in,
	  programs/winefile/drivebar.bmp, programs/winefile/images.bmp,
	  programs/winefile/resource.rc, programs/winefile/rsrc.rc,
	  programs/winefile/toolbar.bmp, programs/winefile/winefile.ico:
	winefile.exe: We can now store binary files in the repository.

	* .gitignore, programs/winecfg/Makefile.in,
	  programs/winecfg/idb_checkbox.bmp, programs/winecfg/idb_wine.bmp,
	  programs/winecfg/winecfg.rc:
	winecfg.exe: We can now store binary files in the repository.

	* .gitignore, programs/uninstaller/Makefile.in,
	  programs/uninstaller/rsrc.rc, programs/uninstaller/uninstaller.ico:
	uninstaller.exe: We can now store binary files in the repository.

	* .gitignore, programs/taskmgr/Makefile.in, programs/taskmgr/font.bmp,
	  programs/taskmgr/taskmgr.ico, programs/taskmgr/taskmgr.rc,
	  programs/taskmgr/trayicon.bmp, programs/taskmgr/traymask.bmp,
	  programs/taskmgr/window.ico, programs/taskmgr/windowsm.ico:
	taskmgr.exe: We can now store binary files in the repository.

	* .gitignore, programs/regedit/Makefile.in, programs/regedit/bin.ico,
	  programs/regedit/computer.ico, programs/regedit/folder.ico,
	  programs/regedit/folderopen.ico, programs/regedit/regedit.ico,
	  programs/regedit/resource.rc, programs/regedit/rsrc.rc,
	  programs/regedit/string.ico:
	regedit.exe: We can now store binary files in the repository.

	* .gitignore, programs/oleview/Makefile.in, programs/oleview/rsrc.rc,
	  programs/oleview/toolbar.bmp:
	oleview.exe: We can now store binary files in the repository.

	* .gitignore, programs/msiexec/Makefile.in, programs/msiexec/msiexec.ico,
	  programs/msiexec/rsrc.rc:
	msiexec.exe: We can now store binary files in the repository.

	* .gitignore, programs/cmdlgtst/Makefile.in, programs/cmdlgtst/about.ico,
	  programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst.exe: We can now store binary files in the repository.

	* .gitignore, programs/cmd/Makefile.in, programs/cmd/wcmd.ico,
	  programs/cmd/wcmdrc.rc:
	cmd.exe: We can now store binary files in the repository.

2007-09-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c:
	crypt32: Use decode function's returned decoded length to advance pointer when
	decoding an array.

	* dlls/crypt32/decode.c:
	crypt32: ret is already true, don't retest it.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Explicitly count bytes to copy in DecodeCopyBytes.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Test and correct decoding indefinite-length-encoded PKCS content.

	* dlls/crypt32/decode.c:
	crypt32: Use correct encoded length when decoding a sequence.

	* dlls/crypt32/decode.c:
	crypt32: Simplify AsnDecodeSequenceItems a tiny bit.

	* dlls/crypt32/decode.c:
	crypt32: Allow indefinite-length encoding of sequence items.

	* dlls/crypt32/decode.c:
	crypt32: Simplify DecodePathLenConstraint.

	* dlls/crypt32/decode.c:
	crypt32: Allow a sequence to have an indefinite-length encoding.

	* dlls/crypt32/decode.c:
	crypt32: Set *pcbDecoded in every function.

	* dlls/crypt32/decode.c:
	crypt32: Use internal form for all internal decoding functions.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of encoding type argument to AsnDecodeSequence, it isn't used.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of encoding type from AsnDecodeSequenceItems, it's never
	checked.

	* dlls/crypt32/decode.c:
	crypt32: Don't use exception handler when decoding time zone, caller already
	does.

	* dlls/crypt32/decode.c:
	crypt32: Implement DecodeAltName with DecodeAltNameInternal.

	* dlls/crypt32/decode.c:
	crypt32: Use AsnDecodeIntInternal where an internal function is called for.

	* dlls/crypt32/decode.c:
	crypt32: Temporarily change prototype of AsnDecodeIntInternal to the
	CryptDecodeObjectEx form.

	* dlls/crypt32/decode.c:
	crypt32: Use internal decode int function a couple more places.

	* dlls/crypt32/decode.c:
	crypt32: Introduce a space checking helper for functions that don't allocate
	memory and use it where appropriate.

	* dlls/crypt32/decode.c:
	crypt32: Move a comment that belonged elsewhere.

	* dlls/crypt32/decode.c:
	crypt32: Separate DecodeInt into an internal and external version.

	* dlls/crypt32/decode.c:
	crypt32: Use simpler form for internal time decoding functions.

	* dlls/crypt32/decode.c:
	crypt32: Allow items in an array to be indefinite-length encoded.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Support indefinite-length encoded arrays.

	* dlls/crypt32/decode.c:
	crypt32: Set bytes decoded in all success paths.

	* dlls/crypt32/decode.c:
	crypt32: Introduce a helper function to get encoded length that allows
	indefinite-length encoding.

	* dlls/crypt32/decode.c:
	crypt32: Remove an unneeded WINAPI.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded from AsnDecodeArray.

	* dlls/crypt32/decode.c:
	crypt32: Pass bytes decoded pointer to AsnDecodeArray.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded when decoding an alt name entry.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded when copying DER-encoded bytes.

	* dlls/crypt32/decode.c:
	crypt32: Return bytes decoded when decoding a sequence.

	* dlls/crypt32/decode.c:
	crypt32: Make a decode OID function that returns the number of bytes decoded.

	* dlls/crypt32/decode.c:
	crypt32: Add a decoded parameter to AsnDecodeSequence.

	* dlls/crypt32/decode.c:
	crypt32: Use a simpler prototype for array decoding functions.

	* dlls/crypt32/decode.c:
	crypt32: Fix alignment on 64-bit systems.

	* dlls/crypt32/decode.c:
	crypt32: Correct an optimization.

	* dlls/crypt32/decode.c:
	crypt32: Correct GET_LEN_BYTES for the indefinite-length form.

	* dlls/crypt32/tests/encode.c:
	crypt32: Add a test of an indefinite-length sequence.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Update comments.

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

	* dlls/dbghelp/dbghelp.c, include/dbghelp.h:
	dbghelp: Fix the PENUMLOADED_MODULES_CALLBACK() prototype.

	* dlls/dnsapi/query.c, include/windns.h, tools/winapi/win32.api:
	dnsapi: Fix the DnsQueryConfig() prototype.

	* programs/wordpad/wordpad.c:
	wordpad: Fix compilation on systems that don't support nameless unions.

	* include/imagehlp.h:
	imagehlp: Add SYMBOL_INFO_PACKAGE and SymSetSearchPathW().

	* dlls/advapi32/registry.c, include/winreg.h, tools/winapi/win32.api:
	advapi32: Add and use LSTATUS.

	* dlls/shell32/tests/shellpath.c, include/shlobj.h:
	shell32: CSIDL_MYDOCUMENTS is now a synonym for CSIDL_PERSONAL.

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

	* include/dbghelp.h, include/imagehlp.h, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c:
	dbghelp & imagehlp: Fix the PSYM_ENUMSYMBOLS_CALLBACK() and
	PSYM_ENUMERATESYMBOLS_CALLBACK() prototypes.
	Tweak the actual callbacks to better match the prototypes.

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

	* include/dbghelp.h:
	dbghelp: Add some missing prototypes and types.

	* include/imagehlp.h:
	imagehlp: Fix the PTRANSLATE_ADDRESS_ROUTINE() and PREAD_PROCESS_MEMORY_ROUTINE()
	prototypes.

2007-09-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c, include/winuser.h:
	winex11.drv: Use symbolic names for MapVirtualKey translation types.

2007-09-17  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: None of the non-fixed arrays have fixed sizes, so don't set the alignment
	to anything and return a size of 0 from get_required_buffer_size_type.

	* tools/widl/typegen.c:
	widl: Missing size_is or length_is attributes should generate 0xffffffff for
	the correlation description.

2007-09-17  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c:
	advapi32: QueryObjectSecurity should return a self-relative security descriptor
	and not overflow the buffer.

2007-09-16  Gerald Pfeifer <gerald@pfeifer.com>

	* README:
	README: Update minimal system requirements for FreeBSD.

2007-09-17  Juan Lang <juan.lang@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Create a TCP connection if FLAG_ICC_FORCE_CONNECTION is specified.

	* dlls/msi/format.c:
	msi: Initialize nested.

	* dlls/msi/format.c:
	msi: Make sure nested is initialized.

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Don't crash if record has no fields.

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

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move the software blitting to the base surface class.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Give GDI surfaces their own release implementation.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Move lastActiveRenderTarget cleanup to the device.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Give GDI surfaces their own GetDC copy.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move DIB section creation to the base surface implementation.

	* dlls/wined3d/surface.c:
	wined3d: Remove a pbo check.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up IWineD3DSurface::ReleaseDC.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Clean up SetMem.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/texture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up AddDirtyRect.

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

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up SetFormatDesc.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up SetGLTextureDesc and GetGLDesc.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Reorder surface impl predeclarations.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Base surface move, part 2.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move non-rendering surface specific code to the base class.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_base.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move resource methods to the base surface class.

	* dlls/wined3d/Makefile.in, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_base.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Start of some surface cleanup.
	This patch and the following intend to make the surface code more
	manageable and are a preparation to add gl3 support. The code adds a
	new IWineD3DBaseSurface surface type, which will contain the
	non-rendering management code. IWineD3DSurface and IWineGDISurface
	will be derived from IWineD3DBaseSurface, and IWineGL3Surface can be
	added later.

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

	* dlls/winex11.drv/window.c:
	winex11.drv: Invalidate the DCE when the window format is changed.

	* dlls/gdi32/opengl.c, dlls/gdi32/painting.c:
	gdi32: Update the DC in most OpenGL functions.

	* dlls/gdi32/dc.c, dlls/gdi32/font.c, dlls/gdi32/opengl.c:
	gdi32: Replace remaining instance of DC_GetDCUpdate by get_dc_ptr+update_dc.

	* dlls/gdi32/bitblt.c, dlls/gdi32/dib.c:
	gdi32: Replace DC_GetDCUpdate by get_dc_ptr+update_dc in the bitmap functions.

	* dlls/gdi32/painting.c:
	gdi32: Replace DC_GetDCUpdate by get_dc_ptr+update_dc in the painting functions.

	* dlls/gdi32/clipping.c:
	gdi32: Replace DC_GetDCUpdate by get_dc_ptr+update_dc in the clipping functions.

2007-09-15  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/dce.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/x11drv.h:
	wgl: Store the fbconfig id with the window when a pixel format is set.

2007-09-11  Chris Robinson <chris.kcat@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Don't hold the GDI lock when setting the pixel format.

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

	* .gitignore, dlls/itss/tests/Makefile.in, dlls/itss/tests/data.chm,
	  dlls/itss/tests/rsrc.rc:
	itss/tests: We can now store binary files in the repository.

	* .gitignore, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/resource.rc, dlls/user32/tests/test_mono.bmp:
	user32/tests: We can now store binary files in the repository.

	* .gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/bmp128x15.bmp, dlls/comctl32/tests/bmp80x15.bmp,
	  dlls/comctl32/tests/rsrc.rc:
	comctl32/tests: We can now store binary files in the repository.

	* .gitignore, dlls/cards/Makefile.in, dlls/cards/b1fv.bmp,
	  dlls/cards/b2fv.bmp, dlls/cards/c1.bmp, dlls/cards/c10.bmp,
	  dlls/cards/c2.bmp, dlls/cards/c3.bmp, dlls/cards/c4.bmp,
	  dlls/cards/c5.bmp, dlls/cards/c6.bmp, dlls/cards/c7.bmp,
	  dlls/cards/c8.bmp, dlls/cards/c9.bmp, dlls/cards/cards.rc,
	  dlls/cards/cj.bmp, dlls/cards/ck.bmp, dlls/cards/cq.bmp,
	  dlls/cards/d1.bmp, dlls/cards/d10.bmp, dlls/cards/d2.bmp,
	  dlls/cards/d3.bmp, dlls/cards/d4.bmp, dlls/cards/d5.bmp,
	  dlls/cards/d6.bmp, dlls/cards/d7.bmp, dlls/cards/d8.bmp,
	  dlls/cards/d9.bmp, dlls/cards/dj.bmp, dlls/cards/dk.bmp,
	  dlls/cards/dq.bmp, dlls/cards/free.bmp, dlls/cards/h1.bmp,
	  dlls/cards/h10.bmp, dlls/cards/h2.bmp, dlls/cards/h3.bmp,
	  dlls/cards/h4.bmp, dlls/cards/h5.bmp, dlls/cards/h6.bmp,
	  dlls/cards/h7.bmp, dlls/cards/h8.bmp, dlls/cards/h9.bmp,
	  dlls/cards/hj.bmp, dlls/cards/hk.bmp, dlls/cards/hq.bmp,
	  dlls/cards/s1.bmp, dlls/cards/s10.bmp, dlls/cards/s2.bmp,
	  dlls/cards/s3.bmp, dlls/cards/s4.bmp, dlls/cards/s5.bmp,
	  dlls/cards/s6.bmp, dlls/cards/s7.bmp, dlls/cards/s8.bmp,
	  dlls/cards/s9.bmp, dlls/cards/sj.bmp, dlls/cards/sk.bmp,
	  dlls/cards/sq.bmp, dlls/cards/theo.bmp, dlls/cards/thex.bmp:
	cards: We can now store binary files in the repository.

	* .gitignore, dlls/msi/Makefile.in, dlls/msi/instabsent.bmp,
	  dlls/msi/instadvert.bmp, dlls/msi/instlocal.bmp, dlls/msi/msi.rc:
	msi: We can now store binary files in the repository.

	* .gitignore, dlls/ole32/Makefile.in, dlls/ole32/drag_copy.cur,
	  dlls/ole32/drag_link.cur, dlls/ole32/drag_move.cur,
	  dlls/ole32/nodrop.cur, dlls/ole32/ole32res.rc:
	ole32: We can now store binary files in the repository.

	* .gitignore, dlls/shell32/Makefile.in, dlls/shell32/cdrom.ico,
	  dlls/shell32/delete.ico, dlls/shell32/desktop.ico,
	  dlls/shell32/document.ico, dlls/shell32/drive.ico,
	  dlls/shell32/floppy.ico, dlls/shell32/folder.ico,
	  dlls/shell32/folder_open.ico, dlls/shell32/mycomputer.ico,
	  dlls/shell32/mydocs.ico, dlls/shell32/netdrive.ico,
	  dlls/shell32/netdrive2.ico, dlls/shell32/printer.ico,
	  dlls/shell32/ramdisk.ico, dlls/shell32/searching.avi,
	  dlls/shell32/shortcut.ico, dlls/shell32/shres.rc,
	  dlls/shell32/trash_file.ico:
	shell32: We can now store binary files in the repository.

	* .gitignore, dlls/user32/Makefile.in, dlls/user32/resources/display.rc,
	  dlls/user32/resources/obm_btncorners.bmp,
	  dlls/user32/resources/obm_btsize.bmp,
	  dlls/user32/resources/obm_check.bmp,
	  dlls/user32/resources/obm_checkboxes.bmp,
	  dlls/user32/resources/obm_close.bmp,
	  dlls/user32/resources/obm_combo.bmp,
	  dlls/user32/resources/obm_dnarrow.bmp,
	  dlls/user32/resources/obm_dnarrowd.bmp,
	  dlls/user32/resources/obm_dnarrowi.bmp,
	  dlls/user32/resources/obm_lfarrow.bmp,
	  dlls/user32/resources/obm_lfarrowd.bmp,
	  dlls/user32/resources/obm_lfarrowi.bmp,
	  dlls/user32/resources/obm_mnarrow.bmp,
	  dlls/user32/resources/obm_old_close.bmp,
	  dlls/user32/resources/obm_old_dnarrow.bmp,
	  dlls/user32/resources/obm_old_lfarrow.bmp,
	  dlls/user32/resources/obm_old_reduce.bmp,
	  dlls/user32/resources/obm_old_restore.bmp,
	  dlls/user32/resources/obm_old_rgarrow.bmp,
	  dlls/user32/resources/obm_old_uparrow.bmp,
	  dlls/user32/resources/obm_old_zoom.bmp,
	  dlls/user32/resources/obm_reduce.bmp,
	  dlls/user32/resources/obm_reduced.bmp,
	  dlls/user32/resources/obm_restore.bmp,
	  dlls/user32/resources/obm_restored.bmp,
	  dlls/user32/resources/obm_rgarrow.bmp,
	  dlls/user32/resources/obm_rgarrowd.bmp,
	  dlls/user32/resources/obm_rgarrowi.bmp,
	  dlls/user32/resources/obm_size.bmp,
	  dlls/user32/resources/obm_trtype.bmp,
	  dlls/user32/resources/obm_uparrow.bmp,
	  dlls/user32/resources/obm_uparrowd.bmp,
	  dlls/user32/resources/obm_uparrowi.bmp,
	  dlls/user32/resources/obm_zoom.bmp,
	  dlls/user32/resources/obm_zoomd.bmp,
	  dlls/user32/resources/ocr_appstarting.cur,
	  dlls/user32/resources/ocr_cross.cur,
	  dlls/user32/resources/ocr_dragobject.cur,
	  dlls/user32/resources/ocr_hand.cur,
	  dlls/user32/resources/ocr_help.cur,
	  dlls/user32/resources/ocr_ibeam.cur,
	  dlls/user32/resources/ocr_icon.cur, dlls/user32/resources/ocr_no.cur,
	  dlls/user32/resources/ocr_normal.cur,
	  dlls/user32/resources/ocr_size.cur,
	  dlls/user32/resources/ocr_sizeall.cur,
	  dlls/user32/resources/ocr_sizenesw.cur,
	  dlls/user32/resources/ocr_sizens.cur,
	  dlls/user32/resources/ocr_sizenwse.cur,
	  dlls/user32/resources/ocr_sizewe.cur,
	  dlls/user32/resources/ocr_up.cur, dlls/user32/resources/ocr_wait.cur,
	  dlls/user32/resources/oic_bang.ico,
	  dlls/user32/resources/oic_hand.ico,
	  dlls/user32/resources/oic_note.ico,
	  dlls/user32/resources/oic_ques.ico,
	  dlls/user32/resources/oic_sample.ico,
	  dlls/user32/resources/oic_winlogo.ico,
	  dlls/user32/resources/user32_bin.rc:
	user32: We can now store binary files in the repository.

	* .gitignore, dlls/comdlg32/800.bmp, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/cdlg_xx.rc, dlls/comdlg32/cdrom.ico,
	  dlls/comdlg32/floppy.ico, dlls/comdlg32/folder.ico,
	  dlls/comdlg32/folder2.ico, dlls/comdlg32/fontpics.bmp,
	  dlls/comdlg32/hdisk.ico, dlls/comdlg32/network.ico,
	  dlls/comdlg32/pd32_collate.ico, dlls/comdlg32/pd32_landscape.ico,
	  dlls/comdlg32/pd32_nocollate.ico, dlls/comdlg32/pd32_portrait.ico:
	comdlg32: We can now store binary files in the repository.

	* .gitignore, dlls/comctl32/Makefile.in, dlls/comctl32/idb_hist_large.bmp,
	  dlls/comctl32/idb_hist_small.bmp, dlls/comctl32/idb_std_large.bmp,
	  dlls/comctl32/idb_std_small.bmp, dlls/comctl32/idb_view_large.bmp,
	  dlls/comctl32/idb_view_small.bmp, dlls/comctl32/idc_copy.cur,
	  dlls/comctl32/idc_divider.cur, dlls/comctl32/idc_divideropen.cur,
	  dlls/comctl32/idc_movebutton.cur, dlls/comctl32/idi_dragarrow.ico,
	  dlls/comctl32/idi_tt_error_sm.ico, dlls/comctl32/idi_tt_info_sm.ico,
	  dlls/comctl32/idi_tt_warn_sm.ico, dlls/comctl32/idt_check.bmp,
	  dlls/comctl32/rsrc.rc:
	comctl32: We can now store binary files in the repository.

2007-09-07  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/freetype.c:
	gdi32: Return the correct font type, ntmFlags and PitchAndFamily for Type1 fonts.

	* dlls/gdi32/font.c:
	gdi32: If freetype fails try to load manually fonts wrapped as PE resources.

2007-09-13  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h,
	  include/wingdi.h:
	gdi32: Implement AddFontMemResourceEx (based on a patch of Byeong-Sik Jeon).

2007-09-06  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/freetype.c:
	gdi32: Store child font links as pointers to struct Face instead of
	filename/index.

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

	* dlls/user32/tests/win.c:
	user32/tests: Properly flush events in the update rect tests.

2007-09-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/crypt32/msg.c, dlls/crypt32/rootstore.c:
	crypt32: Fix some memory leaks.

2007-09-14  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/shell32/shlfileop.c, dlls/wined3d/surface.c:
	janitorial: Remove two fresh redundant NULL checks before HeapFree(). Found
	by Smatch.

2007-09-16  Peter Oberndorfer <kumbayo84@arcor.de>

	* aclocal.m4, configure:
	configure: Recognize i686-mingw32 prefix for crosscompiling.

2007-09-15  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/riched20/writer.c:
	riched20: Prevent overflow on richedit debug channel.

	* dlls/iccvid/iccvid.c:
	iccvid: Guard against null pointer reference.

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

	* dlls/ntdll/file.c:
	ntdll: Fix an error message.

2007-09-16  James Hawkins <truiken@gmail.com>

	* dlls/kernel32/heap.c, dlls/kernel32/tests/heap.c,
	  dlls/user32/tests/dde.c:
	kernel32: Return TRUE for all pointer params in GlobalUnlock.

	* dlls/kernel32/heap.c, dlls/kernel32/tests/heap.c,
	  dlls/user32/tests/dde.c:
	kernel32: Fix the case where memory is freed twice in GlobalFree.

	* dlls/user32/dde_misc.c, dlls/user32/tests/dde.c:
	user32: Set uiLo and uiHi to zero on error.

	* dlls/user32/tests/dde.c:
	user32: Add tests for the DDE pack functions.

2007-09-17  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix write_string_tfs for strings declared as arrays.
	The immediate type will be FC_*ARRAY, so rtype needs to use the referred
	type to get the base type.
	Also update the typeformat-string offset of the type.

	* tools/widl/typegen.c:
	widl: Add support for strings embedded in structures.

2007-09-16  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.y:
	widl: Fix detection of complex arrays.

	* tools/widl/parser.y:
	widl: Initialise cval in make_expr.

	* dlls/credui/credui_main.c:
	credui: The pszUserName parameter in CredUIPromptForCredentialsW is in/out so
	dump the string on entry to the function.

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

	* dlls/wininet/ftp.c:
	wininet/ftp: There's no need to query the file size before retrieving a file.

2007-09-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Add pbo support for compressed textures.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Update list of pci ids.

2007-09-15  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Don't create a pbo for system memory surfaces.

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

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Make HTMLBodyElement child object of HTMLTextContainer.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmltextarea.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLTextAreaElement.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLSelectElement.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLInputElement.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added get_body test.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLBodyElement.

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement struct instead of pointer in HTMLAnchorElement.

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

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

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

2007-09-14  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/txtrange.c:
	mshtml: Move 'inline' to the beginning of the declaration directly after the
	storage specifier.

2007-09-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Do not invalidate the sysmem copy if a pbo exists.

	* dlls/wined3d/surface.c:
	wined3d: Do not allocate memory if there's a pbo.

2007-09-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Use GL_NV_depth_clamp to implement clipping disable.

	* dlls/wined3d/state.c:
	wined3d: Add a fixme for D3DCMP_NOTEQUAL and D3DCMP_EQUAL.

	* include/d3d9types.h:
	wined3d: Add D3DSI_TEXLD_PROJECT and BIAS to d3d9types.h.

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

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

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

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Anonymous FTP can succeed without a password.

2007-09-06  Vincent Povirk <madewokherd@gmail.com>

	* dlls/shell32/shell32_main.c, dlls/shell32/shlfileop.c,
	  dlls/shell32/tests/shlfileop.c:
	shell32: Implement SHPathPrepareForWrite.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHPathPrepareForWrite.

2007-09-06  Vincent Povirk <madewokherd+d41d@gmail.com>

	* include/shlobj.h:
	shell32: Add SHPathPrepareForWrite and related constants.

2007-09-13  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/nt.c,
	  include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	server: Add get_token_statistics server call and use it to implement the
	TokenStatistics and TokenType levels for NtQueryInformationToken.

2007-09-13  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Add padding to the end of complex structures.

2007-09-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c:
	comdlg32: Fix some memory leaks.

	* dlls/comctl32/treeview.c:
	comctl32: Fix a memory leak.

2007-09-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: The D3DSI_COISSUE flag changes the behavior of cnd.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix texdp3tex in glsl.

	* dlls/d3d9/tests/visual.c:
	wined3d: Add a test for the cnd instruction.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add support for showing a logo.

2007-09-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Pixel shader 1.x constants are clamped to [-1;1].

2007-09-13  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/file.c:
	ntdll: Add a stub implementation of FSCTL_PIPE_IMPERSONATE that just impersonates
	the token of the current process.

	* dlls/advapi32/security.c:
	advapi32: Fix ImpersonateNamedPipeClient to pass in a pointer to an
	IO_STATUS_BLOCK to NtFsControl.
	Otherwise, NtFsControl file won't do anything except return
	STATUS_INVALID_PARAMETER.

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

	* dlls/comctl32/propsheet.c:
	propsheet: Do not change idea of size when new pages are added.

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

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

2007-09-11  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Edit control should respond to ctrl + z.

2007-09-12  Americo Jose Melo <mmodem00@gmail.com>

	* dlls/comctl32/comctl_Fr.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/oleaut32/oleaut32_Pt.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/winmm/winmm_Pt.rc, programs/winecfg/Pt.rc,
	  programs/wineconsole/wineconsole_Pt.rc, programs/winefile/Pt.rc,
	  programs/winhelp/Pt.rc:
	Update the Portuguese translation.

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

	* dlls/mshtml/htmlanchor.c, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLDOMNode struct instead of pointer in HTMLElement object.

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

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

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLAnchorElement.

2007-09-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c:
	shell32: Constify some variables.

2007-09-13  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a major ATI regression.
	ATI's latest drivers (8.41.7) don't advertise visualids anymore for GLXFBConfigs.

2007-09-12  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Fix an unused parameter warning on write_conf_or_var_desc.

	* tools/widl/typegen.c:
	widl: Add calls to NdrFooFree for more types in server stubs.

	* tools/widl/typegen.c:
	widl: Use the correct functions for interface pointers in stubs.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Implement UpdateTexture for volumes.

2007-09-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: texm3x3(v)spec normalizes the normal vector.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c:
	wined3d: Disable some volume texture formats.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Convert the colors to the surface format for colorfill.

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

	* dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLTxtRange::put_text tests.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::move("word") implementation.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::moveEnd implementation.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::move("character") implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Fixed ref count in parentElement.

	* dlls/mshtml/tests/dom.c, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::expand implementation.

	* dlls/mshtml/tests/dom.c:
	mshtml: Added IHTMLTxtRange tests.

	* dlls/mshtml/txtrange.c:
	mshtml: Reimplement IHTMLTxtRange::get_text.

2007-08-31  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/setupapi/query.c:
	setupapi: Fix memory leak (found by Smatch).

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

	* dlls/crypt32/rootstore.c:
	crypt32: We don't consider sys/types.h to be a conditional include.

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

2007-09-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Add PBO support for dynamically locked surfaces.

2007-09-11  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Prevent white flickering on window resize.

2007-09-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Clean up font effects toggling code.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Resize rebar control on window resize.

	* programs/wordpad/wordpad.c:
	wordpad: Remove RB_SIZETORECT call.

2007-09-07  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: More error handling for printing/print preview.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Allow changing font effects in the choose font dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add replace dialog.

2007-08-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Set icon according to format.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add font dialog.

2007-08-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add font size list.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add font list.

2007-09-12  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c:
	avifil32: Fix some memory leaks.

2007-09-12  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Don't prefer native version.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Implement WinVerifyTrust.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Partially implement SoftpubAuthenticode.

	* dlls/wintrust/softpub.c:
	wintrust: Save signer cert so chain can be created.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SoftpubCleanup.

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

	* dlls/gdi32/enhmfdrv/dc.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/mfdrv/init.c,
	  dlls/gdi32/mfdrv/metafiledrv.h:
	gdi32: Don't store a DC pointer in the metafile devices.

	* dlls/kernel32/path.c:
	kernel32: GetTempPath should try the USERPROFILE and the Windows directory too.

2007-09-06  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/advapi32/service.c:
	advapi32: Replace SERV_free by HeapFree.

	* dlls/setupapi/stringtable.c:
	setupapi: Fix HeapFree of wrong pointer (found by Smatch).

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

	* dlls/mshtml/En.rc, dlls/mshtml/editor.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/resource.h:
	mshtml: Implement IDM_HYPERLINK.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c:
	mshtml: Implement PersistStreamInit_IsDirty when in edit mode.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Store the nsIEditor interface in the NSContainer object for use in
	implementing editor commands.

	* dlls/ole32/compobj.c:
	ole32: Fix the default unload delay to depend on the threading model of the
	component loaded.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec, include/objbase.h:
	ole32: Implement CoFreeUnusedLibrariesEx.
	Fix CoFreeUnusedLibraries to use a delay of 10 minutes when used with
	multi-threaded apartments.

2007-08-23  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add initial print preview support.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add view options dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add about window.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add context menu.

	* programs/wordpad/wordpad.c:
	wordpad: Add support for printing a page range.

	* programs/wordpad/wordpad.c:
	wordpad: Re-order format clearing when selecting new file.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add quick print support.

	* programs/wordpad/wordpad.c:
	wordpad: Store page margins in the registry.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add page setup dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add initial printing support.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add tab stops dialog.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add paragraph format dialog.

2007-08-22  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Set default font according to format.

	* programs/wordpad/wordpad.c:
	wordpad: Support drag-and-drop.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Store bar states in the registry.

2007-09-11  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Remove improper comment and dead code from SetPixelFormat.

	* dlls/winex11.drv/opengl.c:
	winex11: Remove useless checks from wglCreateContext.

	* dlls/winex11.drv/opengl.c:
	winex11: Free visual info stored with the context.

2007-09-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Constify some variables.

	* dlls/shell32/shell.c:
	shell32: Constify a variable.

2007-09-11  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Fix redirect ordering on a command line.

	* programs/cmd/builtins.c:
	cmd.exe: Add basic support for FOR /F parsing launched programs output.

	* programs/cmd/builtins.c:
	cmd.exe: Add basic for /F string support.

	* programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	cmd.exe: Add suport for if 1==1 echo yes.

	* programs/cmd/batch.c:
	cmd.exe: Allow = and , to be delimiters.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Expand for variables at last with tilda modifications.

	* programs/cmd/builtins.c:
	cmd.exe: Enhance FOR support.

2007-09-11  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't assume just one on-screen pixel format.

	* dlls/winex11.drv/opengl.c:
	winex11: Simplify ConvertPixelFormatWGLtoGLX.

	* dlls/winex11.drv/opengl.c:
	winex11: Don't choose pixel formats with incorrect doublebuffer/stereo settings.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/texture.c, dlls/d3d9/tests/visual.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Implement mipmap auto generation.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Implement texbeml.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Emulate D3DFMT_L6V5U5.

	* dlls/wined3d/directx.c:
	wined3d: Disable W11V11U10 and A2W10V10U10.

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

	* dlls/kernel32/tests/comm.c:
	kernel32: Skip the comm test if the found com port doesn't respond.

	* dlls/gdi32/freetype.c:
	gdi32: Use lower case font dir name to match unix directory layout.

	* dlls/shell32/shlfolder.c:
	shell32: Remove class cache introduced in commit
	f686cfab2feb9010efe82a932dc9f5904566c8ab.

2007-09-11  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmband/regsvr.c:
	dmband: Remove 'recursive registry key delete' function.

	* dlls/dmcompos/regsvr.c:
	dmcompos: Remove 'recursive registry key delete' function.

2007-09-11  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/chain.c:
	crypt32: Make chain tests more strict.

	* dlls/crypt32/chain.c:
	crypt32: Set subject's info status from method used to find issuer.

	* dlls/crypt32/chain.c:
	crypt32: Pass subject's info status when adding an issuer to a chain.

	* dlls/crypt32/chain.c:
	crypt32: Only decode authority key ID in subject cert once when looking
	for issuer.

	* dlls/crypt32/chain.c:
	crypt32: (Re)introduce helper function to get issuer certificate.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Validate pad byte when decrypting a block cipher.

2007-09-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add a timer check to capture to see if play notifications have
	been triggered.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add support for capture notification positions.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add stubs for IDsCaptureDriverNotify.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Use nBLockAlign instead of snd_pcm_bytes_to_frames to get buffer size.

2007-09-11  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix a trace in RPCRT4_SecurePacket.

	* dlls/crypt32/rootstore.c:
	crypt32: Fix a compile failure on *BSD systems.
	Include limits.h for the definition of PATH_MAX.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Correctly handle the failure of RPCRT4_SecurePacket in RPCRT4_Receive.

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

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  include/Makefile.in, include/i_cryptasn1tls.h:
	crypt32: Fix the I_Crypt*Asn1*() prototypes. Add the i_cryptasn1tls.h header
	and use it.

	* dlls/wintrust/softpub.c, dlls/wintrust/tests/asn.c,
	  dlls/wintrust/tests/softpub.c:
	wintrust: Fix compilation on systems that don't support nameless unions.

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

	* dlls/wldap32/wldap32_Fr.rc:
	wldap32: Fix a typo in the French resources.

	* tools/winapi/win32.api:
	winapi_check: 'char*' is a string, not a pointer.

2007-09-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Move the memory code of LockRect to the end of the function.
	This is needed for PBOs because for those memory allocation works differently.

2007-09-10  Rob Shearman <rob@codeweavers.com>

	* .gitignore, dlls/ole32/Makefile.in, dlls/ole32/irot.idl,
	  dlls/ole32/moniker.c, include/wine/irot.idl,
	  programs/rpcss/Makefile.in, programs/rpcss/irot.idl,
	  programs/rpcss/irotp.c, programs/rpcss/rpcss_main.c,
	  tools/make_makefiles:
	ole32: Add cross-process running-object table support.

2007-09-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Fix WINED3DFMT_X8L8V8U8.

2007-08-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: texkill ignores the .w only in ps 1.x.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private_types.h:
	wined3d: Implement texldb.

2007-08-31  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix texdepth instruction.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix the z range.

2007-09-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/mixer.c, dlls/dsound/primary.c:
	dsound: Support arbitrarily sized buffers for waveout.

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

	* dlls/dsound/primary.c:
	dsound: Fix overshot calculations.

2007-09-10  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/shell32_main.h:
	shell32: Constify some variables.

2007-09-10  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement CertVerifyCertificateChainPolicy for the basic constraints
	policy.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement CertVerifyCertificateChainPolicy for the authenticode policy.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Implement CertVerifyCertificateChainPolicy for the base policy.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add initial tests for CertVerifyCertificateChainPolicy.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec:
	crypt32: Add a stub for CertVerifyCertificateChainPolicy.

	* include/wincrypt.h:
	crypt32: Add policy flags definitions.

	* dlls/crypt32/decode.c:
	crypt32: Support CRYPT_DECODE_TO_BE_SIGNED_FLAG.

	* dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c,
	  dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Support setting the effective key length of RC2 keys.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Call setup_key whenever the IV is reset.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Reorder padding code to avoid unnecessary comparison.

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

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Tests for OpenPort and ClosePort.

	* dlls/localspl/localmon.c:
	localspl: Implement OpenPort and ClosePort.

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

	* dlls/dinput/dinput_main.c:
	dinput: When setting hooks ignore devices without even handler.

	* dlls/dinput/mouse.c:
	dinput: Add helper function to dump mouse state.

2007-08-31  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/faultrep/Makefile.in, dlls/faultrep/faultrep.c,
	  dlls/faultrep/faultrep.spec:
	faultrep: Implement AddERExcludedApplication[AW].

	* include/Makefile.in, include/errorrep.h:
	include: Add errorrep.h header.

2007-08-31  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, programs/winecfg/audio.c:
	dsound: Change default bpp and sample frequency to be better for the ears.

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

	* libs/wine/debug.c, libs/wine/loader.c:
	libwine: Initialize debug channels options on first use.

2007-09-10  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/rootstore.c, dlls/crypt32/store.c:
	crypt32: Add a root store implementation that reads trusted certificates from
	well-known locations on the local system.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32_private.h:
	crypt32: Add a function to create a certificate chain engine potentially before
	the root store is created.

2007-09-11  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmime/regsvr.c:
	dmime: Remove 'recursive registry key delete' function.

	* dlls/dmloader/regsvr.c:
	dmloader: Remove 'recursive registry key delete' function.

2007-09-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* server/file.c:
	server: Map ETXTBSY to STATUS_SHARING_VIOLATION.

2007-09-10  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/widl.c:
	widl: Output UUID files compatible with older Visual C++ and MinGW.

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

	* dlls/kernel32/time.c:
	kernel32: Use sysconf instead of the obsolete CLK_TCK.

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

	* dlls/user32/defwnd.c:
	user32: Don't exit when double-clicking with right button held.

2007-09-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/olethk32/Makefile.in, dlls/olethk32/main.c,
	  dlls/olethk32/olethk32.spec, dlls/olethk32/version.rc:
	olethk32: Added stub implementation.

2007-09-06  Lei Zhang <thestig@google.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Do not pass NULL lParam to ME_ToUnicode for EM_REPLACESEL.

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

	* dlls/winex11.drv/mouse.c:
	winex11drv: Don't ignore mouse move events even when position did not change.

2007-09-04  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/treeview.c:
	comctl32: treeview: Ensure our textWidth is correct when returning the size
	of the text box.

	* dlls/comctl32/treeview.c:
	comctl32: Ensure item metric are calculated when an item becomes visible.

2007-09-03  Lionel Debroux <lionel_debroux@yahoo.fr>

	* programs/regedit/listview.c:
	regedit: Fixed a memory leak in listview.c (found by Smatch).

	* dlls/dplayx/dplay.c:
	dplayx: Fixed memory leak in dplay.c (found by Smatch).

2007-09-01  Lionel Debroux <lionel_debroux@yahoo.fr>

	* tools/winedump/msmangle.c:
	winedump: Fix memory leak in msmangle.c (found by Smatch).

	* dlls/ole32/compositemoniker.c:
	ole32: Fix memory leak in compositemoniker.c (found by Smatch).

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

	* dlls/dsound/regsvr.c:
	dsound: Runtime link to advapi32.RegDeleteTree.

2007-09-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Fix ddraw-opengl surface free bug.

2007-09-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dplayx/regsvr.c:
	dplayx: Remove 'recursive registry key delete' function.

2007-09-07  David Hedberg <david.hedberg@gmail.com>

	* dlls/ddraw/direct3d.c, dlls/ddraw/tests/d3d.c:
	ddraw: Enumerate additional devices in IDirect3D7_EnumDevices.

2007-09-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add X4R4G4B4 and A4R4G4B4 to formats allowed in getColorBits.

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

	* dlls/shdocvw/iexplore.c:
	shdocvw: Better iexplore.exe command line handling.

	* dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added better GoHome stub implementation.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Don't use BSTR in navigate_url prototype.

	* dlls/urlmon/umon.c:
	urlmon: Added FIXME about unsupported pmkToLeft to BindToStorage.

	* dlls/winex11.drv/winex11.drv.spec:
	winex11: Fixed GetClipboardFormatName spec entry.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::isEqual implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::inRange implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::parentElement implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/service.c:
	mshtml: Added IOleUndoManager stub implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Call Exec in show_context_menu only if user selected menu item.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added UpdateUI implementation.

2007-09-07  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Ko.rc,
	  dlls/mshtml/Nl.rc, dlls/mshtml/No.rc, dlls/mshtml/Sv.rc,
	  dlls/mshtml/Tr.rc:
	mshtml: Make the Install button the default on the Gecko installation dialog.

	* dlls/mshtml/install.c:
	mshtml: Hide the progress bar while asking the user if Gecko should be installed.

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

	* dlls/wined3d/directx.c:
	wined3d: Add WINED3DPRESENT_INTERVAL_ONE flag.

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

	* dlls/kernel32/time.c:
	kernel32: Remove an unused #define in time.c.

	* dlls/ntdll/time.c:
	ntdll: Remove the overly-cautious check which prevented NtSetSystemTime from
	changing the time by more than two minutes.
	Simplify the returning of different status codes by not playing around
	with the return value from settimeofday.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Fix IUnknown_OnFocusOCS to call OnFocus instead of GetExtendedControl.

2007-09-07  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/init.c:
	wineps.drv: Ignore an empty output string.

2007-09-06  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Consider alternate issuers when building chains.

	* dlls/crypt32/chain.c:
	crypt32: Flags weren't set, so don't bother passing them.

	* dlls/crypt32/chain.c:
	crypt32: Defer checking signatures until chain is complete.

	* dlls/crypt32/chain.c:
	crypt32: Don't ask CertGetIssuerCertificateFromStore to verify revocation
	status, it almost certainly doesn't do what we want.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't abort chain creation if the root signature isn't valid.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Add special case for certificates with no signature algorithm.

	* dlls/crypt32/tests/chain.c:
	crypt32: Remove a misplaced todo_wine.

	* dlls/crypt32/chain.c:
	crypt32: Set *ppChainContext even on error.

	* dlls/crypt32/tests/chain.c:
	crypt32: Test whether chain creation should fail when a root signature is
	invalid.

	* dlls/crypt32/chain.c:
	crypt32: Separate allocating a simple chain and checking it from building it.

	* dlls/crypt32/chain.c:
	crypt32: Store world store in chain.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Not finding an issuer shouldn't cause chain creation to fail.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't add end cert's store to world.

	* dlls/crypt32/chain.c:
	crypt32: Open world store when creating chain, not when building a simple chain.

	* dlls/crypt32/chain.c:
	crypt32: Make a helper function to create initial candidate chain.

	* dlls/crypt32/tests/chain.c:
	crypt32: Test that the end cert in a chain's store isn't implicitly searched
	for issuers.

	* dlls/crypt32/context.c, dlls/crypt32/tests/cert.c:
	crypt32: Add more tests for getting issuer cert from store.
	Show that certificates are added to memory stores at the head rather
	than the tail.

2007-09-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/cabinet/fdi.c:
	cabinet: Remove unnecessary function.

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

	* dlls/dsound/primary.c:
	dsound: Fix detection of different sample rates in setformat.

2007-09-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c:
	dsound: Fix null pointer dereference for waveout in creating buffer.

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

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Remove forceformat and 2 orphan LeaveCriticalSection.

2007-09-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Use correct capture position in getposition.

2007-09-05  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/comctl32.h, dlls/comctl32/rsrc.rc:
	comctl32: Flesh out version info.

	* dlls/imm32/imm.c:
	imm32: Further tweeks to CFS_POINT and CFS_RECT placement of the default
	ime window.

2007-09-04  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/tab.c, dlls/comctl32/tests/tab.c:
	comctl32: TCM_SETCURSEL also updates the focus item.

2007-09-03  David Hedberg <david.hedberg@gmail.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Fix and test case for situation where DDSD_MIPMAPCOUNT is set and
	dwMipMapCount is 0.

	* tools/wine.inf:
	wine.inf: Add oledlg.dll to the list of fake dlls.

2007-09-04  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Allow size_is on strings.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Implement NDR for struct field alignment.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Fix top-level and callback conformances.

2007-09-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* server/file.c, server/sock.c:
	server: Print a more informative message when file_set_error or sock_get_error
	can't map errno to a status code.

	* dlls/kernel32/resource.c:
	kernel32: Fix some compiler warnings.

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c,
	  dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Duplicate shell32.ShellMessageBoxW implementation in
	shlwapi.ShellMessageBoxWrapW.

	* tools/winebuild/utils.c:
	winebuild: Add IMAGE_FILE_32BIT_MACHINE flag for a 32-bit build.

	* dlls/user32/tests/win.c:
	user32: Add more tests for GetUpdateRect.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/fontdlg.c:
	comdlg32: ChooseFont: Set font effects on init.

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

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

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

	* include/ntquery.h:
	query: Make ntquery.h C++ compatible.
	Add missing prototypes.
	Add a commented-out #include directive as a reminder.

	* dlls/url/url.spec, dlls/url/url_main.c, include/Makefile.in,
	  include/intshcut.h:
	url: Fix the InetIsOffline() prototype.
	Add a skeleton intshcut.h header declaring InetIsOffline(), and use it.

	* include/ntsecapi.h:
	secur32: Add some missing prototypes to ntsecapi.h.

	* include/wincrypt.h, tools/winapi/win32.api:
	crypt32: Better match the PSDK types and fix the winapi_check warnings.

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

	* tools/winapi/win16.api, tools/winapi/win32.api:
	winapi_check: Assorted win16.api and win32.api updates.

	* dlls/kernel32/locale.c, dlls/version/info.c, dlls/version/install.c,
	  include/winver.h, tools/winapi/win32.api:
	version: Fix some Ver*() prototypes (especially wrt constness).
	Better match the PSDK types and fix the winapi_check warnings.

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

	* include/errors.h:
	quartz: Make errors.h more complete and better match the PSDK types.

	* include/shobjidl.idl:
	shobjidl.h: Add missing #include directives, and some commented-out ones
	as reminders.

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

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

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

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

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

	* dlls/wined3d/drawprim.c:
	wined3d: Supply texture coords even if no texture is bound and pshaders are used.

2007-08-31  Rob Shearman <rob@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Don't use the working directory passed into ShellExecute* functions
	if it isn't valid.

2007-08-30  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Check path length constraint on a chain.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Set error status on issued certificate, not on issuer.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Check whether each signing certificate can be a CA.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Check time of each element in chain against requested time.

	* dlls/crypt32/chain.c:
	crypt32: Time validity nesting doesn't appear to be checked, so don't check it.

	* dlls/crypt32/chain.c:
	crypt32: Correct combining trust status of a chain's elements into the chain's
	trust status.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't fail chain creation if signature doesn't match.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Don't fail chain creation if root isn't self-signed.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Halt chain creation when a cycle is detected.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertDuplicateCertificateChain.

	* dlls/crypt32/chain.c:
	crypt32: Remove unneeded WINAPI from internal function.

	* dlls/crypt32/chain.c:
	crypt32: Free lower quality chain contexts.

	* dlls/crypt32/chain.c:
	crypt32: Check chain root's trusted status regardless of whether its signature
	is valid.

	* dlls/crypt32/chain.c:
	crypt32: Properly reference count certificate contexts referenced by a chain.

	* dlls/crypt32/chain.c:
	crypt32: Add a default cycle detection modulus.

	* dlls/crypt32/chain.c:
	crypt32: The preferred issuer flag appears to be a bug in XP, so don't set it.

2007-08-31  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/chain.c:
	crypt32: Greatly expand certificate chain tests.

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

	* dlls/gdi32/bitmap.c, dlls/gdi32/clipping.c, dlls/gdi32/dc.c,
	  dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/mfdrv/init.c:
	gdi32: New DC locking mechanism that doesn't require holding the global GDI lock.

2007-08-30  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/winex11.drv/wintab.c:
	winex11.drv: wintab: Copy also the button #0 state.

	* dlls/user32/combo.c, dlls/user32/tests/combo.c:
	user32: combo: CB_SETITEMHEIGHT should make the edit area 2px higher than the
	item (with testcase).

2007-08-31  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Fix memory leak in create_cursor (found by Smatch).

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

	* programs/clock/ChangeLog, programs/progman/ChangeLog,
	  programs/winhelp/ChangeLog:
	programs: Remove other obsolete ChangeLog files.

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

	* programs/notepad/ChangeLog:
	notepad: Get rid of ChangeLog file.

	* programs/notepad/dialog.c:
	notepad: We pass OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST to GetOpenFileName,
	so there is no point in testing file existence.

2007-08-30  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Support GdiAlphaBlend with blendfn.AlphaFormat == 0.

2007-08-31  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: Add tests for DebugActiveProcessStop() and
	DebugSetProcessKillOnExit().

	* dlls/kernel32/tests/debugger.c, server/debugger.c:
	server: Fix the crashed process exit code when the debugger exits without
	detaching. Add a conformance test.

	* dlls/kernel32/tests/debugger.c, programs/winedbg/tgt_active.c:
	winedbg: 'winedbg --auto' and 'winedbg --minidump' should detach when done so
	as to not mess up the crashed process exit code.

	* include/Makefile.in, include/bcrypt.h, include/wincrypt.h:
	bcrypt: Add a skeleton bcrypt.h header and use it.

	* programs/winedbg/winedbg.c:
	winedbg: Detach from the debuggee before exiting.

2007-08-31  Francois Gouget <fgouget@free.fr>

	* include/wininet.h:
	wininet: Remove the occasional parameter name in the prototypes.

2007-08-31  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmscript/regsvr.c:
	dmscript: Remove 'recursive registry key delete' function.

	* dlls/dmstyle/regsvr.c:
	dmstyle: Remove 'recursive registry key delete' function.

2007-08-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c:
	wined3d: Raise the 1x pixelshader max value to the d3d minimum.

2007-08-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/glsl_shader.c:
	wined3d: The temp vars are tmp0 and tmp1.

2007-08-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Take the format into account when finding the clear value.

2007-08-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/tests/surface.c, dlls/d3d9/tests/surface.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	d3d: Add a test for double surface locking.

2007-08-30  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec, include/ntsecapi.h:
	secur32: Implement LsaRegisterLogonProcess stub.

2007-08-30  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmsynth/regsvr.c:
	dmsynth: Remove 'recursive registry key delete' function.

	* dlls/dmusic/regsvr.c:
	dmusic: Remove 'recursive registry key delete' function.

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

	* dlls/winspool.drv/info.c:
	winspool: Powerpoint XP expect a valid pointer on Win9x.

2007-08-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dsound/tests/dsound.c:
	dsound: Increase dll refcount and disable thread calls.

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

	* server/debugger.c:
	server: Detaching from a process needs to continue all the pending events.

2007-08-30  Trent Waddington <trent.waddington@gmail.com>

	* dlls/user32/tests/msg.c, server/queue.c:
	server: Handle existing timer replacement when no window handle specified.

2007-08-30  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/ftp.c, dlls/wininet/gopher.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/tests/http.c, dlls/wininet/utility.c, include/wininet.h:
	wininet: Fix many wininet prototypes: the context is a DWORD_PTR now.

	* dlls/shlwapi/clist.c, tools/winapi/win32.api:
	shlwapi: Update win32.api to fix the winapi_check warnings.

	* dlls/shlwapi/clist.c:
	shlwapi: Move SHAddDataBlock() to the front and remove the forward declaration.

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

	* dlls/winmm/mmsystem.c, tools/winapi/win16.api:
	mmsystem: Better stick the the PSDK types.

	* dlls/winscard/winscard.c:
	winscard: Use quotes to include winscard.h. Fixes a winapi_check warning.

	* dlls/winhttp/main.c, include/Makefile.in, include/winhttp.h:
	winhttp: Add a skeleton winhttp.h and use it.

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

	* tools/winapi/win32.api:
	winapi_check: Assorted win32.api updates.

	* include/wintrust.h:
	wintrust: Add a prototype for WTHelperGetProvCertFromChain().

	* dlls/winmm/winmm.c, include/mmddk.h:
	winmm: Fix the mmTask*() prototypes.

	* include/mmddk.h:
	winmm: Make mmddk.h C++ compatible.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/string.c, include/msvcrt/stdlib.h:
	msvcrt: Add a prototype for _atoldbl() & co and declare _LDOUBLE & co in
	stdlib.h.

	* include/gdiplusflat.h:
	gdiplus: Add some extra prototypes.

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

2007-08-30  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Allocate our glyph metrics in a 128 index chunk sparse array.

2007-08-30  Lionel Debroux <lionel_debroux@yahoo.fr>

	* dlls/kernel32/path.c:
	kernel32: Fix memory leak in CopyFileW.

2007-08-29  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Add WS_EX_TOOLWINDOW style to popup windows.

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

	* dlls/ntdll/loader.c:
	ntdll: Pin down all dlls imported by the main exe.

2007-08-29  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/user32/static.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/static.c:
	user32: Static controls should have a clipping region set while sending the
	WM_CTLCOLORSTATIC.

2007-08-30  Steven Edwards <winehacker@gmail.com>

	* dlls/gdi32/clipping.c, dlls/gdi32/dc.c, dlls/setupapi/setupx_main.c,
	  dlls/shell32/shell.c, dlls/version/resource.c, dlls/winedos/vxd.c,
	  dlls/wineps.drv/escape.c:
	Remove more unneeded wine 16bit header usage.

2007-08-29  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/visual.c, dlls/dsound/primary.c, dlls/msvcrt/mbcs.c,
	  dlls/setupapi/tests/parser.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/winspool.drv/info.c:
	Assorted spelling fixes.

2007-08-29  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: Don't call ok() in child processes.

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: If the registry happens to be set up right, check that winedbg
	does not mess up the crashed process exit code (unfortunately it does).

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

	* dlls/winex11.drv/window.c:
	winex11: Set initial wm hints on the desktop window too.

2007-08-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Constify some variables.

2007-08-29  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec:
	secur32: Implement LsaLogonUser stub.

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec, include/ntsecapi.h:
	secur32: Implement LsaGetLogonSessionData stub.

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec:
	secur32: Implement LsaFreeReturnBuffer stub.

	* dlls/secur32/lsa.c, dlls/secur32/secur32.spec:
	secur32: Implement LsaEnumerateLogonSessions stub.

	* dlls/secur32/Makefile.in, dlls/secur32/lsa.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32.spec:
	secur32: Implement LsaLookupAuthenticationPackage stub.

	* dlls/secur32/ntlm.c:
	secur32: Give a hint where to find ntlm_auth.

2007-08-29  Francois Gouget <fgouget@free.fr>

	* dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add prototypes for the Setup*Log*() functions. Better stick to the
	PSDK types.

	* dlls/cards/cards.c, dlls/comctl32/tests/monthcal.c,
	  dlls/comctl32/tests/toolbar.c, dlls/dpnhpast/main.c,
	  dlls/gdiplus/tests/graphics.c, dlls/gdiplus/tests/image.c,
	  dlls/gphoto2.ds/ui.c, dlls/kernel32/relay16.c,
	  dlls/msxml3/tests/domdoc.c, dlls/oleaut32/oleaut.c,
	  dlls/olepro32/olepro32stubs.c, dlls/quartz/main.c,
	  dlls/setupapi/stubs.c, dlls/shell32/tests/systray.c,
	  dlls/shlwapi/thread.c, dlls/user32/tests/class.c,
	  dlls/uxtheme/system.c, dlls/winedos/vga.c, dlls/wineps.drv/mkagl.c,
	  programs/taskmgr/graphctl.c, tools/winapi/msvcmaker:
	Assorted non-ANSI function declaration fixes (missing void).

	* programs/taskmgr/De.rc, programs/taskmgr/En.rc, programs/taskmgr/Ja.rc,
	  programs/taskmgr/Ko.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/No.rc, programs/taskmgr/Pl.rc,
	  programs/taskmgr/Tr.rc, programs/winefile/Ru.rc:
	taskmgr & winefile: Refer users to the GNU Lesser General Public License,
	not to the GPL.

	* dlls/gdiplus/graphics.c, dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdiplusimaging.h,
	  include/gdiplustypes.h:
	gdiplus: Add some missing or related prototypes and types.
	Fix the GdipDrawRectangles() prototype.

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

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Tidy up the vbo removal from the strided data.

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

	* dlls/wined3d/surface.c:
	wined3d: Accept rendering to sublevels with backbuffer orm.

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

	* dlls/wined3d/surface.c:
	wined3d: Reject opengl accelerated blits with system memory surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Clear unused channels on R32F and R16F textures on readback.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Use 0/0/0 as normal if no normal is supplied.

2007-08-29  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dpnet/regsvr.c:
	dpnet: Remove 'recursive registry key delete' function.

2007-08-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/actctx.c:
	kernel32: Fix a compiler warning.

	* tools/wmc/wmc.c, tools/wmc/write.c:
	wmc: Constify some data.

	* tools/wrc/wrc.c:
	wrc: Constify some data.

	* tools/widl/typelib.c, tools/widl/widl.c:
	widl: Constify some data.

2007-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typelib.c:
	widl: Handle the size_is attribute on pointers.

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

	* dlls/user32/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Set the queue mask directly in get_message to avoid an extra server call.

	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/trace.c:
	server: Message results should be stored as longs, not ints.

	* dlls/ntdll/cdrom.c:
	ntdll: On Mac OS, close the CDROM device before opening the parent.
	This is needed to allow ejecting DVD disks.

2007-08-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/time.c, dlls/ntdll/time.c:
	ntdll: Do not leave not initialized cached timezone information if a timezone
	doesn't have daylight saving rules.

2007-08-28  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/init.c:
	wineps.drv: Only fail printer dc creation if the printer has no builtin fonts
	and there are no TrueType fonts to download.

2007-08-29  Steven Edwards <winehacker@gmail.com>

	* dlls/user32/class.c, dlls/user32/clipboard.c, dlls/user32/listbox.c,
	  dlls/user32/msgbox.c, dlls/user32/nonclient.c, dlls/user32/text.c,
	  dlls/user32/winpos.c, dlls/user32/wsprintf.c:
	user32: Remove some no longer needed wine 16bit headers.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/x11drv_main.c:
	x11drv: Remove some no longer needed wine 16bit headers.

2007-08-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Fix a hdc check in InitAdapters.

2007-08-29  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/setupapi/virtcopy.c:
	setupapi: Constify some variables.

2007-08-28  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/gdi32/tests/bitmap.c, dlls/winex11.drv/xrender.c:
	winex11.drv: Test for out-of-bound src coordinates in GdiAlphaBlend.

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

	* dlls/winex11.drv/window.c:
	winex11: Tool windows should not have WM decorations.

	* dlls/ntdll/file.c, server/fd.c:
	ntdll: Fixed file system name comparison on *BSD.

2007-08-29  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm: Report GCS_DELTASTART to help behavior with advanced IME aware applications.

2007-08-28  Juan Lang <juan.lang@gmail.com>

	* include/winerror.h:
	winerror.h: Add more error definitions.

	* dlls/wintrust/softpub.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Implement pfnCertificateTrust.

	* dlls/wintrust/softpub.c:
	wintrust: Save signers of a message in SoftpubLoadSignature.

	* dlls/wintrust/softpub.c:
	wintrust: Use a helper function to get a signer's cert info from a message.

	* dlls/wintrust/softpub.c:
	wintrust: Use pfnAddStore2Chain internally.

	* dlls/wintrust/register.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust_main.c, dlls/wintrust/wintrust_priv.h:
	wintrust: Test and implement pfnAddCert2Chain.

	* dlls/wintrust/register.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust_main.c, dlls/wintrust/wintrust_priv.h:
	wintrust: Test and implement pfnAddSgnr2Chain.

	* dlls/wintrust/register.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust_main.c, dlls/wintrust/wintrust_priv.h:
	wintrust: Test and implement pfnAddStore2Chain.

	* include/wintrust.h:
	wintrust: Add missing definitions.

	* dlls/crypt32/chain.c:
	crypt32: Set trust status on root element in chain.

2007-08-28  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/tests/Makefile.in, dlls/cabinet/tests/fdi.c:
	cabinet: Add initial tests for FDI.

2007-08-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/opengl.c:
	gdi32: Print the function name in wglGetProcAddress.

	* dlls/winex11.drv/opengl.c:
	wgl: Degrade an ERR to a WARN.

2007-08-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Ask for enough RGB bits for pbuffers.

	* dlls/wined3d/device.c:
	wined3d: CreateAdditionalSwapChain bugfix.

2007-08-28  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dsound/regsvr.c:
	dsound: Remove 'recursive registry key delete' function.

	* dlls/dswave/regsvr.c:
	dswave: Remove 'recursive registry key delete' function.

2007-08-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/notepad.ico, programs/notepad/notepad_res.h,
	  programs/notepad/rsrc.rc:
	notepad: Add program icon.

2007-08-27  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Implemented SetRows.

2007-08-28  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Properly update the SmallBlockDepotCount when adding more blocks.

2007-08-27  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/register.c:
	wintrust: Use common memory functions.

	* dlls/wintrust/register.c, dlls/wintrust/wintrust_main.c,
	  dlls/wintrust/wintrust_priv.h:
	wintrust: Move mem alloc functions to wintrust_main.c.

	* dlls/wintrust/softpub.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SoftpubLoadSignature.

	* dlls/wintrust/softpub.c, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Test and implement SoftpubLoadMessage.

	* dlls/imagehlp/integrity.c, include/imagehlp.h, include/wintrust.h:
	imagehlp: Move WIN_CERTIFICATE types to wintrust.h, and rename a type, to
	match PSDK.

2007-08-27  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Handle LPSTR in typelibs.

2007-08-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dxdiagn/regsvr.c:
	dxdiagn: Remove 'recursive registry key delete' function.

	* dlls/hhctrl.ocx/regsvr.c:
	hhctrl.ocx: Remove 'recursive registry key delete' function.

2007-08-27  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Don't assume the fake DC is the current DC.

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

	* dlls/wined3d/device.c:
	wined3d: Fix the spot light falloff == 0.0 case.

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/vertexshader.c:
	wined3d: Hold an internal reference on pixel and vertex shaders.

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

	* dlls/wined3d/device.c:
	wined3d: Read the old streamsource from the correct stateblock.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove the D3DTTFF_PROJECTED handling from drawStridedSlow.

	* dlls/wined3d/state.c:
	wined3d: Fix the half pixel correction.

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

	* dlls/ntdll/heap.c:
	ntdll: Make RtlCompactHeap more silent.

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

	* dlls/kernel32/locale.c:
	kernel32: Store a few more locale values in the registry.

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

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Make SetFormat work better with new behavior of dsound.

2007-08-24  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/Makefile.in, dlls/wintrust/softpub.c,
	  dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/softpub.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Test and implement SoftpubInitialize.

	* include/wintrust.h:
	wintrust: Add trust step error definitions.

	* include/wintrust.h:
	wintrust: Make crypt provider functions calling convention explicit.

2007-08-27  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Update position of default IME window.

2007-08-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/inseng/regsvr.c:
	inseng: Remove 'recursive registry key delete' function.

	* dlls/mlang/regsvr.c:
	mlang: Remove 'recursive registry key delete' function.

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

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c,
	  dlls/dsound/primary.c:
	dsound: Update DSOUND_PrimarySetFormat to follow flags and return values
	more precisely.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/primary.c:
	dsound: Add a function to (re)open sound device to avoid code duplication.

2007-08-27  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/setupapi/parser.c, dlls/setupapi/setupapi_private.h:
	setupapi: Constify some variables.

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

	* dlls/d3d9/tests/visual.c:
	wined3d: Texture transform flag test.

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

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Some texture transform fixes.

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

	* dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Texture transforms are disabled when drawing rhw vertices.

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

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add some missing vertex state render states.

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

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Non-primary stateblocks hold an internal reference on indexbuffers.

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

	* dlls/secur32/dispatcher.c:
	secur32: Set the close on exec flag on the ntlm_auth pipes.

	* dlls/user32/painting.c, include/wine/server_protocol.h,
	  server/protocol.def, server/window.c:
	server: Store a separate flag for windows that need to be erased in WM_PAINT.
	This avoids the need to invalidate the window after WM_ERASEBKGND.

	* dlls/user32/tests/win.c, server/window.c:
	server: Moving a window should only expose the immediate parent.

	* dlls/user32/tests/msg.c, dlls/user32/winpos.c:
	user32: SetWindowPos should erase the parent also for child moves.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Child windows don't get activated even when requested, so don't make
	them managed either.

2007-08-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c:
	dsound: Handle secondary hardware buffers more correctly.
	Only try hardware if asked for it, then return an error instead of
	falling back to software.

	* dlls/dsound/primary.c:
	dsound: Make sure waveOutClose is only called when using mmsystem.

2007-08-27  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: If composition string is reduced to 0 characters hide composition window.

2007-08-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/cabinet/cabinet.h,
	  dlls/cabinet/cabinet_main.c, dlls/cabinet/tests/extract.c:
	cabinet: Don't extract a file if DoExtract is FALSE.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/cdlg_No.rc:
	comdlg32: FindText: Fix text length in Norwegian template.

2007-08-25  Tijl Coosemans <tijl@ulyssis.org>

	* libs/wine/ldt.c:
	libwine: Use GDT entry for %fs segment on FreeBSD.

2007-08-24  Tijl Coosemans <tijl@ulyssis.org>

	* .gitignore, configure, configure.ac, loader/Makefile.in,
	  loader/freebsd.c:
	loader: Introduce FreeBSD loader.

2007-08-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winhttp/main.c, dlls/winhttp/winhttp.spec:
	winhttp: Add stub for WinHttpCheckPlatform.

2007-08-25  Dan Kegel <dank@kegel.com>

	* dlls/shdocvw/iexplore.c:
	shdocvw: iexplore needs to handle the -nohome option.

2007-08-25  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/secur32/hmac_md5.c, dlls/secur32/hmac_md5.h,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/thunks.c,
	  dlls/secur32/util.c:
	secur32: Constify some variables.

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

	* dlls/dinput/joystick_linux.c:
	dinput: Count should not be 0-based.

2007-08-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/cdlg_No.rc:
	comdlg32: Fix text length in Norwegian ChooseFont.

2007-08-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/ole32/defaulthandler.c:
	ole32: Fix forgotten IPersistStorage vtable.

2007-08-23  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PageSetupDlgA/W: Avoid crash when not passed a DEVMODE structure.

2007-08-25  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/audio.c:
	wineoss: Update sound caps.

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Update sound caps.

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

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Non-primary stateblocks also hold an internal reference to buffers.

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

	* dlls/wined3d/stateblock.c:
	wined3d: Add the copied light to the right stateblock.

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

	* dlls/d3d8/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: BaseVertexIndex can be negative.

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

	* dlls/d3d9/device.c:
	d3d9: Return the correct return value in GetDepthStencilSurface.

	* dlls/wined3d/context.c:
	wined3d: Disable specular color when blitting.

2007-08-24  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c:
	wintrust: Test and correct alloc and free functions in
	WintrustLoadFunctionPointers.

	* dlls/crypt32/msg.c:
	crypt32: Partially implement CMSG_CTRL_VERIFY_SIGNATURE_EX.

2007-08-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Improve pixelformat selection code.

2007-08-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Override backbufferformat in window mode.

	* include/wine/wined3d_gl.h:
	wined3d: Add Geforce8 device ids.

2007-08-24  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/regsvr.c:
	msi: Remove 'recursive registry key delete' function.

	* dlls/msxml3/regsvr.c:
	msxml3: Remove 'recursive registry key delete' function.

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

	* dlls/gphoto2.ds/gphoto2_Ko.rc:
	gphoto2.ds: Updated Korean resource.

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

2007-08-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Only use one fake context when building adapter info.

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

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Don't use locale dependent string for testing.

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

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Use skip instead of trace.

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

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

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

	* dlls/msvcrt/mbcs.c:
	msvcrt: Don't include mbstring.h to avoid conflicts with system headers.

2007-08-23  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	wineconsole: Implement GetConsoleWindow.

	* programs/wineconsole/curses.c, programs/wineconsole/dialog.c,
	  programs/wineconsole/user.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/winecon_user.h:
	wineconsole: Move window handle to inner_data structure.

2007-08-23  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/cabinet_main.c, dlls/cabinet/fdi.c,
	  dlls/cabinet/tests/extract.c:
	cabinet: Return the value of GetLastError if FDICopy fails.

	* dlls/cabinet/cabinet_main.c, dlls/cabinet/tests/extract.c:
	cabinet: Append new file nodes to the front of the file list.

	* dlls/cabinet/cabinet_main.c, dlls/cabinet/tests/extract.c:
	cabinet: Pass the session Error to FDICopy.

2007-08-23  Bryan DeGrendel <sirnuke@gmail.com>

	* dlls/mscoree/mscoree_main.c:
	mscoree: Return S_OK if mono runtime is found.

2007-08-23  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c:
	msvcrt: Implement and test _mbsbtype.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _ismbslead and _ismbstrail.

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

	* dlls/winspool.drv/info.c:
	winspool: Forward AddPrinterDriver to AddPrinterDriverEx.

2007-08-23  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c:
	rsaenh: Constify some variables.

2007-08-23  Lei Zhang <thestig@google.com>

	* dlls/gphoto2.ds/ui.c:
	gphoto2: Add missing brackets.

	* dlls/gphoto2.ds/ds_ctrl.c:
	gphoto2: Import photos in the right order.

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

	* dlls/user32/message.c, dlls/user32/tests/msg.c, dlls/user32/tests/win.c,
	  dlls/user32/win.c, dlls/winex11.drv/dce.c:
	user32: IsChild must not consider the desktop window.

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

	* dlls/user32/painting.c, server/window.c:
	server: Validate the parents every time we paint a window instead of only
	on RDW_UPDATENOW.

2007-08-23  Tijl Coosemans <tijl@ulyssis.org>

	* configure, configure.ac, include/config.h.in, server/ptrace.c:
	server: Use thr_kill2 syscall to signal threads on FreeBSD.

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

	* programs/winetest/Makefile.in, programs/winetest/main.c:
	winetest: Put dll version information in the report.

2007-08-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/objsel/regsvr.c:
	objsel: Remove 'recursive registry key delete' function.

	* dlls/ole32/regsvr.c:
	ole32: Remove 'recursive registry key delete' function.

2007-08-23  Rob Shearman <rob@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix UrlCombineW for absolute URLs without slashes.

	* dlls/winex11.drv/window.c:
	winex11.drv: Don't activate the systray window when repositioning it.

	* include/mshtml.idl:
	include: Add some defines for mshtml service IDs.

	* include/ocidl.idl:
	include: Add a define for SID_SOleUndoManager.

	* include/hlink.idl:
	include: Add a define for SID_SHlinkFrame.

	* include/shlguid.h:
	include: Define some shell service IDs.

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

	* dlls/winspool.drv/info.c:
	winspool: Strings can be NULL in AddPrinterDriverExA.

	* tools/wineprefixcreate.in:
	wineprefixcreate: Create spool/drivers directory for printer drivers.

2007-08-22  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/theme.c:
	winecfg: Suport color schemes from .theme format themes.

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

	* programs/winetest/main.c:
	winetest: Change the way we report missing dlls.

2007-08-22  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/advapi32/service.c:
	advapi32: Obtain the process id locally.

	* dlls/advapi32/service.c:
	advapi32: Return an error if we try to start an already running service.

2007-08-21  Mikolaj Zalewski <mikolajz@google.com>

	* include/winioctl.h:
	include: Add some definitions to winioctl.h.

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

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fake occlusion queries if the wrong context is active.

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Deal with multithreading in event queries.

	* dlls/wined3d/surface.c:
	wined3d: Refuse to ReleaseDC the wrong DC.

	* dlls/wined3d/surface.c:
	wined3d: Refuse to lock locked surfaces.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fall back to drawStridedSlow if fog coords are used.

2007-08-23  Lei Zhang <thestig@google.com>

	* dlls/gphoto2.ds/Makefile.in, dlls/gphoto2.ds/gphoto2_De.rc,
	  dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/gphoto2.ds/gphoto2_No.rc, dlls/gphoto2.ds/gphoto2_Pl.rc,
	  dlls/gphoto2.ds/resource.h, dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Add preview button and ability to disable import GUI.

2007-08-23  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c:
	wininet: Send INTERNET_STATUS_HANDLE_CLOSING when object is being destroyed
	as native does.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Separate connection closing from object destruction.

	* dlls/wininet/internet.h:
	wininet: Rename WININET_object_destructor to a more general
	WININET_object_function.

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

	* dlls/winex11.drv/opengl.c:
	winex11: Get rid of get_context_from_GLXContext.

	* dlls/winex11.drv/opengl.c:
	winex11: Properly update the hdc in the GL context.

2007-08-22  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbsinc/_mbsninc.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Don't test codepage 20932.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbccpy, _mbsncpy and _mbsnbcpy.

2007-08-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c:
	advpack: Formalize the SESSION struct.

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c:
	cabinet: Formalize the SESSION struct.

2007-08-22  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Don't display full path in save changes dialog.

	* programs/wordpad/wordpad.c:
	wordpad: Don't show full path in caption.

2007-08-22  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rsaenh/des.c, dlls/rsaenh/mpi.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Constify some variables.

2007-08-22  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/regsvr.c:
	oleaut32: Remove 'recursive registry key delete' function.

	* dlls/quartz/regsvr.c:
	quartz: Remove 'recursive registry key delete' function.

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

	* dlls/winspool.drv/info.c:
	winspool: Add always the Win9x and the NT printerdriver.

2007-08-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: Fix wglGetCurrentReadDCARB bugs.

2007-08-22  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/main.c, dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement CryptVerifyMessageSignature.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and correct verifying the signature of a valid signed message.

	* dlls/advapi32/crypt.c, dlls/advapi32/tests/crypt.c:
	advapi32: Add more tests for CryptVerifySignatureW, and correct its parameter
	checking.

2007-08-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Transparantly fall back to software mode if hardware mode is unavailable.

2007-08-22  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/printdrv.c:
	gdi32: Quote the printer name prior to passing it to the shell.

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

	* dlls/atl/Makefile.in, dlls/atl/registrar.c:
	atl: Replace SHDeleteKeyW with RegDeleteTreeW and get rid of the import
	of shlwapi.

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

	* dlls/gdi32/dc.c, dlls/gdi32/gdiobj.c:
	gdi32: Fix a few more places that use the wrong get/release function for DCs.

2007-08-21  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/msg.c:
	crypt32: Test encoding a signed message with a valid public key.

	* dlls/crypt32/msg.c:
	crypt32: Explicitly terminate loop when a matching signer cert is found.

	* dlls/crypt32/msg.c:
	crypt32: Only free allocated handles.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement CryptGetMessageSignerCount.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c:
	crypt32: Implement CryptGetMessageCertificates.

	* dlls/crypt32/encode.c:
	crypt32: Trace encoding and decoding public keys on crypt channel.

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

	* dlls/ntdll/cdrom.c:
	ntdll: Flesh out the stub for IOCTL_STORAGE_GET_DEVICE_NUMBER.

	* dlls/user32/hook.c, server/hook.c:
	user32: Thread-local hooks need a module if they don't belong to the current
	process.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Use the correct create disposition in fdi_open.

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c, dlls/cabinet/fdi.c:
	cabinet: Use the proper fcntl defines in the FDI_OPEN calls.

2007-08-21  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/tests/extract.c:
	cabinet: Formalize the SESSION struct and add more tests of its members.

2007-07-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Store window rect in the registry.

	* programs/wordpad/wordpad.c:
	wordpad: Clear formatting before opening a file.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Prompt for format when selecting new file.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Handle different formats on open/save.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add recent file list.

2007-08-21  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Attach the correct surface the the fbo.

	* dlls/wined3d/device.c:
	wined3d: Restore a line that got lost.

2007-08-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/time.c:
	ntdll: Reimplement TIME_GetBias using new time zone code.

	* include/wine/test.h:
	include/wine/test.h: Use appropriate type.

2007-08-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c, dlls/dsound/primary.c:
	dsound: Move assignment of DSBCAPS_LOC to primary buffer creation time.

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

	* dlls/ntdll/tests/om.c:
	ntdll/tests: Fix typos.

	* dlls/gdi32/gdiobj.c:
	gdi32: Fix possible NULL pointer dereference (Coverity).

	* dlls/gdi32/dc.c:
	gdi32: Fix possible NULL pointer dereference (Coverity).

2007-08-22  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix reference count on internet handle for asynchronous
	InternetReadFileEx call.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Don't send INTERNET_STATUS_HANDLE_CLOSING when closing handle opened
	with InternetOpen for HTTP connection.

2007-08-21  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Constify some variables.

2007-08-21  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement verifying a decoded signed message's signature.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement getting the computed hash from a decoded signed
	message.

	* dlls/crypt32/msg.c:
	crypt32: Update a hash message's hash handles when decoding it.

2007-08-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Move signed message data functions together.

	* dlls/crypt32/msg.c:
	crypt32: Make constructing handles a member of signed msg data.

	* dlls/crypt32/msg.c:
	crypt32: Use a helper function to allocate signer handles.

	* dlls/crypt32/msg.c:
	crypt32: Don't keep an unneeded copy of the crypto provider for each signer.

	* dlls/crypt32/msg.c:
	crypt32: Separate construction of signer handles from signer info.

	* dlls/crypt32/msg.c:
	crypt32: Add a helper function to construct a signer handles structure.

	* dlls/crypt32/msg.c:
	crypt32: Add helper function to update signed message data.

	* dlls/crypt32/msg.c:
	crypt32: Make more functions members of signed message data, rather than message.

	* dlls/crypt32/msg.c:
	crypt32: Make updating a hash a member of signed message data, not signed
	message.

	* dlls/crypt32/msg.c:
	crypt32: Make a helper function to a free a signed message's handles.

	* dlls/crypt32/msg.c:
	crypt32: Use signed message data type for decoded signed messages.

	* dlls/crypt32/msg.c:
	crypt32: Make a signed message data type.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement verifying the hash of a decoded hash message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a couple tests that show you can't get the hash from an encoded
	hash message, and fix encoded hash messages to match.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a mostly stub control function for decode messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a default message control function pointer.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for CryptMsgControl.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test an encoded signed message with a cert with a public key.

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

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix compile with old input.h that missing input_absinfo.

2007-08-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/time.c:
	kernel32: Restore check for StandardDate.wMonth being 0.

	* dlls/msvcrt/time.c:
	msvcrt: Restore error handling code in localtime.

2007-08-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Fix a null pointer dereference.

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

	* dlls/wined3d/vertexdeclaration.c:
	wined3d/vertexdeclaration: Return when out of memory (Coverity).

	* dlls/dnsapi/tests/Makefile.in, dlls/dnsapi/tests/name.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi/tests: No need to dynamically load dnsapi anymore.

	* dlls/kernel32/tests/change.c:
	kernel32/tests: Skip some not implemented functions and add a few skip's.

	* dlls/msi/tests/install.c:
	msi/tests: Be verbose when GetProcAddress fails.

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

	* dlls/setupapi/install.c:
	setupapi: Use NtDeleteKey instead of an invalid RegDeleteKeyW.

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

	* dlls/winex11.drv/winpos.c:
	winex11: Update the wm hints also when mapping a previously zero-size window.

	* dlls/gdi32/bitblt.c, dlls/gdi32/bitmap.c, dlls/gdi32/brush.c,
	  dlls/gdi32/clipping.c, dlls/gdi32/dc.c, dlls/gdi32/dib.c,
	  dlls/gdi32/driver.c, dlls/gdi32/enhmfdrv/init.c, dlls/gdi32/font.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/mapping.c, dlls/gdi32/mfdrv/init.c, dlls/gdi32/opengl.c,
	  dlls/gdi32/painting.c, dlls/gdi32/palette.c, dlls/gdi32/path.c,
	  dlls/gdi32/pen.c, dlls/gdi32/printdrv.c:
	gdi32: Add separate functions for releasing/freeing DCs to replace the standard
	GDI ones.
	This should make it possible to use a different locking mechanism for DCs.

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

	* dlls/wined3d/directx.c, dlls/wined3d/state.c:
	wined3d: Implement range based fog and advertize it correctly.

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

	* dlls/d3d9/tests/visual.c, dlls/wined3d/state.c:
	wined3d: fogstart == fogend means full fog.

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

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/wined3d/directx.c, include/d3d9caps.h:
	d3d9: Some caps fixes.

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

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Use skip instead of trace.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Do GetModuleHandle only once and add a few skip's.

2007-08-19  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test that some functions depends on locale codepage, not the one set
	by _setmbcp.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbclen/_mbslen.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Test and fix _mbsnextc.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: Implement _ismbblead/_ismbbtrail using _mbctype (with tests).

	* dlls/msvcrt/locale.c, dlls/msvcrt/main.c, dlls/msvcrt/mbcs.c,
	  dlls/msvcrt/tests/string.c:
	msvcrt: Fill _mbctype table in _setmbcp.

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

	* dlls/dsound/primary.c:
	dsound: Fix a compiler warning.

2007-08-20  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/setupapi/fakedll.c:
	setupapi: If needed create directories for fake dlls.

2007-08-20  Lei Zhang <thestig@google.com>

	* tools/wine.inf:
	wine.inf: Add twain_32.dll to the list of fake dlls.

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

	* dlls/dinput/joystick_linux.c:
	dinput: Don't try to create non existing device (/dev/js*).

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

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Wait for spawned processes to finish.

2007-08-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/tests/time.c, dlls/msvcrt/time.c:
	msvcrt: Route mktime and localtime to glibc.

2007-08-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/time.c:
	kernel32: Fix test case failures for time zones with absolute transition dates.

2007-08-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/time.c, dlls/ntdll/time.c, include/winternl.h:
	ntdll: Detect current time zone settings.

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

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Check acquired flag instead of fd.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use correct data structure for EVIOCGABS instead of an array.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Remove redundant declaration.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Don't try to create non existing device.

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

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Reinstall the internal reference on vertex buffers.

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

	* dlls/wined3d/utils.c:
	wined3d: Fix some alpha channels in formats.

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

	* dlls/wined3d/directx.c, dlls/wined3d/state.c:
	wined3d: FIX D3DBLEND_BOTHSRCALPHA and BLEND_BOTHINVSRCALPHA.

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

	* dlls/wined3d/device.c:
	wined3d: Remove a debug hack.

2007-07-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: printdlg: Fix number display in PrintDlgW().

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

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarCat and VarAnd tests a bit better if there is no I8
	and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarImp tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarIdiv tests if there is no I8 and/or UI8 support.

2007-08-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Don't use 64bit gl types.

	* dlls/winex11.drv/opengl.c:
	wgl: Cleanup pixelformat initialization code.

2007-08-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a typo in the trace code.

2007-08-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: UBYTE4 data shouldn't be normalized.

2007-08-19  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/user32/dialog.c:
	user32: Fix change-drive in Win3.1-style file open dialog.

	* dlls/user32/dialog.c:
	user32: Fix crash while dir-navigating in Win3.1-style file open dialog.

2007-08-20  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Remove 'recursive registry key delete' function.

2007-08-19  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/regsvr.c:
	shell32: Remove 'recursive registry key delete' function.

2007-08-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c, dlls/wineoss.drv/dsrender.c:
	dsound: Handle failing of IDsDriver_CreateSoundBuffer better.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Report card name in volume control fixme.

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

	* dlls/user32/tests/msg.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c:
	winex11: Force a window to managed mode when it is activated.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Switch windows to managed mode in SetWindowPos instead of at creation
	time.

	* dlls/user32/tests/msg.c:
	user32/tests: Allow WM_MOUSEACTIVATE in the mouse hover test for compatibility
	with X11 focus policy.

	* dlls/user32/tests/msg.c, dlls/user32/tests/win.c:
	user32/tests: Use flush_events more consistently in the message tests.

	* dlls/ntdll/server.c:
	ntdll: Return an error instead of dying in wine_server_call if the input buffer
	is invalid.

	* dlls/winex11.drv/window.c:
	winex11: Don't select for StructureNotify events on unmanaged windows.

	* dlls/winex11.drv/mouse.c:
	winex11: Don't set the cursor on the desktop window since it's managed by
	another process.

	* dlls/winex11.drv/window.c:
	winex11: Move setting of the initial wm hints to a separate function.

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

	* dlls/mshtml/htmltextcont.c:
	mshtml/htmltextcont: Initialize value (Coverity).

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

	* dlls/comctl32/commctrl.c:
	comctl32: Create the manifest directory if needed (spotted by Dan Kegel).

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

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Handle case where no printer is configured.

2007-07-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix save changes prompt for the open file dialogue.

	* programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add bullet points button.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add bullet points option.

2007-07-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix error handling when saving empty files.

	* programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Fix formatbar for native comctl32/XP.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Display error box when richedit loading fails.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add search functionality.

2007-07-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: PrintDlg: Set PD_SELECTION on return.

2007-08-19  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shlwapi/url.c:
	shlwapi: Take sizeof(WCHAR) into account when allocating Unicode string.

2007-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Remove	'recursive registry key delete' function.

2007-08-17  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Constify some variables.

2007-08-17  Mikolaj Zalewski <mikolajz@google.com>

	* .gitignore, programs/iexplore/Makefile.in, programs/iexplore/version.rc:
	iexplore: Add VERSIONINFO resource.

2007-08-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/collectionstore.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/filestore.c, dlls/crypt32/provstore.c,
	  dlls/crypt32/regstore.c, dlls/crypt32/store.c:
	crypt32: Don't store the crypto provider when it isn't needed.

	* dlls/crypt32/filestore.c:
	crypt32: Don't store redundant copy of crypto provider in file store.

	* dlls/crypt32/regstore.c:
	crypt32: Don't store redundant copy of crypto provider in reg store.

	* dlls/crypt32/store.c:
	crypt32: Pass crypto provider and appropriate flags when opening PKCS messages,
	and don't store a redundant copy of the crypto provider in message stores.

2007-08-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Fix some gl type bugs.

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

	* dlls/opengl32/tests/opengl.c:
	opengl32/tests: Be a bit more verbose when doing wglGetProcAddress.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarDiv tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarAnd tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Skip VarCat tests if there is no I8 and/or UI8 support.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix a few typos.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Add a few skip's to the vartype tests.

	* dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/olepicture.c,
	  dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/varformat.c,
	  dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Use GetModuleHandle and add a few skip's.

2007-08-16  Mikolaj Zalewski <mikolajz@google.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	msvcrt: __mb_cur_max is not updated in _setmbcp (with testcase) and should
	not be used in _ismbblead.

2007-08-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a render_texture regression. Only enable GLX_ATI_render_texture when
	the ati extension is around.

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

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Use GetModuleHandle and check only once for availability of
	some functions.

2007-08-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/process.c:
	kernel32: Set USERNAME environment variable.

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

	* dlls/mshtml/nsiface.idl, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::compareEndPoints implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::select implementation.

	* dlls/mshtml/htmltextcont.c:
	mshtml: Added get_scrollWidth and get_scrollHeight implementation.

	* dlls/mshtml/htmlnode.c, dlls/mshtml/mshtml_private.h:
	mshtml: Don't create element object for document node.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::put_text implementation.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/selection.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Store HTMLDocument reference in HTMLTxtRange object.

2007-08-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Dynamically load WGL functions.

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

	* dlls/wined3d/directx.c, dlls/wined3d/state.c:
	wined3d: GL_SRC_ALPHA_SATURATE is supported as src blend param only.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Catch transformed position data that appears at offset 0.

	* dlls/d3d9/tests/visual.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix R32F and R16F.

	* dlls/wined3d/basetexture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Simplify IWineD3DBaseTextureImpl_ApplyStateChanges.

	* dlls/wined3d/basetexture.c:
	wined3d: Enable WINED3DSAMP_BORDERCOLOR.

2007-08-16  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/filestore.c, dlls/crypt32/store.c:
	crypt32: Move file store to a separate file.

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/regstore.c, dlls/crypt32/store.c:
	crypt32: Move registry stores to a separate file.

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/provstore.c, dlls/crypt32/store.c:
	crypt32: Move provider stores to a separate file.

	* dlls/crypt32/Makefile.in, dlls/crypt32/collectionstore.c,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/store.c:
	crypt32: Move collection stores to a separate file.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/store.c:
	crypt32: Move cert store definitions to header.

	* dlls/crypt32/store.c:
	crypt32: Where possible, pass a pointer rather than an offset, it's less
	confusing.

	* dlls/crypt32/store.c:
	crypt32: Use externed vars for context variables.

	* dlls/crypt32/store.c:
	crypt32: Use public APIs to empty a store.

	* dlls/crypt32/store.c:
	crypt32: Use public type and APIs for memory stores wherever possible.

	* dlls/crypt32/store.c:
	crypt32: Remove some unnecessary casts.

	* dlls/crypt32/store.c:
	crypt32: Rename a confusing type.

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

	* dlls/dinput/mouse.c:
	dinput: Properly increment sequence number for X only movement.

2007-08-16  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Listview fails to add a column if mask=0.

2007-08-16  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/editor.h, dlls/riched20/style.c, dlls/riched20/undo.c,
	  dlls/riched20/wrap.c, dlls/riched20/writer.c:
	riched20: Constify some variables.

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

	* dlls/mscms/tests/profile.c:
	mscms/tests: Allocate the profile buffer dynamically to make sure it's large
	enough.

2007-08-16  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dxguid/dxguid.c,
	  dlls/wineoss.drv/audio.c:
	dxguid: Remove dsdriver.h from imports.

2007-08-16  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc:
	programs/cmd: Do not use hardcoded constants when corresponding macro is
	already defined.

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

	* dlls/avifil32/regsvr.c:
	avifil32/regsvr: Replace recursive delete functions by RegDeleteTree.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Skip a test when not properly logged in on win9x.

	* dlls/wininet/tests/url.c:
	wininet/tests: Fix test failures for wininet.dll that comes with IE7.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Use GetModuleHandle instead of LoadLibrary.

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

	* dlls/winex11.drv/event.c:
	winex11: Don't try to activate the desktop window on take focus.

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Store wm hints in the window data instead of fetching them when needed.

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

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPrinterDriverExA.

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

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPrinterDriverExW.

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

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/selection.c:
	mshtml: Store HTMLDocument reference in HTMLSelectionObject.

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

	* dlls/kernel32/tests/pipe.c:
	kernel32: Initialize variable to a known bad value.

2007-08-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: printdlg: Set/Load paper orientation in PageSetupDlgW.

2007-08-16  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Call IInternetProtocolSink_Release and ReleaseStgMedium in HttpProtocol
	where native does.

	* dlls/urlmon/http.c:
	urlmon: Call IInternetProtocolSink_AddRef in HttpProtocol where native does
	(but just once).

2007-08-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/wininet/tests/http.c:
	wininet: A small test for HttpQueryInfoA.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Make HttpQueryInfo[AW] work for lpBuffer == NULL and len > 0.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Support HTTP_QUERY_RAW_HEADER_CRLF|HTTP_QUERY_FLAG_REQUEST_HEADERS.

2007-08-15  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/crypt.c:
	wintrust: Remove redundant check of pbSignedDataMsg (Coverity).

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/main.c:
	crypt32: Free default chain engine.

2007-08-15  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/stringformat.c, dlls/gdiplus/tests/stringformat.c:
	gdiplus: Fix default value of StringTrimmingCharacter.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/stringformat.c:
	gdiplus/tests: Added GpStringFormat tests.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus/tests: Added GdipAddPathLineI test.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use DrawText instead of TabbedTextOut.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle empty layout rectangle in GdipDrawString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle empty layout rectangle in GdipMeasureString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle StringFormatFlagsNoWrap in GdipMeasureString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Handle StringFormatFlagsNoWrap in GdipDrawString.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed 2 GdipDrawString bugs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipMeasureString.

2007-08-15  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/editor.h, dlls/riched20/run.c, dlls/riched20/string.c:
	riched20: Constify some variables.

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

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix WINED3DFMT_A4L4.

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

	* dlls/d3d9/tests/visual.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Reinstall the internal reference on the current index buffer.

	* dlls/wined3d/device.c:
	wined3d: Release the stateblock before destroying the swapchain.

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

	* dlls/wined3d/directx.c:
	wined3d: Do not advertize A8R3R3B2 support.

	* dlls/wined3d/utils.c:
	wined3d: Fix WINED3DFMT_R3G3B2.

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

	* dlls/shell32/tests/shellpath.c, dlls/shell32/tests/string.c:
	shell32/tests: Use GetModuleHandle instead of LoadLibrary.

2007-08-15  Lei Zhang <thestig@google.com>

	* dlls/riched20/caret.c:
	riched20: Add missing scroll bar update.

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c,
	  dlls/riched20/wrap.c:
	riched20: Properly calculate control display height.

2007-08-15  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add support for playing dsound capture buffer.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add support for opening/closing dsound capture buffer.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Add IDsCaptureDriverBuffer stub.

	* dlls/winealsa.drv/dscapture.c:
	winealsa: Implement IDsCaptureDriverImpl_Open.

	* dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.h,
	  dlls/winealsa.drv/dscapture.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveinit.c:
	winealsa: Add initial dscapturedriver stub.

	* dlls/dsound/capture.c:
	dsound: Handle failing of obtaining IDsDriverNotify.

2007-08-15  Huw Davies <huw@codeweavers.com>

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: Add some test for EM_GETTEXTLENGTHEX and fix the single line edit
	cases.

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

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

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

	* dlls/ntoskrnl.exe/ntoskrnl.c, include/ddk/wdm.h, tools/winapi/win32.api:
	ntoskrnel.exe: Better match the PSDK types and fix the winapi_check warnings.

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

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

2007-08-15  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/debugger.c:
	kernel32/tests: Remove a redundant RegSetValueExA() call.

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

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

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

	* dlls/user32/tests/input.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/monitor.c, dlls/user32/tests/msg.c:
	user32/tests: Run tests on win95 again.

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Run tests on win95 again.

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

	* dlls/mshtml/nsevents.c:
	mshtml: Call setup_nswindow on load event.

2007-08-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/wowthunk.c:
	kernel32: Return error code if WOWCallback16Ex of a real-mode function failed.

2007-08-14  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/stringformat.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDeleteStringFormat.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetStringFormatLineAlign/GdipGetStringFormatLineAlign.

	* dlls/gdiplus/graphics.c:
	gdiplus: Allow null-terminated strings in GdipDrawString.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetLineBlend stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetStringFormatHotkeyPrefix/GdipGetStringFormatHotkeyPrefix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetStringFormatTrimming/GdipSetStringFormatTrimming.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/stringformat.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetStringFormatAlign/GdipSetStringFormatAlign.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathLineI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetTextRenderingHint/GdipGetTextRenderingHint.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/graphicspath.c, include/gdiplusflat.h:
	gdiplus: Added GdipAddPathBezierI.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/stringformat.c,
	  include/gdiplusflat.h:
	gdiplus: Added string format constructor.

	* dlls/gdiplus/font.c, dlls/gdiplus/tests/font.c:
	gdiplus: Save elements of font's style.

	* dlls/gdiplus/tests/font.c:
	gdiplus: Added more font tests.

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipDeleteFont.

	* dlls/gdiplus/font.c, dlls/gdiplus/tests/font.c:
	gdiplus: Fixed conformance of font constructor.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/font.c:
	gdiplus: Added font tests.

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipGetLogFontW.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added GdipDrawString.

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

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/tests/string.c:
	msvcrt/tests: Remove wrong FreeLibrary and fix typo's.

	* dlls/crypt32/tests/main.c, dlls/crypt32/tests/sip.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Use GetModuleHandle and skip.

2007-08-14  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Set return value on exception.
	Spotted by Paul Vriens.

	* dlls/crypt32/chain.c, dlls/crypt32/tests/chain.c:
	crypt32: Initial implementation of CertGetCertificateChain and
	CertFreeCertificateChain.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add a chain test with real certificates.

	* dlls/crypt32/tests/chain.c:
	crypt32: Add initial tests for certificate chains.

	* dlls/crypt32/chain.c:
	crypt32: Set output chain to NULL.

	* dlls/crypt32/chain.c, dlls/crypt32/crypt32.spec:
	crypt32: Add stub for CertFreeCertificateChain.

	* dlls/crypt32/cert.c, dlls/crypt32/chain.c:
	crypt32: Move CertGetCertificateChain to chain.c.

	* dlls/crypt32/store.c:
	crypt32: Fix typo.

	* dlls/crypt32/store.c:
	crypt32: Fix typo.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Forward WinVerifyTrustEx to WinVerifyTrust.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Implement WTHelperProvDataFromStateData.

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c:
	wintrust: Implement WTHelperGetProvCertFromChain.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Implement WTHelperGetProvSignerFromChain.

2007-08-14  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/tooltips.c:
	comctl32: Fix tooltips uninitialized variables plus wrong positioning.

2007-08-14  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/reader.c, dlls/riched20/rtf.h:
	riched20: Constify some variables.

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

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Make window.external visible for JavaScript code.

	* dlls/mshtml/nsio.c:
	mshtml: Return wine: URI for protocols handled by MSHTML.

	* dlls/mshtml/nsio.c:
	mshtml: Check use_wine_url in nsIURI::GetAsciiSpec.

	* dlls/mshtml/nsio.c:
	mshtml: Reduce debug traces.

2007-08-14  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: In SHNameTranslate use the right part of the string for sizing.

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

	* dlls/wined3d/stateblock.c:
	wined3d: Reorganize stateblock::capture a bit.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Restructure Stateblock::apply a bit.

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

	* dlls/d3d8/device.c, dlls/d3d9/stateblock.c, dlls/ddraw/device.c,
	  include/wine/wined3d_types.h:
	wined3d: Add a wined3d private WINED3DSBT_RECORDED.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize float constants in stateblocks.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize sampler states in stateblocks.

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

	* dlls/wined3d/wined3d_private.h:
	wined3d: Fix a field in the wined3d header.

2007-08-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/winedos/himem.c:
	winedos: Make UMB executable.

2007-08-14  Peter Verthez <peter.verthez@advalvas.be>

	* dlls/user32/listbox.c, dlls/user32/tests/listbox.c:
	user32: LB_SETITEMDATA should return 1 on success, not 0.

2007-08-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Load wglGetProcAddress from opengl32.dll instead of gdi32.dll when
	USE_WIN32_OPENGL is defined.

	* include/wine/wined3d_gl.h:
	wined3d: Use WINE_GLAPI for setting the calling convention needed for OpenGL.

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

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: GDI support is not advertised with double buffering.

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

	* dlls/cabinet/tests/extract.c:
	cabinet/tests: Use GetModuleHandleA instead of LoadLibraryA.

	* dlls/advapi32/tests/crypt_lmhash.c:
	advapi32/tests: Use GetModuleHandleA and skip.

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

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix dead zone calculation.
	Based on patch by Artur Szymiec.

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

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Use a valid parameter array when demangling a template name.

	* dlls/Makefile.in, tools/make_makefiles:
	make_makefiles: wined3d doesn't depend on OpenGL libs anymore.

2007-08-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/Makefile.in, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Dynamically load OpenGL.

2007-08-13  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/asn.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SPC indirect data decoding.

	* dlls/wintrust/asn.c, dlls/wintrust/wintrust.spec:
	wintrust: Implement SPC indirect data encoding.

	* dlls/wintrust/asn.c, dlls/wintrust/tests/asn.c:
	wintrust: Implement SPC PE image encoding.

	* dlls/wintrust/asn.c, dlls/wintrust/tests/asn.c:
	wintrust: Implement SPC PE image decoding.

2007-08-13  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/editor.h, dlls/riched20/paint.c, dlls/riched20/para.c:
	riched20: Constify some variables.

2007-08-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/global16.c:
	kernel: Allocate global memory with execute permission.

2007-08-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Proper stereo / double buffering support for ChoosePixelFormat.

2007-08-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/wined3d_main.c:
	wined3d: Don't use ENTER_GL/LEAVE_GL on systems without winex11.drv.

	* dlls/winex11.drv/opengl.c, include/wingdi.h:
	wgl: Recognize Vista's PFD_SUPPORT_COMPOSITION flag.

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

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Make tests run again on win95.

	* dlls/ntdll/tests/om.c:
	ntdll/tests: Make tests run again on win95.

	* dlls/crypt32/tests/cert.c, dlls/crypt32/tests/msg.c:
	crypt32/tests: Make tests run again on win95.

	* dlls/d3d8/tests/device.c:
	d3d8/tests: Make tests run again on win95.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Make tests run again on win95.

2007-08-13  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/font.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipCreateFontFromLogfontA.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/font.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added font constructor.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawRectangles.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipScaleWorldTransform.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipRotateWorldTransform.

	* dlls/gdiplus/graphics.c:
	gdiplus: Better handle UnitPixel pen width.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetCompositingMode/GdipGetCompositingMode.

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

	* dlls/comctl32/commctrl.c, tools/wine.inf:
	comctl32: Create a manifest file at dll registration time.

	* dlls/ntdll/actctx.c:
	ntdll: Fixed the prototype of the open_nt_file wrapper.

2007-08-13  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/cert.c:
	crypt32: Test finding the issuer of a certificate.

	* dlls/crypt32/cert.c:
	crypt32: Avoid a memory allocation when decoding the subject key identifier
	extension.

	* dlls/crypt32/cert.c:
	crypt32: Add missing break.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Test authority key identifier with a multi-byte id to show that its
	byte-order is swapped and fix encoding and decoding it.

2007-08-13  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/tooltips.c:
	comctl32: Fix missing tooltips.

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

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize texture stage state applying.

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

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize bool and int pixel shader constants.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize bool and int vs constants.

2007-07-31  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Do not copy the saved states structure into the primary stateblock.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize transform state in stateblocks.

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

	* dlls/wined3d/device.c:
	wined3d: Activate context before applying fbo state.

2007-08-13  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Pass the proper DeviceName to ChangeDisplaySettings.

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

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Fix 2 failing tests for restricted users.

2007-08-13  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Fix timing issue with FLAG_REQUEST_COMPLETE and
	InternetQueryDataAvailable in HttpProtocol_Continue.

2007-08-12  Misha Koshelev <mk144210@bcm.edu>

	* programs/winebrowser/main.c:
	winebrowser: Add support for XTYP_REQUEST in DDE callback.

2007-08-12  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Set proper pixel format flags.

2007-08-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Re-enable GLX_ATI_render_texture support.

2007-08-10  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/advpack/tests/advpack.c, dlls/setupapi/parser.c,
	  dlls/setupapi/tests/parser.c:
	setupapi: Remove duplicate backslashes on dirids.

2007-08-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Proper CheckDeviceType / CheckDepthStencilMatch support.

	* dlls/wined3d/context.c:
	wined3d: Check the results of SetPixelFormat.

	* dlls/wined3d/utils.c:
	wined3d: Add more pixelformats to getColorBits.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the proper depth stencil format.

	* dlls/wined3d/utils.c:
	wined3d: Fix WINED3DFMT D16/L16 bugs in the pixelformat table.

2007-08-12  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/tests/http.c:
	wininet/tests: Test that for an open HTTP connection InternetQueryDataAvailable
	succeeds or returns ERROR_IO_PENDING.

	* dlls/wininet/internet.c, dlls/wininet/netconnection.c:
	wininet: InternetQueryDataAvailable does not return ERROR_NO_MORE_FILES when
	no more HTTP data is available.

	* dlls/wininet/internet.c:
	wininet: Don't peek data in InternetQueryDataAvailable if there is no more to
	be expected.

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

	* dlls/msi/tests/install.c:
	msi: Allocate 1 byte more buffer.

2007-08-11  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/riched20/caret.c, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Constify some variables.

2007-08-10  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/quartz/systemclock.c, dlls/quartz/tests/referenceclock.c:
	quartz: Fix IReferenceClock::GetTime() implementation for system clock.

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/referenceclock.c:
	quartz: Add test for IReferenceClock.

2007-08-10  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/regedit/regproc.c:
	regedit: Fix importing of .reg hex.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Strip single quotes (with tests) on reg keys.

2007-08-12  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Redirection for external programs was broken by the conversion
	to unicode.

	* dlls/user32/menu.c:
	user32: Fix regression in alt, then right processing with eg wines notepad.

	* dlls/user32/menu.c:
	user32: Allow alt+space to highlight system menu.

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

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Correctly handle overlapping source and destination regions on
	the same DIB when copying DIBs client-side.

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

	* programs/cmd/builtins.c:
	cmd.exe: WCMD_for is only for files.

	* dlls/user32/msgbox.c:
	user32: Initialize MONITORINFO.cbSize.

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

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/oleobj.c:
	mshtml: Added ICustomDoc stub implementation.

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

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::collapse implementation.

	* dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::duplicate implementation.

	* dlls/mshtml/main.c:
	mshtml: Make get_typeinfo thread safe.

	* dlls/mshtml/selection.c:
	mshtml: Use GetIsCollapsed in IHTMLSelectionObject::get_type.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_SELECTALL implementation.

	* dlls/mshtml/nsio.c:
	mshtml: Don't mess with gecko specific protocols.

	* dlls/urlmon/Makefile.in, dlls/urlmon/bindctx.c, dlls/urlmon/tests/url.c,
	  dlls/urlmon/umon.c:
	urlmon: Wrap IBindCtx in CreateAsyncBindCtxEx.

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

	* dlls/user32/winproc.c:
	user32: Call a 16-Bit winproc again.

2007-07-31  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Optimize render states in the stateblock.

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

	* dlls/wined3d/stateblock.c:
	wined3d: Remove primary stateblock fixme.

2007-07-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove stateblock::set.*.

	* dlls/wined3d/stateblock.c:
	wined3d: Remove ugly code from stateblock init.

	* dlls/wined3d/device.c:
	wined3d: Remove outdated TODO in D3DDevice::SetTextureStageState.

2007-08-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for the RemoveFiles standard action.

2007-08-10  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/image.c:
	gdiplus: Fix test to pass in Windows.

2007-08-10  Juan Lang <juan.lang@gmail.com>

	* dlls/wintrust/tests/asn.c:
	wintrust: Add tests for encoding and decoding SPC PE image data.

	* dlls/wintrust/asn.c, dlls/wintrust/tests/asn.c:
	wintrust: Implement encoding SPC links.

	* dlls/wintrust/Makefile.in, dlls/wintrust/asn.c,
	  dlls/wintrust/tests/asn.c:
	wintrust: Implement decoding SPC links.

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/asn.c:
	wintrust: Add tests for encoding/decoding SPC links.

	* include/wintrust.h:
	wintrust: Add missing definitions.

	* dlls/wintrust/Makefile.in, dlls/wintrust/asn.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Add stubs for SPC_LINK and SPC_PE_IMAGE encoding/decoding.

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c:
	wintrust: Implement CryptSIPGetSignedDataMsg.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Improve tracing when builtin function isn't available.

	* dlls/crypt32/encode.c:
	crypt32: Use helper functions to simplify CryptEncodeObject and
	CryptEncodeObjectEx.

	* dlls/crypt32/decode.c:
	crypt32: Validate parameters better in CryptDecodeObject.

	* dlls/crypt32/decode.c:
	crypt32: Use helper functions to simplify CryptDecodeObject and
	CryptDecodeObjectEx.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Ex encode/decode functions should call non-Ex versions if no Ex
	version is available.

2007-08-10  Hernan Rajchert <hrajchert@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fixed error message when glDrawElement fails.

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

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

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

	* dlls/snmpapi/tests/util.c:
	snmpapi/tests: Be more verbose on missing functions.

	* dlls/msi/tests/install.c, dlls/msi/tests/msi.c, dlls/msi/tests/source.c:
	msi/tests: Run tests again on win98 and NT4.

2007-08-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Make sure onscreen pixelformats are on top in wglChoosePixelFormatARB.

2007-08-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/tests/class.c, dlls/user32/winproc.c:
	user32: CallWindowProc[AW] for mismatched built-in winprocs should take into
	account if the window is Unicode.

2007-08-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for EnumPrinterDrivers.

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: More tests for the member lStructSize.

2007-08-09  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipConvertToEmfPlus stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipTranslateWorldTransform.

	* dlls/gdiplus/image.c:
	gdiplus: Better error checking in GdipBitmapLockBits.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetTextureTransform stub.

	* dlls/gdiplus/brush.c:
	gdiplus: Updated GdipCloneBrush, GdipDeleteBrush.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipCreateTextureIA.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawImageRectRect.

	* dlls/gdiplus/image.c:
	gdiplus: Replace GetDC(0) with CreateCompatibleDC(0).

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetImageGraphicsContext.

2007-08-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Add simple tests for PrintDlgA.

	* dlls/comdlg32/printdlg.c:
	comdlg32: Return defaults for hDevMode and hDevNames.

2007-08-09  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't add spaces to the beginning of the wglExtensions list.

2007-08-09  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/advpack/advpack.c:
	advpack: Show fixme when advpack fails to prompt user for directory.

	* dlls/setupapi/tests/parser.c:
	setupapi: Add test to show setupapi does not handle single quotes.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Wait when launching GUI pgms in batch.

2007-08-08  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Use a safer, more compliant method to parse extension strings.

2007-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c:
	wined3d: Add better pixelformat selection code for pbuffers.

2007-08-09  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add stub for I_CryptGetAsn1Decoder.

	* dlls/crypt32/cert.c, dlls/crypt32/sip.c:
	crypt32: Trace more return values.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Use real certificates to test finding subject certificates, and
	correct finding them.

	* dlls/crypt32/oid.c:
	crypt32: Correct loading OID functions from the registry.

2007-08-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Implement the UnpublishFeatures standard action.

2007-08-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Process caller supplied headers after inserting connection and
	authorization headers, not before.

	* dlls/wininet/internet.c:
	wininet: Implement INTERNET_OPTION_CALLBACK in InternetSetOption{A, W}.

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Also set last error on NULL first parameter in InternetCreateUrl{A, W}.

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Don't crash on NULL first or last parameter in InternetCrackUrlW.

2007-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/debugger.c:
	kernel32/tests: Test the debugger startup and crashed processes exit code.

2007-08-09  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	pdh: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	wing32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	mprapi: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	mapi32: Update win32.api to fix the winapi_check warnings.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: '0x' is redundant with the '#' format modifier.

	* tools/winapi/win32.api:
	userenv: Update win32.api to fix the winapi_check warnings.

	* dlls/userenv/userenv_main.c, include/Makefile.in, include/userenv.h:
	userenv: Add a skeleton userenv.h header and use it.

	* dlls/wined3d/wined3d_main.c:
	wined3d: Add a '\n' to a Wine trace.

	* tools/winapi/win32.api:
	kernel32: Update win32.api to fix the winapi_check warnings.

	* dlls/d3d8/tests/device.c, dlls/d3d8/tests/visual.c:
	d3d8/tests: DXGetErrorString8() prints 'Unknown' for too many hresults which
	makes diagnosis impossible. So print the raw code instead.

2007-08-09  Alexandre Julliard <julliard@winehq.org>

	* server/timer.c:
	server: Fixed handling of a relative start time for a timer.

2007-08-06  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/user32/menu.c:
	user32: Skip system menu entries when using keyboard.

2007-08-08  Tijl Coosemans <tijl@ulyssis.org>

	* configure, configure.ac, include/config.h.in, loader/pthread.c,
	  server/ptrace.c:
	loader: Use thr_self syscall to get thread id on FreeBSD.

	* configure, configure.ac, include/config.h.in:
	configure: Remove check for libxpg4.

2007-08-08  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/winecfg.c:
	winecfg: Fix crash when remove app button is pressed in applications tab.

2007-08-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/combo.c, dlls/user32/tests/combo.c:
	user32: CBN_SELCHANGE notification should be sent before an edit update.

2007-08-09  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/wineconsole/wineconsole_Ru.rc:
	wineconsole: Rearrange control elements in Russian resources.

2007-08-08  Evan Stade <estade@gmail.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Handle transparency data when loading PNG images.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromGraphics stub.

	* dlls/gdiplus/image.c, dlls/gdiplus/tests/image.c:
	gdiplus: Fixed conformance of GdipCreateBitmapFromScan0.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/image.c:
	gdiplus/tests: Added GdipCreateBitmapFromScan0 test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdipluspixelformats.h:
	gdiplus: Added GdipSetImagePalette stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillRectangle.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenDashOffset/GdipSetPenDashOffset.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipCreatePath2.

2007-08-09  Francois Gouget <fgouget@free.fr>

	* dlls/dsound/mixer.c, dlls/gdi32/tests/path.c, dlls/ntdll/time.c,
	  dlls/oleaut32/tests/vartest.c, dlls/tapi32/line.c,
	  dlls/user32/button.c, dlls/user32/tests/sysparams.c,
	  dlls/winedos/module.c:
	Assorted spelling fixes.

	* tools/winapi/win32.api:
	gdi32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	mscoree: Update win32.api to fix the winapi_check warnings.

	* dlls/msi/format.c, dlls/msi/install.c, dlls/msi/msi.c,
	  dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/package.c,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/suminfo.c,
	  include/msi.h, include/msiquery.h, tools/winapi/win32.api:
	msi: Better match the PSDK types, remove some now unused types from win32.api,
	and update it to fix the winapi_check warnings.

	* include/imm.h, tools/winapi/win32.api:
	imm32: Add a couple of missing prototypes and update win32.api to fix the
	winapi_check warnings.

	* tools/winapi/win32.api:
	d3drm: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	netapi32: Update win32.api to fix the winapi_check warnings.

2007-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/except.c:
	kernel32: Don't get stuck if the debugger exits without signaling the event.

2007-08-09  Francois Gouget <fgouget@free.fr>

	* dlls/ddrawex/main.c:
	ddrawex: Better match the PSDK types and fix the winapi_check warnings.

	* dlls/wininet/internet.c, dlls/wininet/urlcache.c, include/Makefile.in,
	  include/wininet.h, include/winineti.h, tools/winapi/win32.api:
	wininet: Add a skeleton winineti.h header with fixed prototypes for
	[GS]etUrlCacheConfigInfo*(), DeleteIE3Cache() and IsUrlCacheEntryExpired*().
	Remove SetUrlCacheConfigInfo*() from wininet.h, it's supposed to be declared
	in winineti.h.
	Update win32.api to fix the winapi_check warnings.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: #undef some macros to avoid a conflict between openssl/ssl.h and
	wincrypt.h.

2007-08-09  Francois Gouget <fgouget@codeweavers.com>

	* include/winreg.h:
	advapi32: Add a prototype for RegDeleteKeyValue*().

2007-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Better pixelformat selection code.

	* dlls/winex11.drv/opengl.c:
	wgl: Rewrite ChoosePixelFormat.

2007-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Correctly check GLX capabilities. Use client GLX extensions on ATI hardware
	to work around driver bugs.

2007-08-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c, dlls/msi/tests/msi.c:
	msi: Simplify MsiQueryComponentState, with more tests.

2007-08-08  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Call CHECK_CALLED(OnProgress_SENDINGREQUEST) for FILE_TEST since
	we SET_EXPECT it.

	* dlls/urlmon/tests/url.c, dlls/urlmon/umon.c:
	urlmon: Do not use BindToStorage_hack for INTERNET_SCHEME_HTTP.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Fix clipformat test.

2007-08-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/snmpapi/tests/util.c:
	snmpapi/tests: Run tests again on win98 and NT4.

2007-08-08  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	ole32: The default handler needs to have its own implementation of
	IPersistStorage.
	For now we forward the methods to the data cache as before.

	* dlls/ole32/defaulthandler.c:
	ole32: Factor out the running object test into a separate function.

2007-08-02  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	ole32: Fix a few comments.

2007-08-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/defwnd.c:
	user32: WM_IME_CHAR should result in posted, not sent, WM_CHAR messages.

2007-08-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/message.c, dlls/user32/tests/msg.c,
	  dlls/user32/user_private.h:
	user32: Support for the magic WM_CHAR W->A conversion in Get/PeekMessage.

	* dlls/user32/tests/msg.c:
	user32/tests: Added test cases for WM_CHAR conversions.

	* dlls/user32/message.c, dlls/user32/user_main.c,
	  dlls/user32/user_private.h, dlls/user32/winproc.c:
	user32: Added support for the magic WM_CHAR A->W conversions in
	Send/Post/DispatchMessage.

	* dlls/user32/message.c, dlls/user32/user_private.h,
	  dlls/user32/winproc.c:
	user32: Factor out the calling of a window's winproc into a separate function.

	* dlls/user32/message.c:
	user32: Factor out the various SendMessage functions into a common routine.

2007-08-02  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dpnlobby/Makefile.in, dlls/dpnlobby/dpnlobby.spec,
	  dlls/dpnlobby/version.rc:
	dpnlobby: Add dpnlobby that forwards to dpnet.dll.

	* dlls/kernel32/kernel32.spec:
	kernel32: Export RestoreLastError.

2007-08-08  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/console.c:
	kernel32: Do not append empty lines to the console history.

2007-08-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix typo.

2007-07-29  Peter Dons Tychsen <donpedro@dhcppc2>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Allow the use of the standard Joystick GUID when calling CreateDevice.

2007-08-03  Rob Shearman <rob@codeweavers.com>

	* dlls/urlmon/tests/stream.c, dlls/urlmon/umstream.c:
	urlmon: Check some of the input parameters to URLOpenStreamA/W &
	URLOpenBlockingStreamA/W for NULL.
	Add tests for these.

	* dlls/urlmon/tests/Makefile.in, dlls/urlmon/tests/stream.c:
	urlmon: Add tests for URLOpenStreamW and URLOpenBlockingStreamW.

	* dlls/urlmon/umstream.c:
	urlmon: Implement URLOpenBlockingStreamA/W and URLOpenStreamA/W.

	* dlls/urlmon/binding.c:
	urlmon: The pcbRead parameter for IInternetProtocol::Read is optional, so fix
	the protocol implementation to check for this.

	* dlls/urlmon/umstream.c, dlls/urlmon/urlmon.spec:
	urlmon: Implement stubs for URLOpenBlockingStreamA/W and URLOpenStreamA/W.

	* include/urlmon.idl:
	include: Add declarations for URLOpenStreamA/W, URLOpenBlockingStreamA/W and
	URLOpenPullStreamA/W.

2007-07-27  Peter Dons Tychsen <donpedro@tdcadsl.dk>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/faultrep/Makefile.in, dlls/faultrep/faultrep.c,
	  dlls/faultrep/faultrep.spec:
	faultrep: Add a stub dll.

2007-08-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/heap.c:
	msvcrt: Use the correct size_t type.

2007-08-08  Francois Gouget <fgouget@free.fr>

	* include/hlink.idl, tools/winapi/win32.api:
	hlink: Add a missing prototype and update win32.api to fix the winapi_check
	warnings.

	* tools/winapi/win32.api:
	localui: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	wined3d: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	hhctrl.ocx: Update win32.api to fix the winapi_check warnings.

	* include/mapidefs.h, include/mapix.h:
	mapi32: Remove redundant protections against duplicate header inclusion.

	* dlls/wintrust/crypt.c, include/mscat.h, tools/winapi/win32.api:
	wintrust: Fix the CryptCATAdminReleaseCatalogContext() prototype and better
	match the PSDK types.
	Add some missing prototypes to mscat.h.
	Update win32.api to fix the winapi_check warnings.

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	urlmon: Fix compilation on systems that don't support nameless unions.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/ntdll/ntdll.spec:
	ntdll: Fix the RtlQueryInformationActivationContext() .spec prototype to match
	its implementation.

	* tools/winapi/win32.api:
	winapi_check: Fix a couple of dll names.

	* dlls/dnsapi/main.c, dlls/dnsapi/name.c, dlls/dnsapi/query.c,
	  dlls/dnsapi/record.c, include/windns.h, tools/winapi/win32.api:
	dnsapi: Better match the PSDK types, especially with regards to constness.
	Add some missing A/W prototype macros.
	Update win32.api to fix the winapi_check warnings.

	* dlls/netapi32/netapi32.c, dlls/netapi32/share.c, dlls/netapi32/wksta.c,
	  include/lmaccess.h, include/lmserver.h, include/lmshare.h,
	  include/lmwksta.h:
	netapi32: Add some missing prototypes in the lmaccess.h, lmshare.h and
	lmwksta.h headers.
	Replace LPWC?STR with LMC?STR to better match the PSDK.

	* dlls/pdh/tests/pdh.c:
	pdh/tests: Add missing '\n' to ok() calls.

2007-08-08  Francois Gouget <fgouget@codeweavers.com>

	* include/winreg.h:
	winreg.h: Add RRF_RT_ANY.

2007-08-08  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/ddraw.c, dlls/ddraw/main.c, include/ddraw.h,
	  tools/winapi/win32.api:
	ddraw: Better match the PSDK types and fix the winapi_check warnings.

2007-08-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/d3d9/tests/visual.c:
	d3d9: Comment out some failing fog tests.

2007-08-07  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawRectangleI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillRectangleI.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipCreateLineBrushFromRectI.

	* dlls/gdiplus/brush.c:
	gdiplus: Updated brush cloner/deleter.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetCustomLineCapStrokeCaps stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c,
	  include/gdipluscolormatrix.h, include/gdiplusflat.h:
	gdiplus: Added GdipSetImageAttributesColorMatrix stub.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed bug drawing custom caps.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipGetLineGammaCorrection/GdipSetLineGammaCorrection.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetLineSigmaBlend stub.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetLineWrapMode.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipCreateLineBrush.

	* dlls/gdiplus/image.c:
	gdiplus: Make GdipGetMetafileHeaderFromMetafile return Ok.

	* dlls/gdiplus/image.c:
	gdiplus: GdipLoadImageFromStream makes initializations.

	* dlls/gdiplus/graphics.c:
	gdiplus: Don't prematurely release stream.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawImageI.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, dlls/gdiplus/image.c:
	gdiplus: Return width and height of metafiles.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromFile.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateStreamOnFile.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdiplusimaging.h,
	  include/gdiplustypes.h:
	gdiplus: Added GdipBitmapLockBits.

2007-08-08  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/cdrom.c:
	ntdll: Implement CDROM_Verify for FreeBSD.

	* dlls/wineoss.drv/audio.c:
	wineoss: Avoid SNDCTL_DSP_GETTRIGGER.

	* dlls/wineoss.drv/audio.c:
	wineoss: Add SNDCTL_MIXERINFO support.

2007-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Move over to WGL.

2007-08-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/context.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Prepare pbuffer code for WGL transition.

2007-08-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c:
	wined3d: Move fake context code over to WGL.

2007-08-07  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: According to MSDN, inner content is only decoded when the content
	type is data.

	* dlls/crypt32/context.c:
	crypt32: Add a couple traces.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Test and correct finding a subject certificate.

	* dlls/crypt32/cert.c:
	crypt32: Use the authority key identifier to search for a certificate's issuer.

	* dlls/crypt32/cert.c:
	crypt32: Fix typo.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Introduce cryptasn debug channel to quiet down crypt traces.

	* dlls/crypt32/str.c:
	crypt32: Implement CertRDNValueToStr for UTF-8 strings.

2007-08-07  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add test for binding to a URL from which a very short response
	is received.

2007-08-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/tests/install.c, dlls/msi/tests/msi.c:
	msi: Implement the remaining contexts for MsiQueryComponentState.

2007-08-07  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/quartz/control.c, dlls/quartz/dsoundrender.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/memallocator.c, dlls/quartz/parser.c,
	  dlls/quartz/parser.h, dlls/quartz/pin.c, dlls/quartz/pin.h,
	  dlls/quartz/transform.c:
	quartz: Constify some variables.

2007-08-07  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Fix crash in graphics tab.

	* programs/winecfg/x11drvdlg.c:
	winecfg: Fix apply button always available in graphics tab bug.

2007-08-07  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h:
	secur32: Remove valid_session_key from NegoHelper since it is only ever set
	and not read.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Split the NTLM credential and context handles into separate objects.
	This prevents races with two threads using the helper object at the same
	time on two different context handles, eliminates the need to free the
	credential handle after freeing the context handles and also prevents a
	crash caused by not clearing session_key in DeleteSecurityContext.

2007-07-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store the position_transformed flag in the vdecl.

2007-08-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Determine used streams at vdecl creation.

2007-07-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Remove link collection from vertexdeclaration.c.

2007-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c:
	d3d: Add a simple offscreen rendering test.

	* dlls/ddraw/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	ddraw: Implement IDirect3DDevice7::DrawIndexedPrimitiveStrided.

2007-08-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winecfg/winecfg.rc:
	winecfg: Show version again in About box.

2007-08-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Create paths after checking availability of functions.

2007-08-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Changed skip message.

	* dlls/shlwapi/tests/clist.c, dlls/shlwapi/tests/clsid.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/shlwapi/tests/path.c:
	shlwapi/tests: Use GetModuleHandleA instead of LoadLibraryA.

2007-08-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/class.c, dlls/user32/defdlg.c, dlls/user32/hook16.c,
	  dlls/user32/message.c, dlls/user32/msg16.c,
	  dlls/user32/user_private.h, dlls/user32/win.c, dlls/user32/winproc.c,
	  dlls/user32/winproc.h, dlls/user32/wnd16.c:
	user32: Get rid of winproc.h and move definitions in user_private.h.

	* dlls/user32/message.c, include/winuser.h:
	user32: Fixed the return value of DispatchMessageA/W.

2007-08-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/Makefile.in, include/winres.h, include/winresrc.h,
	  programs/clock/rsrc.rc, programs/cmd/wcmdrc.rc,
	  programs/cmdlgtst/cmdlgr.rc, programs/net/rsrc.rc,
	  programs/oleview/rsrc.rc, programs/progman/rsrc.rc,
	  programs/regedit/rsrc.rc, programs/start/rsrc.rc,
	  programs/taskmgr/taskmgr.rc, programs/uninstaller/rsrc.rc,
	  programs/view/viewrc.rc, programs/winecfg/winecfg.rc,
	  programs/winefile/rsrc.rc, programs/winemine/rsrc.rc,
	  programs/winetest/resource.h, programs/winetest/winetest.rc,
	  programs/winhelp/rsrc.rc, programs/wordpad/rsrc.rc,
	  programs/write/rsrc.rc, programs/xcopy/rsrc.rc:
	include: winres.h no longer exists in PSDK, fix winresrc.h includes.

2007-08-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winecfg/winecfg.c:
	winecfg: Fix virtual desktop selection.

2007-07-30  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/dpnet/Makefile.in, dlls/dpnet/dpnet_main.c,
	  dlls/dpnet/dpnet_private.h, dlls/dpnet/lobbiedapp.c,
	  dlls/dpnet/regsvr.c:
	dpnet: Implement directplay lobbied application stubs.

2007-08-07  Huw Davies <huw@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: Fix the case when Proxy or ProxyBypass is NULL.

2007-08-07  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/capture.c, dlls/dsound/dsound.c:
	dsound: Make hardware acceleration work again.

2007-08-06  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Keep track of download state in tests.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add tests for synchronous vs asynchronous binding.

	* dlls/urlmon/binding.c:
	urlmon: Add support for synchronous binding.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Declare the bind flags as a global variable in url tests.

2007-08-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/msi.c:
	msi: Implement the MSIINSTALLCONTEXT_MACHINE context for MsiQueryComponentState.

	* dlls/msi/msi.c, dlls/msi/msi.spec:
	msi: Forward MsiQueryComponentStateA to MsiQueryComponentStateW.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiQueryComponentState.

2007-08-06  Andrew Talbot <andrew.talbot@talbotville.com>

	* dlls/qcap/capture.h, dlls/qcap/pin.c, dlls/qcap/pin.h, dlls/qcap/v4l.c:
	qcap: Constify some variables.

2007-08-06  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/write/Ko.rc, programs/write/rsrc.rc:
	write: New Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

2007-08-06  Aric Stewart <aric@codeweavers.com>

	* include/ddk/imm.h:
	imm32: Additional constants needed for the IME implementation.

2007-08-06  Ralf Beck <musical_snake@gmx.de>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Correct midi input program change + channel aftertouch.

2007-08-06  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winecfg/winecfg.c:
	winecfg: Values list should be NULL-terminated.

2007-08-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use UINT instead of uint.

	* dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Don't call ActivateContext between ENTER_GL/LEAVE_GL.

2007-08-06  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/dir.c, dlls/msvcrt/tests/dir.c:
	msvcrt: Fix _makepath().

	* dlls/msvcrt/tests/dir.c:
	msvcrt: Add _makepath() tests.

2007-08-05  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Fix todo_wine's to show the IServiceProvider interface is not
	queried on wine from CreateAsyncBindCtx.

2007-08-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Reuse common code and definition.
	Unify object properties structure and he common axis mapping function
	for both joystick drivers.

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Fix POV calculation.
	Combine and simplify the POV calculations. Linux provides X,Y for the POV.
	While DirectInput returns dial-degrees*1000 (12 o-click is 0 degrees).

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix handling of dead-zone in evdev joystick.
	USB joysticks can and do provide dead-zone area. Use it to initialize
	the initial dead-zone.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Fix mapping of axes ids to property ids.

2007-08-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Another devmode bug.

2007-08-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Use the macro when querying the current display settings.

	* dlls/wined3d/directx.c:
	wined3d: Initialize major and minor when filling GL caps.

	* dlls/wined3d/directx.c:
	wined3d: Properly setup DevModeW before using it.

2007-08-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Be consistent with GLX_SLOW_CONFIG meaning GENERIC_ACCELERATION.

	* dlls/winex11.drv/opengl.c:
	winex11: Properly handle WGL_PBUFFER_LOST_ARB.

2007-08-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Constify some variables.

2007-08-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define avi resource #164.

2007-08-04  Janusz Tomczak <januszt29@interia.pl>

	* dlls/oledlg/oledlg_Pl.rc:
	oledlg: Fix Polish translation.

	* dlls/mpr/mpr_Pl.rc:
	mpr: Fix Polish translation.

	* dlls/msvfw32/msvfw32_Pl.rc:
	msvfw32: Fix Polish translation.

	* dlls/hhctrl.ocx/Pl.rc:
	hhctrl.ocx: Fix Polish translation.

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Fix Polish translation.

	* dlls/avifil32/avifile_Pl.rc:
	avifil32: Fix Polish translation.

2007-08-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/mbcs.c:
	msvcrt: mbsnbicmp should be case insensitive.

2007-08-04  Francois Gouget <fgouget@free.fr>

	* dlls/msi/msi.c, dlls/msi/registry.c, include/msi.h:
	msi: Fix the MsiEnumProductsEx*(), MsiQueryComponentState*() and
	MsiProvideQualifiedComponentEx*() prototypes.

	* include/mapix.h:
	mapi32: Add a prototype for MAPIAdminProfiles.

	* dlls/netapi32/access.c, include/Makefile.in, include/lmuse.h,
	  include/lmuseflg.h:
	netapi32: Add lmuseflg.h and include it from lmuse.h.
	Also add some prototypes to lmuse.h, and use it in the implementation.

	* include/lm.h:
	netapi32: Add fixmes for the headers that are still missing and thus cannot
	be included in lm.h.
	Also note that lmbrowsr.h is no longer present in current PSDKs.

2007-08-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/capture.c:
	dsound: Acceleration fixes for wavein emulation.

	* dlls/dsound/dsound.c:
	dsound: Make timer more robust.

2007-08-03  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c, dlls/dsound/primary.c:
	dsound: Sound acceleration fixes.

2007-08-03  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/winecfg.c:
	winecfg: Fix crash caused by calling set_reg_key with NULL value.

2007-08-04  Francois Gouget <fgouget@free.fr>

	* .gitignore, dlls/mscoree/mscoree_main.c, include/Makefile.in,
	  include/cor.h, include/mscoree.idl:
	mscoree: Add cor.h and mscoree.idl and fix some semi-stub prototypes.

	* dlls/imagehlp/access.c, dlls/imagehlp/modify.c, include/imagehlp.h,
	  tools/winapi/win32.api:
	imagehlp: Better match the PSDK types, especially with regards to constness.
	Add many missing prototypes which we already had in dbghelp.h, and their
	related structures.
	Update win32.api to fix the winapi_check warnings.

	* dlls/dwmapi/dwmapi_main.c, include/Makefile.in, include/dwmapi.h,
	  tools/winapi/win32.api:
	dwmapi: Add dwmapi.h and update win32.api to fix the winapi_check warnings.

	* include/mapidefs.h, include/mapival.h:
	mapi32: Add missing #include directives.

	* dlls/crypt32/cert.c, dlls/crypt32/main.c, include/wincrypt.h,
	  tools/winapi/win32.api:
	crypt32: Better match the PSDK types and fix the winapi_check warnings.

	* dlls/dnsapi/main.c, dlls/dnsapi/query.c, include/windns.h,
	  tools/winapi/win32.api:
	dnsapi: The DNS APIs don't take PIP4_ARRAYs anymore (for IPv6 compatibility).

	* include/msi.h:
	msi: MsiProvideComponentFromDescriptorA/W() is not supposed to be defined
	in msi.h.

	* include/advpub.h:
	advapi32: We have cfgmgr32.h now.

	* include/dbghelp.h, include/imagehlp.h:
	imagehlp & dbghelp: Add the IMAGEAPI and DBHLPAPI macros.

	* dlls/kernel32/tests/loader.c:
	kernel32/tests: Re-balance the curly parentheses so winapi_check can parse
	the file.

	* dlls/mapi32/mapi32_main.c, include/Makefile.in, include/mapiform.h:
	mapi32: Add a skeleton mapiform.h header with a proper prototype for
	MAPIOpenLocalFormContainer().

2007-08-03  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipImageSelectActiveFrame stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdipluspixelformats.h:
	gdiplus: Added GdipGetImagePixelFormat.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipImageGetFrameDimensionsList stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromStream.

	* dlls/gdiplus/gdiplus.c:
	gdiplus: Allow non-default GdiplusStartupInput.

2007-08-06  Alexandre Julliard <julliard@winehq.org>

	* include/gdiplusinit.h:
	gdiplus: Fixed GdiplusStartupOutput definition.

2007-08-03  Evan Stade <estade@gmail.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Allow PNG_COLOR_TYPE_RGB_ALPHA.

2007-08-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Fix the size allocated for the deferred custom action string.

2007-08-04  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mshtml/main.c:
	mshtml: Remove const in front of REFIID as that is a macro that already starts
	with const.

	* dlls/dsound/primary.c:
	dsound: Remove redundant NULL check before HeapFree. Found by Smatch.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Move the TRACE before the return. Found by Smatch.

	* dlls/inkobj/inkobj.c:
	inkobj: Remove break after return. Found by Smatch.

2007-08-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: Constify some variables.

2007-08-03  Luis C. Busquets Pérez <luis.busquets@ilidium.com>

	* dlls/ntdll/ntdll.spec:
	ntdll: Update Nt stdcalls for stubs of Zw.

2007-08-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: WGL_COLOR_BITS_ARB does include alpha.

2007-07-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Present requires the swapchain's context.

2007-07-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c, dlls/wined3d/basetexture.c:
	wined3d: WINED3DSAMP_MAXMIPLEVEL fixes.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/query.c,
	  dlls/d3d9/tests/shader.c, dlls/d3d9/tests/surface.c,
	  dlls/d3d9/tests/texture.c, dlls/d3d9/tests/visual.c:
	d3d9: Do not fail if d3d9 is not available.

	* dlls/d3d8/tests/device.c, dlls/d3d8/tests/surface.c,
	  dlls/d3d8/tests/texture.c, dlls/d3d8/tests/visual.c,
	  dlls/d3d8/tests/volume.c:
	d3d8: Skip tests if d3d is not supported.

	* dlls/d3d9/tests/surface.c:
	d3d9: Deal with failing surface creation.

2007-08-03  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/wavein.c:
	winealsa: wavein has LPWAVEINCAPSW not LPWAVEOUTCAPSW.

2007-08-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Skip tests for which the dll is missing.

2007-08-02  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Remove bad default setting for logpixels registery.

	* programs/winecfg/winecfg.c, programs/winecfg/winecfg.h:
	winecfg: Read/write registry in unicode.

2007-07-31  John Klehm <xixsimplicityxix@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/inkobj/Makefile.in, dlls/inkobj/inkobj.c,
	  dlls/inkobj/inkobj.spec:
	inkobj: Add stub implementation of inkobj dll.

	* .gitignore, include/Makefile.in, include/msinkaut.idl:
	inkobj: Add stub header for inkobj dll.

2007-08-03  Alexandre Julliard <julliard@winehq.org>

	* tools/make_makefiles:
	make_makefiles: Added support for updating include/Makefile.in.

2007-08-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: wglChooosePixelFormatARB returns the total number of matching pixelformats
	and not the number of pixelformats stored in the buffer.
	This didn't work due to bugs in wglChoosePixelFormatARB but also due
	to strange behavior of glXChooseFBConfig. Some of its default values
	are not zero or GLX_DONT_CARE which cause some formats not to appear.

2007-08-02  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	urlmon: Send BINDSTATUS_DOWNLOADINGDATA if we do not send BEGINDOWNLOADDATA
	or ENDDOWNLOADDATA.

	* dlls/urlmon/binding.c:
	urlmon: Call IBindStatusCallback_OnStopBinding only if this actually is the
	last ReportData.

2007-08-03  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	Revert "urlmon: Use BSCF_ values passed to report_data to keep track of
	download state."
	This reverts commit 978f6b98c9a67055f5a0f878a44b3b66c16a6019.

	* dlls/urlmon/binding.c:
	Revert "urlmon: Report BINDSTATUS_DOWNLOADINGDATA on
	BSCF_INTERMEDIATEDATANOTIFICATION."
	This reverts commit b3a660a69cb345d0960d787faa0229f2f25cc11c.

2007-08-02  Evan Stade <estade@gmail.com>

	* include/gdiplusflat.h:
	gdiplus: Alphabetized header.

	* dlls/gdiplus/graphics.c:
	gdiplus: Removed old fixmes.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use custom cap base inset differently.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipG/SetPathGradientFocusScales.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipG/SetPathGradientCenterPoint.

	* dlls/gdiplus/brush.c:
	gdiplus: Updated GpBrush functions.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipS/GetPathGradientGammaCorrection.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetPathGradientSigmaBlend stub.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipS/GetPathGradientSurroundColorsWithCount stubs.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipCreatePathGradient.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h:
	gdiplus: Added GdipGetPathGradientPointCount.

	* dlls/gdi32/enhmetafile.c:
	gdi32: Don't print fixme more than once.

2007-08-03  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	d3d9: Update win32.api to fix the winapi_check warnings.

	* dlls/netapi32/access.c:
	netapi32: Fix the NetUseAdd() calling convention.

	* tools/winapi/win32.api:
	winapi_check: FLOAT is a float.

	* dlls/opengl32/tests/opengl.c:
	opengl32/tests: Add missing '\n' to ok() call.

	* dlls/gdiplus/gdiplus.spec:
	gdiplus: Fix a couple of prototypes in the spec file.

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/msg.c,
	  dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Add and use HCRYPTPROV_LEGACY and HCRYPTPROV_OR_NCRYPT_KEY_HANDLE.

	* tools/winapi/win32.api:
	advapi32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	comctl32: Update win32.api to fix the winapi_check warnings.

	* dlls/d3d8/d3d8_main.c, tools/winapi/win32.api:
	d3d8: Better match the PSDK types and fix the winapi_check warnings.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Fix a signed/unsigned mismatch.

	* include/lmerr.h, include/lmserver.h, include/lmshare.h:
	netapi32: Add missing #include directives to the netapi32 headers.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Use quotes to include ddraw.h. Fixes a winapi_check warning.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/image.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c, include/dbghelp.h, programs/winedbg/info.c,
	  programs/winedbg/types.c, programs/winedbg/winedbg.c,
	  tools/winapi/win32.api:
	dbghelp: Better match the PSDK types, especially with regards to constness.
	Also add a number of missing prototypes, especially 64bit or Unicode
	versions of existing prototypes, and the related structures.  Update
	win32.api to fix the winapi_check warnings.

	* dlls/imagehlp/access.c, include/dbghelp.h, include/imagehlp.h:
	imagehlp: Add two missing fields.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c:
	gdiplus: Use the gdiplus type, REAL, rather than FLOAT.

	* include/windns.h:
	dnsapi: Add some constants.

	* dlls/dnsapi/tests/name.c, include/windns.h:
	dnsapi: Define DNS_STATUS as LONG instead of long to improve Win64 compatibility.

	* include/d3d9.h:
	d3d9: Declare the D3DPERF_Xxx() functions in d3d9.h.

2007-08-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/ungif.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Constify some variables.

2007-08-02  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/cert.c:
	crypt32: Support finding certificates by cert id.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Test and fix getting a certificate context's key identifier property.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding a cert with a subject key identifier extension.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding a cert with a public key.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Fix typo in key context property test, and the problems it hid.

	* dlls/crypt32/cert.c:
	crypt32: Add and use a helper function for getting cert properties.

2007-08-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Don't use ConvertAttribWGLtoGLX for wglCreatePbufferARB.

	* dlls/winex11.drv/opengl.c:
	winex11: Report accumulation buffer bits for pixel formats.

2007-08-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/volume.c:
	d3d9: Check for volume texture support before running the volume test.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Some visual test fixes.

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/visual.c:
	ddraw: SetDisplayMode may fail.

2007-08-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Downgrade an ERR.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Some drivers return DDERR_INVALIDPARAMS if DXTn surfaces aren't supported.

2007-08-02  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement decoding OID and directory name alt name entries.

	* dlls/crypt32/decode.c:
	crypt32: Introduce a OID decoding function that ignores the tag and use it
	where the caller already checks the tag.

	* dlls/crypt32/encode.c:
	crypt32: Implement encoding OID and directory name alt name entries.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test encoding/decoding a couple more alt name entry types.

	* dlls/crypt32/decode.c:
	crypt32: Get rid of bogus check and improve traces for unexpected alt name
	entry types.

	* include/wincrypt.h:
	crypt32: Add CERT_ID_XXX defines.

2007-08-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Don't commit data on Stop and Play.

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Fix Lock in dsoutput.

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Fix GetPosition in dsoutput.

2007-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/winproc.c:
	user32: Store all builtin winprocs at the start of the array.
	This allows checking for them in CallWindowProc and avoid message
	translation in that case.

	* dlls/ntdll/actctx.c:
	ntdll: Relax the activation context size check.

2007-08-01  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	winex11: Check for WGL drawing caps.

2007-08-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/write/En.rc, programs/write/Makefile.in,
	  programs/write/resources.h, programs/write/rsrc.rc,
	  programs/write/write.c:
	write.exe: Add a new program that calls wordpad.exe.

2007-08-02  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	urlmon: Do not fill stream buffer on every report_data, native doesn't.

	* dlls/urlmon/binding.c:
	urlmon: Report total data read in this bind operation to OnDataAvailable,
	not the size of the available buffer.

	* dlls/urlmon/binding.c:
	urlmon: Report BINDSTATUS_DOWNLOADINGDATA on BSCF_INTERMEDIATEDATANOTIFICATION.

	* dlls/urlmon/binding.c:
	urlmon: Use BSCF_ values passed to report_data to keep track of download state.

	* dlls/urlmon/binding.c:
	urlmon: Set the queue tail to the new task when pushing a task onto the tail
	of the queue.

2007-08-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Also print a readable table name in the failure notice.

2007-08-01  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPathGradientWrapMode.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetPathGradientCenterColor.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added solid-color path gradient brush implementation.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawLine.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenWidth.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillPolygon.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipClonePath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipIsOutlineVisiblePathPointI stub.

	* dlls/gdiplus/graphics.c:
	gdiplus: Don't suggest image size when converting WMF to EMF.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Slight correction to EMF rendering.

2007-08-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c:
	msi: Reimplement joins to allow joining any number of tables, each of arbitrary
	size.

	* dlls/msi/tests/db.c:
	msi: Add tests for joining three tables.

2007-08-01  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Only report 16 bit float declaration types as supported if we
	support them.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Properly load FLOAT16_2 and FLOAT16_4 vertex data.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add definitions and detection for GL_NV_half_float.

	* dlls/wined3d/surface.c:
	wined3d: Set SFLAG_INSYSMEM when WINED3DLOCK_DISCARD is passed to
	IWineD3DSurfaceImpl_LockRect.

2007-08-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Constify some variables.

2007-08-01  Erik Inge Bolsø <knan-wine@anduin.net>

	* dlls/dinput/joystick_linux.c:
	dinput: Fix joystick axis remapping.

2007-08-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c:
	mshtml: Release typelib in PROCESS_DETACH.

	* dlls/shdocvw/navigate.c:
	shdocvw: Wrong PostData VT is not an error.

2007-08-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Support WGL_FLOAT_COMPONENTS_NV in wglGetPixelFormatAttrib*.

	* dlls/winex11.drv/opengl.c:
	wgl: Print more debug info.

	* dlls/opengl32/tests/opengl.c, dlls/winex11.drv/opengl.c:
	wgl: SetPixelFormat should fail on the root window.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/opengl32/tests/Makefile.in, dlls/opengl32/tests/opengl.c,
	  dlls/winex11.drv/opengl.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	wgl: GetPixelFormat fix for offscreen formats.

	* dlls/winex11.drv/opengl.c:
	wgl: Silence an error in ConvertPixelFormatWGLtoGLX.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c, dlls/dsound/sound3d.c:
	dsound: Move resampling away from mixer thread.

2007-08-01  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/actctx.c:
	kernel32/tests: Fixed size to MultiByteToWideChar.

2007-08-01  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, tools/winegcc/Makefile.in:
	configure: Add -m32 flag for C++ compiler too.

2007-07-31  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Extend GdipDrawImagePointsRect.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/image.c:
	gdiplus: Track width and height of GpBitmaps.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/imageattributes.c,
	  include/Makefile.in, include/gdiplus.h, include/gdipluscolormatrix.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetImageAttributesColorKeys stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipBitmapGetPixel stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipRemovePropertyItem stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateBitmapFromStreamICM.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/Makefile.in,
	  include/gdiplus.h, include/gdiplusflat.h, include/gdiplusimaging.h:
	gdiplus: Added partial implementation of GdipSaveImageToStream.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPropertyItemSize stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/image.c, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdipluspixelformats.h:
	gdiplus: Added GdipCreateBitmapFromScan0.

	* dlls/gdiplus/brush.c, dlls/gdiplus/customlinecap.c,
	  dlls/gdiplus/gdiplus.c, dlls/gdiplus/graphicspath.c,
	  dlls/gdiplus/image.c, dlls/gdiplus/imageattributes.c,
	  dlls/gdiplus/matrix.c, dlls/gdiplus/pathiterator.c,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipLoadImageFromStreamICM.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateMatrix3.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetMatrixElements.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetMatrixElements.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c:
	gdiplus: Added GdipFindFirstImageItem stub.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c,
	  dlls/gdiplus/imageattributes.c, dlls/gdiplus/pathiterator.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusmetaheader.h:
	gdiplus: Added GdipGetMetafileHeaderFromMetafile stub.

	* dlls/gdiplus/tests/brush.c, dlls/gdiplus/tests/matrix.c,
	  dlls/gdiplus/tests/pen.c:
	gdiplus: Change include list on 3 tests.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fix memory leak in GdipCreateMetafileFromWMF.

	* dlls/gdiplus/image.c:
	gdiplus: Changed GdipGetImageType.

	* dlls/gdiplus/gdiplus.spec:
	gdiplus: Added more stubs to gdiplus.spec.

	* dlls/gdiplus/image.c:
	gdiplus: Implemented GdipDisposeImage.

	* dlls/gdiplus/imageattributes.c:
	gdiplus: Implemented GdipDisposeImageAttributes.

2007-07-31  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/cert.c:
	crypt32: Remove bad special case, it isn't necessary since the outer content
	specifies the hash algorithm.

	* dlls/crypt32/cert.c:
	crypt32: Use the outer content's signature algorithm rather than the public
	key's embedded algorithm.

2007-08-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Added GetExternal implementation.

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IHTMLWindow::get_external implementation.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fixed QueryInterface failures on IE7.

	* dlls/uuid/uuid.c:
	uuid: Added IID_IProxyManager.

2007-07-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Cater better for domain in test.

2007-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Don't test the contents of an uninitialized buffer.

2007-07-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Constify some variables.

2007-07-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/mixer.c:
	dsound: Add SndQueueMin to have less lock contention in mixer.

	* dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c:
	dsound: Get rid of DS_HEL_FRAGS.

	* dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/primary.c:
	dsound: Add a registry setting for hel buffer length.

2007-07-31  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/security.c, dlls/advapi32/tests/service.c,
	  dlls/comdlg32/filedlg31.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/viewport.c, dlls/gdi32/tests/font.c,
	  dlls/kernel32/tests/path.c, dlls/netapi32/access.c,
	  dlls/shell32/shlfileop.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/winecoreaudio.drv/audio.c, dlls/wined3d/drawprim.c:
	Assorted spelling fixes.

	* tools/winapi/win32.api:
	atl: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/c_parser.pm:
	winapi: Remove some dead code.

	* include/wincrypt.h:
	crypt32: Add FIXMEs for a couple of missing includes.

	* include/wincrypt.h:
	crypt32: Add some missing CERT_XXX_ID constants.

	* dlls/advapi32/crypt.c, include/wincrypt.h:
	crypt32: Fix the CryptReleaseContext() prototype.

	* dlls/comctl32/commctrl.c, include/commctrl.h:
	comctl32: According to the PSDK, DrawShadowText() takes a non-const RECT pointer.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Fix compilation on systems that don't support nameless unions.

2007-07-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Compile against standard GL headers.

2007-07-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Make GetFontData traces more readable.

2007-07-27  Robert Reif <reif@earthlink.net>

	* dlls/msvcrt/tests/heap.c:
	msvcrt/tests: Add _aligned_malloc tests.

	* dlls/msvcrt/heap.c, dlls/msvcrt/msvcrt.spec, include/msvcrt/malloc.h:
	msvcrt: Add _aligned_malloc functions.

2007-07-27  Peter Dons Tychsen <donpedro@tdcadsl.dk>

	* server/token.c:
	server: Added the install driver privilege to the default user.

2007-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/painting.c, dlls/user32/tests/msg.c,
	  dlls/user32/user_private.h, dlls/user32/winpos.c:
	user32: Erase parent window when child is hidden. From a patch by Clinton
	Stimpson.

	* dlls/ntdll/loader.c:
	ntdll: Load dll from the directory containing the manifest for local assemblies.

	* tools/make_makefiles:
	make_makefiles: Add check for incorrect module name.

2007-07-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winhttp/Makefile.in:
	winhttp: Fix compile/install issue.

2007-07-30  Nigel Liang <ncliang@gmail.com>

	* programs/winecfg/Cs.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pl.rc, programs/winecfg/Ro.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/resource.h,
	  programs/winecfg/theme.c:
	winecfg: Add menu font settings to desktop integration tab.

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Hu.rc, programs/winecfg/It.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pl.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ro.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Si.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/winecfg.h,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Add trackbar to set screen resolution in graphics tab.

2007-07-31  Jacek Caban <jacek@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winhttp/Makefile.in, dlls/winhttp/main.c,
	  dlls/winhttp/winhttp.spec:
	winhttp: Added winhttp.dll.

2007-07-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/drive.c, programs/winecfg/libraries.c,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c:
	winecfg: Fix some compatibility problems.

2007-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shellpath.c, programs/winecfg/theme.c:
	Avoid non-portable Unix mode bits macros.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Implement a light form of locking for dsoutput.

2007-07-30  Evan Stade <estade@gmail.com>

	* dlls/gdi32/pen.c, dlls/gdi32/tests/pen.c:
	gdi32: Handle PS_USERSTYLE in ExtCreatePen.

	* dlls/gdi32/tests/pen.c:
	gdi32: Added more tests for ExtCreatePen on PS_USERSTLYE.

	* dlls/gdi32/pen.c:
	gdi32: Improve ExtCreatePen parameter checking.

2007-07-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Constify some data.

	* dlls/kernel32/tests/time.c:
	kernel32: Skip remainder of the time zone test if SystemTimeToTzSpecificLocalTime
	not present.

2007-07-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/devinst.c, dlls/setupapi/tests/parser.c,
	  dlls/setupapi/tests/query.c, dlls/setupapi/tests/stringtable.c:
	setupapi/tests: Use GetModuleHandleA instead of LoadLibraryA.

2007-07-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user32/misc.c, dlls/user32/user32.spec:
	user32: Add a stub for GetAppCompatFlags2.

2007-07-30  Tomas Carnecky <tom@dbservice.com>

	* configure, configure.ac:
	configure: Check whether linker supports --enable-new-dtags.

2007-07-30  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Partial implementation of GdipDrawImagePointsRect.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/image.c:
	gdiplus: Implemented GdipGetImageBounds for metafiles.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/imageattributes.c:
	gdiplus: Added a minimal implementation of GdipCreateImageAttributes.

	* dlls/gdiplus/image.c:
	gdiplus: Implemented GdipGetImageType.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplustypes.h:
	gdiplus: Added GdipDrawImagePointsRect stub.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/imageattributes.c, include/gdiplusenums.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added ImageAttributes stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetImageBounds stub.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c:
	gdiplus: Partial implementation of GdipCreateMetafileFromWMF.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Recognize EMF header when loading picture.

2007-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added HTMLWindow's IDispatch methods implementation.

	* dlls/mshtml/main.c:
	mshtml: Added mshtml.tlb registration.

	* dlls/mshtml.tlb/rsrc.rc:
	mshtml.tlb: Fixed a typo in copyright header.

2007-07-30  James Hawkins <truiken@gmail.com>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.c,
	  programs/msiexec/service.c:
	msiexec: Implement a stub MSIServer service.

2007-07-30  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Support getting the inner content OID from a decoded signed message.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c:
	crypt32: Get rid of attribute certs from signed info, they're not supported
	anyway.

	* dlls/crypt32/decode.c:
	crypt32: Add a few traces.

	* dlls/crypt32/decode.c:
	crypt32: Simplify alignment calculation.

	* include/wincrypt.h:
	crypt32: Add missing definitions.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c, include/wincrypt.h:
	crypt32: Add CryptMsgControl stub.

	* dlls/crypt32/msg.c:
	crypt32: Implement getting the signer cert info from a decoded signed message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting signer info from a decoded signed message.

	* dlls/crypt32/decode.c:
	crypt32: Separate decoding PKCS signer info into internal and external versions.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting inner content of a decoded signed message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test getting more parameters from a decoded signed message.

2007-07-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix compilation on systems without GLX_RGBA_FLOAT_ARB.

2007-07-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/registry.c:
	msi/registry: Use the return value of squash_guid.

	* include/pdhmsg.h:
	include/pdhmsg.h: Add some defines.

2007-07-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Add a TRACE when wine_dlopen for SONAME_LIBCUPS failed.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/visual.c:
	ddraw: Table fog may be unsupported.

	* dlls/d3d8/tests/device.c:
	d3d8: Only test pixel shaders if they are supported.

	* dlls/d3d8/tests/device.c:
	d3d8: Use a less demanding format for the depth stencil test.

	* dlls/d3d8/tests/device.c:
	d3d8: Only test volume textures if they are supported.

	* dlls/d3d8/tests/device.c:
	d3d8: Only test cube textures if they are supported.

2007-07-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Cater for domain in the test.

	* dlls/advapi32/tests/crypt.c:
	advapi32/tests: Use skip when we don't have enough rights.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Constify DSOUND_CheckEvent.

	* dlls/dsound/dsound_private.h, dlls/dsound/primary.c:
	dsound: Remove some more unused variables.

	* dlls/dsound/buffer.c, dlls/dsound/primary.c:
	dsound: Silence the IDirectSoundBuffer_Initialize warnings.

	* dlls/dsound/mixer.c:
	dsound: Fix locking in mixer.

	* dlls/dsound/mixer.c:
	dsound: Small mixer optimizations.

	* dlls/dsound/primary.c:
	dsound: Reset state when stopping device.

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c:
	dsound: Replace buffer critical section with a rw-lock.

2007-07-27  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed a typo.

	* dlls/gdiplus/pen.c, dlls/gdiplus/tests/pen.c:
	gdiplus: Check custom dash array for bad properties.

	* dlls/gdiplus/tests/pen.c:
	gdiplus/tests: More GdipSetPenDashArray tests.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/pen.c:
	gdiplus: Draw custom dashes.

2007-07-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Avoid activation context leak for dlls with no imports.

	* dlls/ntdll/actctx.c:
	ntdll: Allow optional elements in the comClass element.

	* dlls/ntdll/actctx.c:
	ntdll: Use the exact size of the manifest file.

	* dlls/ntdll/rtlstr.c:
	ntdll: Fixed the null bytes check in RtlIsTextUnicode.

	* dlls/ntdll/actctx.c:
	ntdll: Convert the XML parser to Unicode to support UCS-16 manifests.

2007-07-27  Tim Schwartz <tim@sanityinternet.com>

	* include/Makefile.in, include/lm.h, include/lmuse.h:
	lmuse.h: Add structures needed by NetUseAdd().

2007-07-26  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/msg.c:
	user32: Also test parent messages when hiding child window.

2007-07-29  Lei Zhang <thestig@google.com>

	* dlls/ntdll/time.c:
	ntdll: Add Bolivian time zone info.

2007-07-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Add a stub implementation of MsiSourceListEnumSourcesA.

	* dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Treat an empty string and a NULL string as the same value.

2007-07-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Replace glReadPixels in wglBindTexImage2D by the MUCH faster
	glCopyTexImage2D.

2007-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: wglBindTexImageARB should return TRUE on success.

	* dlls/winex11.drv/opengl.c:
	wgl: Add WGL_ATI_pixel_format_float/WGL_ARB_pixel_format_float support.

	* dlls/winex11.drv/opengl.c:
	wgl: Enable WGL_EXT_swap_control by default even when the GLX version isn't
	there.

	* dlls/winex11.drv/opengl.c:
	wgl: Use correct types and pixelformats for pbuffers.

2007-07-27  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/wcmdmain.c:
	cmd: Remove some debug code.

	* programs/cmd/builtins.c:
	cmd: Fix comment to accurately reflect the function.

	* programs/cmd/builtins.c:
	cmd: Add support for wildcards in copy.

2007-07-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32/service: Be a bit more consistent.

2007-07-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Fix GetServiceDisplayNameA for service with no displayname.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Test for too small buffer.

2007-07-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Set correct error when the service doesn't exist.

2007-07-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Fix a compiler warning.

	* libs/wine/loader.c:
	libwine: Fix lookup of 16-bit dll placeholders. Remove some old compatibility
	code.

	* dlls/wined3d/surface.c:
	wined3d: Fix compiler warning.

2007-07-29  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winefile/winefile.h:
	winefile: Use SendMessageW instead of SNDMSG.

	* dlls/ntdll/sync.c:
	ntdll: Match the definition of NtQueryEvent() with its declaration.

2007-07-29  Jacek Caban <jacek@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mshtml.tlb/Makefile.in, dlls/mshtml.tlb/mshtml.tlb.spec,
	  dlls/mshtml.tlb/mshtml_tlb.idl, dlls/mshtml.tlb/rsrc.rc:
	mshtml: Added mshtml.tlb.

	* include/mshtml.idl:
	mshtml.idl: Added some missing attributes.

	* tools/widl/write_msft.c:
	widl: Reorder switch cases to keep alphabetical order.

	* tools/widl/write_msft.c:
	widl: Added displaybind attribute handling.

	* tools/widl/write_msft.c:
	widl: Added nonbrowsable attribute handling.

	* tools/widl/write_msft.c:
	widl: Use correct bytes in write_value.

2007-07-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/time.c:
	ntdll: Simplify TIME_GetBias.

	* dlls/ntdll/time.c:
	ntdll: Add some traces to make debugging time zone related problems easier.

	* dlls/kernel32/time.c:
	kernel32: Fix TIME_CompTimeZoneID return type.

	* dlls/kernel32/tests/time.c:
	kernel32: Add more tests for time zone info.

2007-07-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Constify some variables.

2007-07-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Always commit at least 3 periods in dsoutput.

2007-07-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/waveout.c:
	winealsa: Increase performance of waveout getposition.

2007-07-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/wavein.c:
	winealsa: Increase performance of wavein getposition.

2007-07-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/script.c, dlls/msi/tests/automation.c:
	msi: Use SysAllocString/SysFreeString for BSTR members of EXCEPINFO structure.

2007-07-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Fix typo.

2007-07-28  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Save dialog works if fred\ entered as filename.

2007-07-28  Robert Millan <rmh@aybabtu.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Remove thread safety FIXMEs.

2007-07-27  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Implement message stores.

	* dlls/crypt32/msg.c:
	crypt32: Only destroy a decoded message's hash if it's been created.

	* dlls/crypt32/tests/store.c:
	crypt32: Add tests for message stores.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting some parameters from a decoded signed message.

	* dlls/crypt32/msg.c:
	crypt32: Change type to avoid unnecessary casting.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test getting parameters from decoded signed messages.

	* dlls/crypt32/msg.c:
	crypt32: Store decoded signed content in message.

	* dlls/crypt32/msg.c:
	crypt32: Correct type of a decoded signed message.

	* dlls/crypt32/msg.c:
	crypt32: A decoded message's parameters are dependent on its type.

2007-07-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Use skip if localspl can't be loaded.

2007-07-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Use a more unique property separator.

	* dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Keep track of the wildcard record index.

2007-07-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c, include/wine/wgl.h:
	wgl: Add WGL_NV_float_buffer and WGL_NV_texture_rectangle support.

	* dlls/winex11.drv/opengl.c:
	wgl: Fix another BadMatch error by giving a pbuffer its own GLXContext.

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a BadMatch error resulting from ignoring that iPixelFormat stars
	counting from 1.

2007-07-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c:
	d3d8: Only test pixel shaders for refcounting if they are supported.

	* dlls/d3d8/tests/volume.c:
	d3d8: Skip volume test if volume textures are not supported.

	* dlls/wined3d/utils.c:
	wined3d: A more dynamic initialization of the gl pixel formats.

2007-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/utils.c, dlls/wined3d/volume.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Store the gl format table in the gl info structure.

2007-07-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Split up the format table.

2007-07-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.42.

----------------------------------------------------------------
2007-07-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Fix buffersize calculations for GetServiceDisplayNameW.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Forward GetServiceDisplayNameA to GetServiceDisplayNameW.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Test GetServiceDisplayNameA for service with no displayname.

	* dlls/advapi32/tests/service.c:
	advapi32/service: More tests for GetServiceDisplayName.

2007-07-26  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Strip Accept-Encoding from http/1.0 requests.

2007-07-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Return most fields for DRIVER_INFO_4 and 6.

	* dlls/winspool.drv/info.c:
	winspool: Return the full path in DRIVER_INFO_2 and 3.

	* dlls/winspool.drv/info.c:
	winspool: Enable all levels for EnumPrinterDrivers + GetPrinterDriver.

	* dlls/winspool.drv/info.c:
	winspool: Return the full path for the driver.

	* dlls/winspool.drv/info.c:
	winspool: Use correct path for 16bit drivers.

2007-07-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Make http protocol tests refractory to timing issues.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Rename received_data event to more general name event_complete.

2007-07-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsservice.c:
	mshtml: Fixed a typo.

2007-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/order.c,
	  dlls/msi/select.c, dlls/msi/streams.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Implement the MSIMODIFY_UPDATE command in the SELECT view.

	* dlls/msi/custom.c:
	msi: Initialize the size parameter.

	* dlls/msi/tests/db.c:
	msi: Add more tests for MSIMODIFY_UPDATE.

2007-07-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/mixer.c:
	dsound: Allow mixing the same buffer multiple times if we are looping.

2007-07-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/time.c:
	winmm: Don't operate on freed data in timer.

2007-07-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wineoss.drv/dsrender.c:
	wineoss: Make sure writepos < buflen for dsrender.

2007-07-19  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Minor fixes to ds output.

2007-07-17  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c:
	dsound: Some cosmetic changes.

2007-07-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/mixer.c:
	dsound: Fix CheckEvent in mixer.

	* dlls/dsound/mixer.c:
	dsound: Make sure secondary_remainder and buflen are aligned to primary buffer
	in mixer.

2007-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/typelib2.c:
	oleaut32: Constify some variables.

2007-07-26  Steven Edwards <winehacker@gmail.com>

	* dlls/version/info.c:
	version: VerQueryValueA/W NULL pointer check.

2007-07-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a typo in the WGL_TEXTURE_TARGET_ARB emulation code.

2007-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Enable offscreen pixelformats for pbuffers.

	* dlls/winex11.drv/opengl.c:
	wgl: Replace the GLXFBConfigIDs in the pixelformat list with real GLXFBConfigs.

	* dlls/winex11.drv/opengl.c:
	wgl: Fill the format table with offscreen pixelformats which are needed for
	pbuffers.

2007-07-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/string.c, dlls/msvcrt/wcs.c:
	msvcrt: Get rid of the now unused strndup/wstrndup functions.

	* dlls/msvcrt/heap.c:
	msvcrt: Fixed errno setting in malloc, HeapAlloc doesn't set last error.

	* dlls/msvcrt/dir.c:
	msvcrt: Fixed buffer allocation in _getcwd/_wgetcwd.

	* dlls/ntdll/actctx.c:
	ntdll: Simply store the assembly type without interpreting it.

2007-07-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/actctx.c,
	  dlls/ntdll/actctx.c:
	kernel32: Added a number of activation context tests.

2007-07-25  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/pen.c:
	gdiplus/tests: Added pen dash array tests.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenDashArray/GdipGetPenDashArray.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Fix arc2polybezier.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus/tests: Added GdipAddPathEllipse test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathEllipse.

	* dlls/gdiplus/graphics.c:
	gdiplus: Fix memory leak.

2007-07-25  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement encoding signed messages with authenticated
	attributes.

	* dlls/crypt32/decode.c:
	crypt32: Trace a few more items when decoding.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Test and fix encoding and decoding of attributes in PKCS signers.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/msg.c:
	crypt32: Partially implement decoding of signed messages.

	* dlls/crypt32/decode.c:
	crypt32: Don't check tag in CRYPT_DecodeDERArray, caller already does.

	* dlls/crypt32/decode.c:
	crypt32: Actually skip content when skipping an item in a sequence.

	* dlls/crypt32/msg.c:
	crypt32: Remove redundant assignment.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add initial tests for decoding signed messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test getting the hash from a hash message with an invalid index.

2007-07-26  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Don't proceed with POST operation (that will fail) if we run
	out of memory.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Fix http protocol tests with absence of BINDF_FROMURLMON to
	properly expect ReportData.

2007-07-25  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Don't free structures that are used by asynchronous HttpSendRequest
	until we are sure they won't be used.

2007-07-26  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/loader.c:
	libwine: Get rid of the lookup in the top dlls/ dir, all dlls are named
	correctly now.

	* dlls/crypt32/encode.c:
	crypt32: Don't use off_t for memory offsets.

2007-07-25  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Handle Ctrl-Home and Ctrl-End in edit mode.

2007-07-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Flip the scissor rect when rendering offscreen.

	* dlls/d3d9/texture.c:
	d3d9: Trace the Format parameter to IDirect3DDevice9Impl_CreateTexture as
	hexadecimal.

2007-07-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Make sure we have associated listener before calling OnStopRequest.

	* dlls/urlmon/http.c:
	urlmon: Change some gotos to return.

2007-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/serial.c:
	ntdll: Remove a break after a break. Found by Smatch.

	* programs/winefile/winefile.c:
	winefile: Change choose_font() and init_output() to the W form.

	* programs/winefile/winefile.c:
	winefile: Move the font choosing code to a separate function.

2007-07-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Set pbuffer dimensions in HDC.

	* dlls/winex11.drv/opengl.c:
	opengl: WGL_ARB_render_texture support.

	* dlls/opengl32/wgl.c:
	opengl32: Relax extension checking.

2007-07-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Constify some variables.

2007-07-25  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/comctl32/commctrl.c:
	comctl32: Fix missing toolbar button with HINST_COMMCTRL.

2007-07-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_main.c:
	wined3d: Do not fail if the adapter info can't be initialized.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c:
	wined3d: Set the pow2 sizes in gl surface private setup.

	* dlls/wined3d/directx.c:
	wined3d: Find the shader constant limit at adapter init time.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Allocate render target management members in Init3D.

2007-07-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Attempt to clean up fbos only if a gl surface is destroyed.

2007-07-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Support single quotes around XML attribute values.

	* dlls/ntdll/loader.c:
	ntdll: Activate the module's activation context while resolving imports and
	attaching.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Use activation contexts information to load dlls (based on a patch by
	Jacek Caban).

2007-07-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/kernel32/actctx.c:
	kernel32: Added FindActCtxSectionStringA implementation.

2007-07-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel32/actctx.c, dlls/ntdll/actctx.c, dlls/ntdll/ntdll.spec,
	  include/winternl.h:
	ntdll: Implemented RtlFindActivationContextSectionString.

	* dlls/ntdll/actctx.c:
	ntdll: Implemented FileInformationInAssemblyOfAssemblyInActivationContext
	option in RtlQueryInformationActivationContext.

	* dlls/ntdll/actctx.c:
	ntdll: Implemented AssemblyDetailedInformationInActivationContext option in
	RtlQueryInformationActivationContext.

	* dlls/ntdll/actctx.c:
	ntdll: Implemented ActivationContextDetailedInformation option in
	RtlQueryInformationActivationContext.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/actctx.c, dlls/ntdll/actctx.c, dlls/ntdll/ntdll.spec,
	  include/winternl.h:
	ntdll: Initial implementation of RtlQueryInformationActivationContext.
	Partially based on a patch by Eric Pouech.

	* dlls/ntdll/actctx.c:
	ntdll: Fix return status when failing to load the associated manifest for
	a module.

2007-07-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Improve some activation context traces.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Store the base directory for an assembly (based on a patch by Eric
	Pouech).

	* dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Create the per-module activation context at module load time.

	* dlls/ntdll/actctx.c, dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h:
	ntdll: Create the process activation context at initialization time.

	* dlls/ntdll/actctx.c:
	ntdll: Don't add an empty assembly when creating an activation context.

	* dlls/ntdll/actctx.c:
	ntdll: Check existing dependencies in activation context before adding a new one.

2007-07-25  Peter Dons Tychsen <donpedro@tdcadsl.dk>

	* dlls/winex11.drv/window.c:
	x11drv: Fix the special case where windows have WS_CHILD and WS_POPUP.

2007-07-24  Matt Jones <mattj@google.com>

	* dlls/kernel32/tests/thread.c, server/thread.c:
	server: Only commit SetThreadPriority if new priority is correct.

	* dlls/kernel32/tests/thread.c:
	kernel32: Added test for bad arguments to SetThreadPriority, test for correct
	error value.

2007-07-24  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c:
	gdiplus: Added GdipLoadImageFromStreamICM stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Added GdipDisposeImage stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c, include/Makefile.in,
	  include/gdiplus.h, include/gdiplusflat.h,
	  include/gdiplusmetaheader.h:
	gdiplus: Added GdipCreateMetafileFromWmf stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/image.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetImageType stub.

	* dlls/gdiplus/graphics.c, dlls/gdiplus/pen.c:
	gdiplus: Limit fixme output.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/image.c, include/gdiplusflat.h:
	gdiplus: Image getter stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added GdipCreateMetafileFromEmf stub.

	* dlls/gdiplus/graphics.c:
	gdiplus: Make pen width depend on world transform.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c,
	  dlls/gdiplus/pen.c:
	gdiplus: Create gdi pen every time gdi+ pen is used.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use world transform when drawing points.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetWorldTransform/GdipGetWorldTransform.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipCloneMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPageScale/GdipGetPageScale.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added support for more page units.

2007-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/win.c:
	user32/tests: Flush events more aggressively in mouse input test.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Don't test default char, it doesn't have to be always the same.

2007-07-24  Nigel Liang <ncliang@gmail.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Take into account position of preedit area in PreEditCaretCallback.

2007-07-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Use a different separator as a semi-colon may separate values in the
	CustomActionData.

2007-07-24  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/batch.c:
	cmd: Fix trap when batch pgm runs another batch pgm.

2007-07-24  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Events are reset when a new document URI is loaded, so re-initialise
	them in start_binding.

	* dlls/mshtml/olewnd.c:
	mshtml: Set focus to the Gecko window in
	OleInPlaceActiveObject_OnFrameWindowActivate.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsevents.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Call IDocHostUIHandler_HideUI and IDocHostUIHandler_ShowUI when changing
	an UI active window to be in edit mode.
	Add tests for the behaviour of changing edit mode when a UI window is active.

	* dlls/mshtml/view.c:
	mshtml: Pass the correct DOCHOSTUITYPE value to IDocHostUIHandler_ShowUI.
	Don't reset window_active in OleDocumentView_UIActivate.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/view.c:
	mshtml: OleDocumentView_UIActivate should call
	IOleInPlaceUIWindow_SetActiveObject and IOleInPlaceFrame_SetBorderSpace.
	Add a test to show this behaviour.
	Don't call nsIWebBrowserFocus_Activate when just activating the window.
	Instead call it when UI-activating the window.

2007-07-24  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Fix the stretch_rect_fbo() declaration to match the implementation.

	* dlls/wined3d/drawprim.c:
	wined3d: Pass the correct target to glMultiTexCoord.

2007-07-24  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/surface.c:
	wined3d: Remove a return after a return. Found by Smatch.

	* dlls/mscms/profile.c:
	mscms: Don't produce unreachable code during conditional compilation.

	* programs/winefile/winefile.c:
	winefile: Change the settings functions to use the W registry functions.

2007-07-24  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement getting the encoded signers from an encoded
	signed message.

2007-07-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msxml3/xmlelem.c:
	msxml3: Cast-qual warning fix.

2007-07-24  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/ntdll/time.c:
	ntdll: Add Samara time zone.

2007-07-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/encode.c:
	crypt32: Fixed wrong allocation size.

2007-07-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Add tests for GetServiceKeyName.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Close a handle on failure.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Add another test for GetServiceDisplayName.

2007-07-24  Aric Stewart <aric@codeweavers.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Initialize the address to 0 in ws_sockaddr_ws2u.

2007-07-22  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Create the stateblock in Init3D.

2007-07-23  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/main.c, dlls/ddraw/surface.c:
	ddraw: Some d3d-only code fixes.
	Vertex declarations are a d3d feature, thus they should be destroyed
	before d3d is shut down in wined3d. The surface type should be reset
	afterwards to prevent avoid gl surface afterwards and before a new
	render target is created.

2007-07-24  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Release two objects that should be released but are not.

	* dlls/urlmon/internet.c:
	urlmon: Release IInternetProtocolInfo returned from get_protocol_info when
	finished with it.

	* dlls/urlmon/bindprot.c:
	urlmon: LockModule in create_binding_protocol as we ReleaseModule when the
	object is released.

	* dlls/urlmon/session.c:
	urlmon: If we are using an internal protocol ClassFactory, call its AddRef as
	the caller must Release the object.

2007-07-23  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Use page unit when drawing.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPageUnit.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplustypes.h:
	gdiplus: Added GdipFillPolygonI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, dlls/gdiplus/pen.c,
	  dlls/gdiplus/tests/pen.c, include/gdiplusflat.h:
	gdiplus: Implemented GdipSetPenColor.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/tests/pen.c:
	gdiplus: Implemented GdipSetSolidFillColor/GdipGetSolidFillColor.

	* dlls/gdiplus/tests/pen.c:
	gdiplus/tests: Added pen brush fill test.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipSetSolidFillColor and GdipGetSolidFillColor stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenBrushFill.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenColor stub.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenBrushFill.

2007-07-23  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/binding.c:
	urlmon: Wrap IHttpNegotiate2 interface exposed by IBindStatusCallback as done
	by native.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add tests for calls to IHttpNegotiate interfaces as exposed
	by IBindStatusCallback.
	Add more tests for specific arguments passed to IHttpNegotiate and
	IHttpNegotiate2. Note that
	for OnResponse pszAdditionalHeaders is NULL when called directly from
	IInternetProtocol (for
	example as seen in our protocol tests) but non-NULL when these interfaces are
	exposed by
	IBindStatusCallback as seen here. Tests conform on Win98 and Winxp.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Add tests for calls to IBindStatusCallback_QueryInterface.

	* dlls/urlmon/binding.c:
	urlmon: Add a reference to the IUnknown for Release of STGMEDIUM to account
	for extra call to ReleaseBindInfo.

	* dlls/urlmon/file.c:
	urlmon: ReleaseBindInfo in FileProtocol.

	* dlls/urlmon/binding.c:
	urlmon: Don't ignore bytes read from IInternetProtocol_Read if hres is not S_OK
	(e.g., E_PENDING).
	Bytes can still be read with E_PENDING returned if the whole request could
	not be satisfied, don't
	ignore those.

	* dlls/urlmon/http.c:
	urlmon: Fix timing issue with FLAG_REQUEST_COMPLETE and
	InternetQueryDataAvailable in HttpProtocol.

2007-07-24  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Sending 0 bytes shouldn't cause an infinite loop.

2007-07-23  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Add handling for the MSIMODIFY_UPDATE command.

	* dlls/msi/tests/db.c:
	msi: Add tests for the MSIMODIFY_UPDATE command.

	* dlls/msi/alter.c, dlls/msi/table.c:
	msi: Properly delete the columns view.

2007-07-23  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement encoding signed data messages with CRLs.

	* dlls/crypt32/encode.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and implement encoding signed messages with certificates.

	* dlls/crypt32/encode.c:
	crypt32: Use set encoding function for encoding PKCS signed info.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting version from an encoded signed message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for getting an encoded signed message's parameters.

	* dlls/crypt32/msg.c:
	crypt32: Use consistent types for storing and encoding signed encode data.

	* dlls/crypt32/msg.c:
	crypt32: Separate signer handles from signer info to avoid unnecessary memory
	allocation.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting outer content of a signed message.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Partially implement encoding signed messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting the hash for each signer of a signed encoded message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Hash and sign data when updating signed messages.

	* dlls/crypt32/msg.c:
	crypt32: More parameter checking for opening signed encoded messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for opening non-detached signed messages, and clarify
	detached open.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a partial stub for updating a signed encoded message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for signed message encoding.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for updating signed encoded messages.

	* dlls/crypt32/decode.c:
	crypt32: Check for and fail on indefinite-length encoding.

	* dlls/crypt32/encode.c:
	crypt32: Introduce function to encode an array of items as a set.

2007-07-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add stub encoded signed message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for opening signed message to encode.

2007-07-23  Jason Edmeades <jason.edmeades@googlemail.com>

	* dlls/user32/mdi.c:
	user32: MDI tile and cascade should not resize non-resizable windows.

	* dlls/user32/mdi.c:
	user32: Correct trace to log calculated values rather than uninitialized ones.

2007-07-23  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winefile/winefile.c:
	winefile: Move some self contained functions to use explicit W functions.

	* dlls/wldap32/init.c, dlls/wldap32/misc.c, dlls/wldap32/page.c,
	  dlls/wldap32/value.c:
	wldap32: Don't produce unreachable code during conditional compilation. Found
	bySmatch.

	* programs/winefile/winefile.c:
	winefile: Replace malloc with HeapAlloc.

2007-07-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Handle is checked before servicename.

2007-07-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Trace the declaration element type in
	primitiveDeclarationConvertToStridedData().

	* dlls/wined3d/state.c:
	wined3d: Don't modify the blending parameters in state_blend().

2007-07-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/action.c:
	msi: Cast-qual warning fix.

2007-07-22  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Use more messages as a possible indication of the foreground window
	changes.

2007-07-20  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c:
	gdiplus: Change atan2 to gdiplus_arctan2.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added startcap rendering.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use base inset for custom line caps.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/graphics.c:
	gdiplus: Added rendering of fill-path type custom line caps.

2007-07-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c,
	  include/pdh.h:
	pdh: Implement and test PdhAddEnglishCounter{A, W} and
	PdhCollectQueryDataWithTime.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c,
	  include/pdh.h, include/pdhmsg.h:
	pdh: Implement and test PdhLookupPerfIndexByName{A, W} and
	PdhLookupPerfNameByIndex{A, W}.

	* dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Add more tests and make them pass.

	* dlls/pdh/pdh_main.c:
	pdh: Add a stub processor time counter.

2007-07-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Use printenv_t for GetDriverInfoFromReg.

2007-07-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix the shader version on some instruction tokens.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Correctly handle normalized vertex declaration data types.

2007-07-21  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/net/Ko.rc, programs/net/rsrc.rc:
	net: New Korean resource.

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

	* dlls/localui/localui.rc, dlls/localui/ui_Ko.rc:
	localui: New Korean resource.

2007-07-21  Damjan Jovanovic <damjan.jov@gmail.com>

	* tools/wineshelllink:
	tools: Add basic support for the startup notifications standard.

	* tools/wine.desktop:
	tools: Associate wine with the application/x-executable MIME type.

2007-07-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	urlmon: Add support for non-GET requests (e.g., POST) in HttpProtocol.

	* dlls/urlmon/http.c:
	urlmon: Actually send the additional headers returned by
	IHttpNegotiate::BeginningTransaction.

	* dlls/urlmon/http.c:
	urlmon: Call HttpOpenRequest with INTERNET_FLAG_KEEP_CONNECTION,
	INTERNET_FLAG_NO_CACHE_WRITE if appropriate.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Add test for BINDVERB_POST in http_protocol.

2007-07-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/sql.y, dlls/msi/streams.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Ref count temporary columns and release them when necessary.

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/query.h,
	  dlls/msi/select.c, dlls/msi/sql.y, dlls/msi/streams.c,
	  dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/tests/package.c,
	  dlls/msi/tokenize.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Implement adding columns using the ALTER command.

2007-07-20  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Move decoding hash messages to a helper function.

2007-07-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comcat/information.c:
	comcat: Cast-qual warning fix.

	* dlls/kernel32/resource.c:
	kernel32: Cast-qual warning fix.

2007-07-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/event.c:
	winex11drv: Correctly react to focus loss away from Wine.

	* dlls/user32/tests/msg.c, dlls/user32/tests/win.c, server/window.c:
	server: Treat desktop as a top-level window.

	* dlls/user32/tests/win.c:
	user32: Add test for SetForegroundWindow(desktop).

2007-07-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Add tests for GetDisplayName.

2007-07-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Run on NT4 again.

2007-07-20  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Convert bind ack and nack reject reasons into RPC status codes when
	binding.

2007-07-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Rename the test to better represent the tested functionality.

	* dlls/winex11.drv/pen.c:
	winex11.drv: Constify the pen dash data.

2007-07-19  Nigel Liang <ncliang@gmail.com>

	* dlls/user32/edit.c, dlls/winex11.drv/xim.c:
	winex11.drv: Implement XIMPreEditCaretCallback.

2007-07-19  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenStartCap.

	* dlls/gdiplus/pen.c:
	gdiplus: Updated GdipClonePen to clone pen's members by value, not reference.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus.spec, include/gdiplusflat.h:
	gdiplus: Added GdipCloneBrush.

	* dlls/gdiplus/brush.c, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c:
	gdiplus: Associate a brush with a pen.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added rendering of custom line caps.

	* dlls/gdiplus/graphics.c:
	gdiplus: Use atan2 instead of atan.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added custom line cap setters.

	* dlls/gdiplus/customlinecap.c, dlls/gdiplus/gdiplus.spec,
	  include/gdiplusflat.h:
	gdiplus: Added GdipCloneCustomLineCap.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/customlinecap.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Initial custom line caps implementation.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipCreateMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipRotateMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipTranslateMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipScaleMatrix.

2007-07-19  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Resize rebar control on window resize.

2007-07-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/commctrl.c:
	comctl32: Cast-qual warning fix.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/dplayx/dplobby.c:
	dplayx: Cast-qual warning fix.

2007-07-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/vartype.c:
	oleaut32: Remove a return after return.

2007-07-19  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Some 'refcount' tests.

	* dlls/advapi32/service.c:
	advapi32/service: lpBinaryPathName is mandatory.

2007-07-19  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add test for GetShortPathNameW.

	* programs/cmd/wcmdmain.c:
	cmd: Use toupperW instead of toupper.

	* dlls/user32/painting.c:
	user32: Add comment to a function.

2007-07-19  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement querying computed hash of a decoded hash message.

	* dlls/crypt32/msg.c:
	crypt32: Store hash algorithm ID along with other parameters when decoding a
	hash message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Store (most) parameters of a decoded hash message.

2007-07-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/tests/class.c:
	user32/tests: Simplify a test.

	* dlls/comctl32/comctl32.h, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/tooltips.c:
	comctl32: tooltips: Remove broken support for non-NULL-terminated strings in
	TOOLTIPS_GetDispInfo[AW].

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and fix invalid indexes passed in TB_ISBUTTON*.

2007-07-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/winuser.h:
	winuser.h: Add RealChildWindowFromPoint declaration.

2007-07-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add support for abbreviated empty elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Don't fail to load manifests that contain unknown elements or attributes.
	Print FIXMEs for errors that really cause the loading to fail.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add support for optional flag in dependencies.

	* dlls/ntdll/actctx.c:
	ntdll: Cope with missing assemblyIdentity elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Skip xml comments in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added manifest lookup in global winsxs directory (based on a patch by
	Jacek Caban).

2007-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h:
	ntdll: Store the windows directory too.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the asmv2:hash element in manifests.

2007-07-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the binding redirect element in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the clrClass and clrSurrogate elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the external proxy element in manifests.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Abstract the entity array type as we need it for assemblies too.

2007-07-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the description element in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the language attribute in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of the inheritance flags in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of hash attributes in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of public key token in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Added support for the assembly leaves of activation contexts.

2007-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/actctx.c:
	ntdll: Added parsing of file elements in manifests.

	* dlls/ntdll/actctx.c:
	ntdll: Add parsing of dependencies in manifests.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add infrastructure for loading manifest dependencies (based on a patch
	by Eric Pouech).

	* dlls/ntdll/actctx.c:
	ntdll: Add parsing of the version in manifests (based on a patch by Jacek Caban).

	* dlls/ntdll/actctx.c:
	ntdll: Add parsing of the processor architecture in manifests.

2007-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/actctx.c:
	ntdll: Beginnings of manifest parsing.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/actctx.c:
	ntdll: Add infrastructure for loading a manifest file or resource.
	Partially based on a patch by Eric Pouech.

2007-07-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/actctx.c:
	ntdll: Added basic structures for storing activation context assembly
	information.

2007-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/actctx.c, dlls/kernel32/thread.c, dlls/ntdll/actctx.c,
	  dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented handling of the per-thread activation context stack.

	* dlls/kernel32/actctx.c, dlls/ntdll/Makefile.in, dlls/ntdll/actctx.c,
	  dlls/ntdll/ntdll.spec, include/winternl.h:
	kernel32: Move activation context creation to ntdll (based on a patch by
	Eric Pouech).

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  include/thread.h, include/winternl.h, tools/winebuild/relay.c:
	ntdll: Move private data to make room in the TEB for the activation context data.

2007-07-18  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfileop.c:
	shell32: Implementation of SheGetDirA/W and SheChangeDirA/W.

2007-07-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add date/time toolbar button.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add date/time dialog.

2007-07-18  Evan Stade <estade@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Improved PolyDraw in path closed case.

2007-07-19  Huw Davies <huw@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/wininet.spec:
	wininet: Stub for InternetQueryFortezzaStatus().

2007-07-18  Juan Lang <juan.lang@gmail.com>

	* dlls/msi/install.c:
	msi: Return FALSE from MsiGetMode for MSIRUNMODE_OPERATIONS.

	* include/wincrypt.h:
	wincrypt: Add more missing definitions.

2007-07-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/tests/xmldoc.c:
	msxml3/tests: Avoid a crash that happens on some native systems.

2007-07-18  Evan Stade <estade@gmail.com>

	* dlls/winex11.drv/graphics.c, dlls/winex11.drv/pen.c,
	  dlls/winex11.drv/x11drv.h:
	winex11.drv: Draw dashed lines for extended pens.

2007-07-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the buffer bounds check.

2007-07-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/streams.c, dlls/msi/table.c, dlls/msi/tests/db.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	msi: Implement reference counting for tables, manipulated with the HOLD and
	FREE sql commands.

	* dlls/msi/tests/db.c:
	msi: Add more tests for the ALTER command.

2007-07-18  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Add tests for HttpProtocol behavior when it is called without
	the BINDF_FROMURLMON flag.

	* dlls/urlmon/http.c:
	urlmon: Implement HttpProtocol::Terminate.

	* dlls/urlmon/http.c:
	urlmon: Fix HttpProtocol behavior when it is called without the BINDF_FROMURLMON
	flag.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Fix http_protocol tests to succeed when called more than once.

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Fix http_protocol tests to succeed on Win98.

	* dlls/urlmon/http.c:
	urlmon: Use InternetCloseHandle instead of CloseHandle.

	* dlls/urlmon/http.c:
	urlmon: Remove FLAG_CALLED_SWITCH, which is now redundant.

2007-07-19  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/msc.c, tools/winedump/msmangle.c:
	tools: Remove unreachable break after return/break. Found by Smatch.

	* programs/notepad/dialog.c, programs/regedit/framewnd.c,
	  programs/regedit/listview.c, programs/taskmgr/taskmgr.c,
	  programs/winedbg/be_i386.c, programs/winedbg/gdbproxy.c,
	  programs/wordpad/wordpad.c:
	programs: Remove unreachable break after return/break. Found by Smatch.

	* dlls/comctl32/ipaddress.c, dlls/msi/cond.y, dlls/sane.ds/ui.c,
	  dlls/user32/tests/win.c, dlls/winex11.drv/init.c:
	dlls: Remove unreachable break after return/break. Found by Smatch.

2007-07-18  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winhelp/winhelp.c:
	winhelp: Add missing case label "default". Found by Smatch (unreached code).

	* dlls/ntdll/cdrom.c, dlls/ntdll/serial.c:
	ntdll: Don't produce unreachable code during conditional compilation. Found
	by Smatch.

2007-07-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/swapchain.c:
	wined3d: glXSwapBuffers needs a GLX context.

2007-07-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add a stub for ImpersonatePrinterClient.

2007-07-18  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Some tests for DeleteService.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Check for duplicate displayname.

	* dlls/advapi32/tests/service.c:
	advapi32/service: Cleanup (long lines and a typo).

2007-07-18  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for ConvertStringSecurityDescriptorToSecurityDescriptor.

	* dlls/advapi32/security.c:
	advapi32: Set the right pointer so that StringAcl is updated correct in
	ParseAceStringRights.
	The number of allowed hex digits should be 8, not 6.

	* dlls/advapi32/security.c:
	advapi32: Don't crash in ConvertStringSecurityDescriptorToSecurityDescriptorW
	if LocalAlloc fails.

	* dlls/advapi32/security.c:
	advapi32: Add the size of the security descriptor structure to the size of
	memory required in ParseStringSecurityDescriptorToSecurityDescriptor.

	* dlls/advapi32/security.c:
	advapi32: Fix a typo in ParseStringAclToAcl which caused the ACE to be written
	inside of the ACL memory.

	* dlls/advapi32/security.c:
	advapi32: Fix ComputeStringSidSize to work with SIDs with one sub authority.
	Use GetSidLengthRequired instead of computing the length in a way that
	won't always be correct.

2007-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/wininet/urlcache.c, dlls/wininet/wininet.spec:
	wininet: Stubs for IsUrlCacheEntryExpired[AW].

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Certain options of InternetQueryOption can take a NULL handle, so
	don't do the NULL handle check at the beginning.

2007-07-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/msg.c:
	user32/test: Destroy no longer needed test dialog windows.

2007-07-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/service: Test for duplicate displayname.

2007-07-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-07-17  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipMultiplyMatrix.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipGetPenDashStyle.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipClonePen.

2007-07-18  Detlef Riekenberg <wine.dev@web.de>

	* include/winspool.h:
	include/winspool.h: Add missing struct.

2007-07-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Only double the size if the remote call is from MsiGetPropertyA.

	* dlls/msi/custom.c:
	Revert "msi: Only call a custom action remotely if the type is
	msidbCustomActionTypeInScript."
	This reverts f2ae31000b6d6c105838fad36c17ba1fb1f5524b commit.

2007-07-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/utils.c:
	wined3d: Remove unreachable code: break after return. Found by Smatch.

2007-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Cast-qual warning fix.

2007-07-17  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/msg.c:
	crypt32: Add a couple more parameter tests for hash messages.

	* include/wincrypt.h:
	crypt32: Fix typo.

	* dlls/crypt32/msg.c:
	crypt32: Use property list for decoded message parameters.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting content of a data message.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add a few tests for decoded message parameters.

	* dlls/crypt32/decode.c:
	crypt32: Fix a bad comment.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement decoding hash messages.

	* dlls/crypt32/decode.c:
	crypt32: Remove a redundant line.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for decoding a hash message.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c:
	crypt32: Move digested data encoding to encode.c.

2007-07-17  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add some more RPC to NCA status code mappings.
	Add RPC_S_SEC_PKG_ERROR to the list of "hard" errors.

2007-07-16  Evan Stade <estade@gmail.com>

	* dlls/gdi32/gdi_private.h, dlls/gdi32/painting.c, dlls/gdi32/path.c,
	  dlls/gdi32/tests/path.c:
	gdi32: Added PATH_PolyDraw.

	* dlls/gdi32/tests/path.c:
	gdi32: Added PolyDraw tests.

2007-07-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Make sure we can set volume before reporting WAVECAPS_VOLUME.

2007-07-16  James Hawkins <truiken@gmail.com>

	* dlls/vdmdbg/vdmdbg.c, dlls/vdmdbg/vdmdbg.spec, include/Makefile.in,
	  include/vdmdbg.h:
	vdmdbg: Add a stub implementation of VDMEnumTaskWOW.

2007-07-13  Kovács András <andras@csevego.net>

	* .gitignore, include/Makefile.in, include/d3d10.idl, include/dxgi.idl,
	  include/dxgitype.idl:
	include: Add some idl headers for d3d10.

2007-07-17  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Added support for floating-point constants.

2007-07-16  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathBeziers.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPenDashStyle.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipPathIterRewind.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipPathIterNextSubpath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipPathIterCopyData.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/pathiterator.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Initial path iterator implementation.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/pen.c, include/gdiplusflat.h:
	gdiplus: Added GdipSetPenMiterLimit.

	* dlls/gdiplus/gdiplus.spec:
	gdiplus: Export GdipSetPenLineJoin.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPenLineCap197819.

2007-07-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Only call a custom action remotely if the type is
	msidbCustomActionTypeInScript.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/string.c, dlls/msi/table.c, dlls/msi/tests/install.c:
	msi: Load the AdminProperties stream if the package is an Admin package.

2007-07-15  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c, dlls/dinput/tests/mouse.c:
	dinput: Use CALLWINDPROC hook to monitor focus loses away from acquired windows.

	* dlls/dinput/dinput_main.c:
	dinput: Use PostMessage instead of SendMessage. Remove message window.

2007-07-16  Tim Schwartz <tim@sanityinternet.com>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add NetUseAdd() stub.

2007-07-16  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/start/start.c:
	programs/start: use SEE_MASK_NO_CONSOLE flag as default.
	Allows to start console applications in a new window (as Windows does).

	* dlls/shell32/shlexec.c:
	shell32: Add support for SEE_MASK_NO_CONSOLE flag.

2007-07-16  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/shell32/shlfolder.c:
	shell32: Fix missing unlock on an error path. Found by Smatch.

2007-07-15  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Check combination of service-type and start-type.

2007-07-16  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Never allocate memory for the discriminant in union_arm_unmarshall as
	the memory is part of the union and has already been allocated.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check to make sure there is enough data in the buffer during
	unmarshalling, so that the code doesn't try to read beyound the end of the
	buffer.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Even though FC_ENUM16 is an unsigned type, the highest allowable value
	that can be marshalled is SHRT_MAX, not USHRT_MAX.

	* dlls/ole32/compobj.c:
	ole32: Remove some dead code.
	CoFreeUnusedLibraries doesn't do anything and COM_FlushMessageQueue
	won't actually allow any RPCs to be processed as the apartment has
	already been destroyed.

2007-07-16  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/pdh/pdh.spec:
	pdh: Forward PdhOpenQuery to PdhOpenQueryW.

2007-07-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c, dlls/kernel32/sync.c, dlls/kernel32/vxd.c:
	kernel32: Always clear the I/O status block count before calling ntdll functions.

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/sync.c,
	  include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/thread.c, server/trace.c:
	server: Merge APC processing into the select request.
	This is needed to return the correct value when one of the handles
	being waited on is set to signaled state by the APC.

	* dlls/kernel32/file.c, dlls/kernel32/tests/pipe.c:
	kernel32: Wait in overlapped Read/WriteFile even when no overlapped structure
	is passed.

2007-07-13  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipFillPath.

	* dlls/gdiplus/graphics.c:
	gdiplus: Simplified GdipDrawPath by moving more of the code to the helpers.

	* dlls/gdiplus/tests/graphics.c:
	gdiplus: Added GpGraphics save/restore tests.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/graphics.c:
	gdiplus: Constructor tests for GpGraphics.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusenums.h, include/gdiplusflat.h:
	gdiplus: GdipSaveGraphics/GdipRestoreGraphics stubs.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added pixel offset mode.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added interpolation mode.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added compositing quality.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphics.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added smoothing modes.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipSetPathFillMode.

2007-07-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shlfolder.c:
	shell32: Add a cache for queried shell folder interfaces.

2007-07-15  Misha Koshelev <mk144210@bcm.edu>

	* dlls/wininet/internet.c:
	wininet: Fix behavior of InternetQueryDataAvailable if INTERNET_FLAG_ASYNC
	is set.

	* dlls/urlmon/http.c:
	urlmon: Fix HttpProtocol behavior when InternetQueryDataAvailable returns
	ERROR_IO_PENDING.

	* dlls/wininet/tests/http.c:
	wininet/tests: Add testing framework and tests for internet status callbacks.

	* dlls/wininet/tests/http.c:
	wininet/tests: Properly handle ERROR_IO_PENDING from InternetQueryDataAvailable.

2007-07-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/msvcrt/except.c:
	msvcrt: Preserve registers when calling unwind function.

2007-07-16  Huw Davies <huw@codeweavers.com>

	* dlls/kernel32/tests/pipe.c:
	kernel32: Overlapped pipe tests.

2007-07-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix parameter types of SHGetIniStringW.

2007-07-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Fix STATE_IS_ACTIVELIGHT.

2007-07-14  Alec Berryman <alec@thened.net>

	* dlls/itss/chm_lib.c:
	itss: Replace malloc/free with HeapAlloc/HeapFree.

2007-07-13  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement decoding data messages (when opened in non-streaming mode).

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Partially implement updating decode messages.

	* dlls/crypt32/msg.c:
	crypt32: Store crypt provider in decode message.

	* dlls/crypt32/decode.c, dlls/crypt32/tests/crl.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Fix decoding sequences with extra trailing data.

	* dlls/crypt32/tests/encode.c:
	crypt32: Add test showing extra trailing bytes should be tolerated in encoded
	data.

2007-07-15  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Update WSASendTo's iovec properly.

2007-07-13  Jeremy White <jwhite@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Added a test for the case where lpvBits in GetDIBits is NULL and the
	bitcount is 0.

	* dlls/gdi32/dib.c:
	gdi32:	Do not fill in the color table if lpvBits is NULL.

2007-07-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/search.c:
	winedump: Cast-qual warnings fix.

2007-07-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Don't create a directory that's not needed.

2007-07-13  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/user32.spec:
	user32: Change SetDeskWallPaper spec.

2007-07-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.41.

----------------------------------------------------------------
2007-07-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Skip tests if we don't have enough rights.

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Skip test if we don't have enough rights.

	* dlls/advapi32/tests/crypt.c:
	advapi32/tests: Use skip instead of trace.

2007-07-13  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: MIDIIn_MessageHandler: Fix non-SysEx messages parsing.

2007-07-13  Ken Thomases <ken@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Report format error on sample rate mismatch when opening
	wave-in device.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Protect against AudioUnitRender clobbering our buffer list.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Correct the AudioBufferList allocated for input.

2007-07-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add a test for running an ADMIN install.

	* dlls/msi/tests/install.c:
	msi: Add a test for installing from different current working directories.

	* dlls/msi/tests/source.c:
	msi: Fix compilation in MSVC.

	* dlls/msi/tests/install.c:
	msi: Fix three tests that were failing in Windows.

	* dlls/msi/tests/automation.c:
	msi: Fix automation.c compile for MSVC.

2007-07-12  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c:
	crypt32: Update comments about hash message version numbers.

	* dlls/crypt32/msg.c:
	crypt32: Introduce an updated state, and use it to remove boolean "begun".

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Change finalized from a boolean to a state and use it to simplify
	message updating.

	* dlls/crypt32/tests/msg.c:
	crypt32: Relax a test, the specific error isn't so important.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c,
	  dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement retrieving a hashed message's content.

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Introduce an algorithm id encoding function that encodes missing
	parameters as NULL
	and use it to match native encoding (and simplify PKCS signer tests).

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for retrieving the content of a non-finalized (detached)
	message.

	* dlls/crypt32/msg.c:
	crypt32: Detached hash messages don't contain the content, so don't make a
	copy of it.

	* dlls/crypt32/msg.c:
	crypt32: Don't check if msg is NULL, tests show native doesn't either.

	* dlls/crypt32/msg.c:
	crypt32: Add a helper function to copy params.

	* dlls/crypt32/msg.c:
	crypt32: Copy data in hash message update.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for hash message encoding.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting hash message version.

	* include/wincrypt.h:
	crypt32: Add more missing defines.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Partially implement updating hash messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test updating hash messages with NULL stream output function.

	* dlls/crypt32/tests/msg.c:
	crypt32: Simplify hash value tests.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting a hash message's hash value.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for getting hash message params.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a stub hash message implementation.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test opening hash messages to encode with streaming.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for updating hash messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add open tests for hash messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement streamed encoding of definite-length data messages.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/encode.c:
	crypt32: Make some encoding functions available outside encode.c.

2007-07-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/printui/Makefile.in, dlls/printui/printui.c,
	  dlls/printui/printui_private.h:
	printui: Parse args for PrintUIEntryW.

2007-07-12  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ntdll/env.c:
	ntdll: Use the win16 current directory for win16 processes.

2007-07-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/provider.c:
	dxdiagn: Add reporting of some display related information.

2007-07-12  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added GdipAddPathPath test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathPath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipResetPath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPathFillMode.

	* dlls/gdiplus/graphicspath.c, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Improved GdipGetPathWorldBounds handling of both matrix and pen's
	effect on bounding box.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added more GdipGetPathWorldBounds tests.

	* dlls/gdiplus/graphicspath.c, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Use passed pen in GdipAddPathWorldBound.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/pen.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h:
	gdiplus: Added GdipSetPenLineJoin.

2007-07-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix some spec entry definitions.

	* dlls/ntdll/om.c:
	ntdll: Remove an artificial limitation in NtQuerySecurityObject.

	* include/basetsd.h:
	include: Add HandleToUlong, UlongToHandle, UintToPtr, UlongToPtr compatibility
	macros.

2007-07-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: Check servicetype and starttype.

	* dlls/advapi32/service.c:
	advapi/service: Create specific access rights for service handles.

2007-07-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/tests/install.c:
	msi: Reload properties as they may have been changed by a transform.

	* dlls/msi/package.c:
	msi: Fix a copy and paste error.

2007-07-12  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/htmlelem.c, dlls/mshtml/nsiface.idl:
	mshtml: Implement HTMLElement_insertAdjacentHTML and
	HTMLElement_insertAdjacentText.

	* dlls/msxml3/node.c:
	msxml3: Implement IXMLDOMNode::get_text for CDATA, processing instruction and
	comment nodes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make binding to an interface a function of RpcAssoc instead of
	binding handles, since binding requires information from the
	association and not from the binding handle.

	* dlls/ntdll/nt.c:
	ntdll: The impersonation level in NtDuplicateToken should be taken from the
	SecurityQualityOfService member of ObjectAttributes if present.

2007-07-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wldap32/init.c, dlls/wldap32/value.c:
	wldap32: Fix some potential infinite loops because of an unsigned loop counter.

	* dlls/dnsapi/query.c, dlls/dnsapi/record.c:
	dnsapi: Fix some potential infinite loops because of an unsigned loop counter.

	* dlls/user32/class.c, dlls/user32/tests/class.c:
	user32: Allocate a dual A/W winproc for DefWindowProc.

	* dlls/user32/winproc.c:
	user32: Check both A and W proc for previously allocated winprocs.
	Some apps get a winproc as A and then set it again as W.

2007-07-11  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Changed the way the direction of the endcap is calculated to make
	LineCapArrowAnchor direction match Windows better.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added GdipGetPathWorldBounds test.

	* dlls/gdiplus/tests/matrix.c:
	gdiplus: Added GdipTransformMatrixPoints test.

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Fixed memory leak in GdipDeletePath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplustypes.h:
	gdiplus: Added GdipGetPathWorldBounds.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipTransformPath.

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/matrix.c:
	gdiplus: Added GdipCreateMatrix2 test.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/matrix.c, include/gdiplusflat.h:
	gdiplus: Added GdipTransformMatrixPoints.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/matrix.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h:
	gdiplus: Added basic matrix implementation.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added draw_polyline error checking.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added draw_polybezier error checking.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipDrawPath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipStartPathFigure.

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawLines to use SaveDC()/RestoreDC()/end caps.

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawArc to use SaveDC()/RestoreDC()/line caps.

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added GdipAddPathArc test.

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathArc.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c:
	gdiplus: Moved two inline helpers to the header.

2007-07-11  Mark Adams <mark@transgaming.com>

	* dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c:
	iphlpapi: Fix byte ordering of Linux ports.

2007-07-10  Mark Adams <mark@transgaming.com>

	* configure, configure.ac, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/iphlpapi/ipstats.c, dlls/iphlpapi/ipstats.h,
	  include/config.h.in:
	iphlpapi: Add support for GetTcpTable on Mac OS X.

2007-07-11  Huw Davies <huw@codeweavers.com>

	* dlls/kernel32/sync.c:
	kernel32: SetNamedPipeHandleState() is a stub, so for now don't check its
	return value.

	* dlls/kernel32/sync.c:
	kernel32: Swap incorrect use of buffers.

2007-07-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/tests/install.c:
	msi/tests: Comment out call to function that is still a stub in Wine.

2007-07-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/cmd/wcmdmain.c:
	programs/cmd: Do the assignment after the return to avoid a missing free()
	(Coverity).

2007-07-12  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c:
	urlmon: Make HttpProtocol conform with native wininet on wine.

	* dlls/urlmon/http.c:
	urlmon: Fix HttpProtocol_Start and strndupW to work properly with native wininet.

2007-07-11  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Convert IDirectInput into multi-interface object.

2007-07-11  Ken Thomases <ken@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Improve safety of iterations when returning WAVEHDRs to client.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Enable DirectSound HEL mode for input.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Enable DirectSound HEL mode for output.

2007-07-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: Check for empty servicename and binaryname.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: Check if we have enough access rights to create a service.

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi/service: First tests (and fixes) for CreateService.

	* dlls/advapi32/service.c:
	advapi/service: Fix possible handle leak.

	* dlls/advapi32/service.c:
	advapi/service: Simplify DeleteService by using RegDeleteTree.

2007-07-11  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/shlwapi/clist.c:
	shlwapi: Use publicly defined structure DATABLOCK_HEADER instead of redefining
	it locally.

2007-07-11  Lei Zhang <thestig@google.com>

	* dlls/winex11.drv/xdnd.c:
	winex11.drv: Remove old dnd code.

2007-07-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh_main.c:
	pdh: Fix two typos.

	* dlls/pdh/pdh_main.c:
	pdh: Use GetTickCount64 instead of GetTickCount.

2007-07-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/msg.c:
	user32/tests: Flush messages more aggressively in a couple of tests.

2007-07-09  Kovács András <andras@csevego.net>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3d10/Makefile.in, dlls/d3d10/d3d10.spec,
	  dlls/d3d10/d3d10_main.c, dlls/d3d10/version.rc:
	d3d10: Add stub for d3d10.dll.

2007-07-09  Tim Schwartz <tim@sanityinternet.com>

	* .gitignore, programs/net/En.rc, programs/net/Makefile.in,
	  programs/net/net.c, programs/net/resources.h, programs/net/rsrc.rc:
	net.exe: Converted strings to resources.

2007-07-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/kernel_main.c,
	  include/winbase.h:
	kernel32: Implemented GetTickCount64.

2007-07-10  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Changed calls to floor to floorf.

2007-07-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c, include/msiquery.h:
	msi: Add tests for adding properties with a transform during an install.

	* dlls/msi/tests/db.c:
	msi: Add tests for adding properties in a transform.

	* dlls/msi/tests/package.c:
	msi: Fix current _Property table tests and add more tests.

2007-07-10  Lei Zhang <thestig@google.com>

	* programs/start/start.c:
	start.exe: Put double quotes around arguments with spaces.

2007-07-10  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Use the COMPOSITIONSTRING in hCompStr.
	Stop using our custom structure for the Composition string and instead
	use the COMPOSITIONSTRING whose handle is in the IMC structure.

2007-07-10  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	urlmon: Implement HttpProtocol.

2007-07-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winemp3.acm/mpg123.h:
	winemp3: Remove function declarations with no definition and unused macros.

	* dlls/winemp3.acm/decode_i386.c, dlls/winemp3.acm/interface.c,
	  dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpg123.h:
	winemp3: Remove global mpstr pointer.

2007-07-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Do not report an error if a requested to add font is already loaded.

2007-07-11  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix typo in liblcms notice check.

2007-07-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c:
	msi: Check for NULL transform, as there may be no transforms for the _Columns
	or _Tables tables.

2007-07-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Don't use struct member before NULL check (Coverity).

2007-07-10  Juan Lang <juan.lang@gmail.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Get rid of the hash idle state, native doesn't behave as though it
	has one.

2007-07-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/relay.c:
	ntdll: Avoid crash with WINEDEBUG=+snoop.

2007-07-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winemp3.acm/common.c:
	winemp3: Use head_check to check for valid headers.

	* dlls/winemp3.acm/mpg123.h:
	winemp3: Check the right macro when defining TRUE.

2007-07-09  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/cmd/builtins.c:
	cmd: Use toupperW instead of toupper.

2007-07-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32: Create specific access rights for service control manager handles.

2007-07-10  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: We should send TBN_GETDISPINFOW even for ANSI controls
	(with testcase).

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: The iImage in TBN_GETDISPINFO should be initialized to -1.

2007-07-10  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/pe.c:
	winedump: Add RT_MANIFEST resource type.

	* include/winuser.h:
	include: Add some definitions for manifest resources.

2007-07-10  Bernd Buschinski <b.buschinski@web.de>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Fix test typo/compile error.

2007-07-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Add a few more notices for missing packages.

	* configure, configure.ac:
	configure: Move notices about missing features next to the corresponding checks.

	* aclocal.m4:
	aclocal: Add macros for logging messages about missing features.

2007-07-09  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/sip.c:
	crypt32: Implement CryptSIPGetSignedDataMsg, CryptSIPPutSignedDataMsg,
	CryptSIPCreateIndirectData, CryptSIPVerifyIndirectData, and
	CryptSIPRemoveSignedDataMsg.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/main.c, dlls/crypt32/sip.c,
	  dlls/crypt32/tests/sip.c:
	crypt32: Implement CryptSIPLoad.

2007-07-09  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added a test for GdipAddPathLine2.

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Fixed bug in GdipGetPathPoints().

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/graphicspath.c:
	gdiplus: Added constructor and destructor test for gdiplus paths.

2007-07-09  Evan Stade <estade@evanstade.smo.corp.google.com>

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Make LineCapArrowAnchor look more like it does in windows.

2007-07-09  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Fixed a bug in helper function draw_polybezier.

	* dlls/gdiplus/graphics.c:
	gdiplus: GdipDrawCurve2 now uses SaveDC()/RestoreDC() and end caps.

	* dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c:
	gdiplus: Updated GdipDrawRectangleI.

	* dlls/gdiplus/graphics.c:
	gdiplus: Updated draw_pie to use SaveDC/RestoreDC.

2007-07-09  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/msg.c:
	crypt32: More decode message update tests.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add some tests for updating decode messages.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting the type of a decode message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a stub decode message implementation.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Test and fix CryptMsgGetParam for streamed messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for streamed encoding of data messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test that inner content OID is ignored for data messages.

	* dlls/crypt32/msg.c:
	crypt32: Make a copy of a passed-in stream info rather than assuming the
	pointer will live forever.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add more tests for opening a data message for encoding.

	* dlls/crypt32/msg.c:
	crypt32: Pass function pointers to CryptMsgBase_Init rather than rely on
	callers to initialize them.

2007-07-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Clear static variables after releasing hooks.

2007-07-09  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Add tests for ObtainUserAgentString.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Improve ObtainUserAgentString conformance to native.

2007-07-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Handle adding columns in transforms.

	* dlls/msi/tests/db.c:
	msi: Test adding columns with data in a transform.

	* dlls/msi/tests/db.c:
	msi: Delete msifile after the tests.

	* dlls/msi/tests/db.c:
	msi: Match the changes made by the hand-generated and API-generated transforms.

2007-07-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Implement and test PdhGetCounterInfo{A, W} and PdhGetCounterTimeBase.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Implement and test PdhGetRawCounterValue.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c, dlls/pdh/tests/pdh.c:
	pdh: Implement and test PdhSetCounterScaleFactor and PdhGetFormattedCounterValue.

	* dlls/pdh/tests/pdh.c:
	pdh: Add tests for Pdh{Add, Remove}Counter and PdhCollectQueryData.

	* dlls/pdh/pdh_main.c:
	pdh: Add an uptime counter source based on GetTickCount.

2007-07-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/advpack/install.c, dlls/setupapi/tests/parser.c:
	advpack+setupapi: Remove unneeded checks before SetupCloseInfFile.

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Avoid crash in SetupCloseInfFile.

2007-07-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/context.c:
	wined3d: Store the last active thread.

	* dlls/wined3d/context.c:
	wined3d: Make ActivateContext a bit smaller.

	* dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add CTXUSAGE_CLEAR context usage.

	* dlls/wined3d/drawprim.c:
	wined3d: Print the fixed and unfixed vertex warning only when needed.

2007-07-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Initialize surfaces at creation.

2007-07-09  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: We no longer need the shared library extension.

	* configure, configure.ac, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xrender.c:
	configure: Merge the libX11 and libXext existence check with the soname check.

	* configure, configure.ac, dlls/gdi32/freetype.c,
	  dlls/wineps.drv/truetype.c:
	configure: Merge the libfreetype existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/wintab.c:
	configure: Make the libXi soname check depend on the header check.

	* configure, configure.ac, dlls/winex11.drv/mouse.c:
	configure: Make the libXcursor soname check depend on the header check.

2007-07-06  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPathTypes.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPathPoints.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipGetPointCount.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipClosePathFigures.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphicspath.c,
	  include/gdiplusflat.h:
	gdiplus: Added GdipClosePathFigure.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/graphicspath.c, include/gdiplusenums.h,
	  include/gdiplusflat.h:
	gdiplus: Added GdipAddPathLine2.

	* include/gdiplusflat.h:
	gdiplus: Public declaration of GdipSetPenEndCap.

	* dlls/gdiplus/graphics.c:
	gdiplus: Added linecap rendering for GdipDrawBezier.

2007-07-07  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c, dlls/gdiplus/pen.c:
	gdiplus: Rendering of linecaps.

2007-07-08  Hans Leidekker <hans@it.vu.nl>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/pdh/Makefile.in, dlls/pdh/tests/Makefile.in,
	  dlls/pdh/tests/pdh.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	pdh: Add tests for opening and closing queries.

2007-07-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/dinput_main.c,
	  dlls/dinput/dinput_private.h, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Rename set_dinput_hook and call it from the base class.
	Since keyboard's acquire and unacquire don't do anything special just call
	the base class.

	* dlls/dinput/device_private.h, dlls/dinput/dinput_main.c,
	  dlls/dinput/dinput_private.h, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Handle multiple keyboard and mouse devices.

	* dlls/dinput/device_private.h, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Export Mouse and Keyboard GUIDs.

	* dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Keep a list of all IDirectInput objects and check it instead of refcount
	to create/destroy hook thread.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Keep the list of all the dinput devices created for each IDIrectInput
	object.

2007-07-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32: Handle to Service Control Manager is checked first.

2007-07-08  Misha Koshelev <mk144210@bcm.edu>

	* dlls/urlmon/tests/protocol.c:
	urlmon/tests: Make http protocol mime type test pass on native.

2007-07-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Advertise VTF support.

	* dlls/wined3d/directx.c:
	wined3d: Advertise A32B32G32R32F render target support.

2007-07-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h:
	dsound: Simplify IDirectSoundBufferImpl_GetCurrentPosition.

	* dlls/dsound/sound3d.c:
	dsound: Fix division by zero in DSOUND_Calc3DBuffer.

2007-07-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Remove some more unused variables.

2007-07-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/dwmapi/dwmapi.spec, dlls/dwmapi/dwmapi_main.c:
	dwmapi: Add a stub implementation for DwmIsCompositionEnabled.

2007-07-08  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Prompt for saving file changes.

2007-07-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/profile.c:
	kernel32/tests: Add a forgotten if statement.

2007-07-07  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shlview.c:
	shell32: Set current directory when executing files in a shell view.

2007-07-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/pdb.c:
	winedump: Cast-qual warnings fix.

	* tools/winedump/lnk.c:
	winedump: Cast-qual warnings fix.

	* dlls/ole32/stubmanager.c:
	ole32: Cast-qual warning fix.

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Cast-qual warning fix.

2007-07-07  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-07-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement high order patches.

	* dlls/wined3d/device.c:
	wined3d: Do not set streamIsUP in DrawPrimitiveStrided.

2007-07-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/executebuffer.c:
	ddraw: Y coords are inversed.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/executebuffer.c:
	ddraw: Update the wined3d matrix if a current matrix handle is modified.

2007-07-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c:
	wined3d: Offscreen rendering from foreign threads.

2007-07-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Clean up some unused variables.

	* dlls/dsound/propset.c:
	dsound: Revert "dsound: Disable property sets if hardware doesn't support it.".

2007-07-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Silence the buffer warning more often.

2007-07-05  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c, include/gdiplusenums.h, include/gdiplusgpstubs.h:
	gdiplus: Added SetPenEndCap.

2007-07-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/Maketest.rules.in:
	Maketest.rules: Add dependency on IDL headers for crosstest objects.

2007-07-04  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Disable copy/cut in menu when appropriate.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: fontdlg: Respect the CF_NOSCRIPTSEL flag.

2007-07-05  Romain Iehl <romain.iehl.wine@gmail.com>

	* dlls/dsound/sound3d.c:
	dsound: Correct field access.

	* dlls/dsound/sound3d.c:
	dsound: Simplify the calculation of sound attenuation due to distance.

	* dlls/dsound/sound3d.c:
	dsound: Fix bug preventing correct calculation of the sound parameters
	of a 3Dbuffer, when an application calls CommitDeferredSettings after
	the 3DBuffer has been released.

2007-07-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ddraw/tests/refcount.c:
	ddraw/tests: Use skip instead of trace.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Use skip instead of trace.

2007-07-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/tests/mouse.c:
	dinput: Correct test - use appropriate mouse state structure.

2007-07-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/shell32/shell.c, dlls/shell32/shellole.c:
	shell32: DragQueryFile doesn't count the null terminator.

2007-07-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c, dlls/msi/msiserver.idl:
	msi: Enable remote custom actions.

	* dlls/msi/cond.y, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiEvaluateCondition.

	* dlls/msi/format.c, dlls/msi/msipriv.h:
	msi: Forward MsiFormatRecordA to MsiFormatRecordW.

	* dlls/msi/format.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiFormatRecordW.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Fix use of BSTRs.

2007-07-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/stg_prop.c,
	  dlls/ole32/storage32.c:
	ole32: Cast-qual warnings fix.

	* dlls/ole32/ifs.c:
	ole32: Constify a variable (and fix a typo concerning its level of indirection).

2007-07-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add tests for CloseServiceHandle.

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add tests for OpenServiceA.

2007-07-05  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/lsa.c, dlls/crypt32/tests/msg.c,
	  dlls/ddraw/tests/dsurface.c, dlls/dsound/primary.c,
	  dlls/ntprint/ntprint.c, dlls/setupapi/tests/install.c,
	  dlls/winealsa.drv/dsoutput.c, include/basetsd.h,
	  programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	Assorted spelling fixes.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-07-05  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Using a bitmap font as the fallback sans serif is a very bad idea.

2007-07-04  Pedro Araujo Chaves Jr <inckie@gmail.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Fallback to the first found printer as default printer.

2007-07-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/ntlm.c:
	secur32/tests: Use skip when functions are not available.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Use skip for not implemented function.

	* dlls/kernel32/tests/profile.c:
	kernel32/tests 2/2: Use skip for not implemented function.

	* dlls/kernel32/tests/profile.c:
	kernel32/tests: Don't crash on win98.

	* dlls/kernel32/tests/toolhelp.c:
	kernel32/tests: Use skip when functions are not available.

2007-07-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Return a fault packet if the proc num exceeds the index of the last
	function available for the interface.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h,
	  dlls/rpcrt4/rpc_misc.h, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Call RPCRT4_Send directly from PKT_RECEIVE handler in server.
	Remove the WINE_RPCFLAG_EXCEPTION hack to pass exception information to
	I_RpcSend.

	* dlls/rpcrt4/ncastatus.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_message.h, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Translate between NCA and RPC status codes.

2007-07-04  Julio E. Gonzalez P <jegp@netvision.com.py>

	* dlls/ntdll/time.c:
	ntdll: Add PYT and PYST time zones.

2007-07-04  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/painting.c:
	gdi32: Slightly simplify result handling in PolyDraw.

2007-07-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* include/wine/unicode.h:
	winelib: Cast-qual warnings fix.

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/stg_prop.c,
	  dlls/ole32/storage.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Constify some variables.

2007-07-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/d3d.c, dlls/ddraw/viewport.c:
	ddraw: Implement IDirect3DViewport3::TransformVertices.

	* dlls/ddraw/executebuffer.c:
	ddraw: Read the world matrix correctly.

	* dlls/ddraw/executebuffer.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/d3d.c:
	ddraw: D3DOP_BRANCHFORWARD includes the current instruction size.
	Native D3DRM puts a branchforward with offset 0 at the beginning of each
	execute buffer. With the old code this used to get stuck in an endless
	loop. This patch adds a test that shows that such a branchforward
	terminates properly.

	* dlls/ddraw/executebuffer.c:
	ddraw: Materials in the execute buffer are handles.

	* dlls/ddraw/device.c:
	ddraw: Fix an incorrect iface->impl cast.

2007-07-03  Ben Hodgetts <ben@atomnet.co.uk>

	* programs/winecfg/En.rc:
	winecfg: Clean up Graphics tab and remove broken neutral translation.

2007-07-04  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/tests/ntlm.c:
	secur32: Add tests for multiple use of a credential handle.

2007-07-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Create the temporary inf-file in a directory where we are
	allowed to write.

2007-07-03  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec:
	imm32: Implement Locking/Unlocking IMC and IMCC functions.

	* include/Makefile.in, include/ddk/imm.h:
	include: Add a ddk header for imm.

2007-07-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Get rid of the no longer used check for libtxc_dxtn.

	* configure, configure.ac, dlls/winex11.drv/xinerama.c,
	  include/config.h.in:
	configure: Merge the libXinerama existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xrender.c:
	configure: Merge the libXrender existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrandr.h,
	  include/config.h.in:
	configure: Merge the libXrandr existence check with the soname check.

	* configure, configure.ac, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11ddraw.c:
	configure: Merge the libGL existence check with the soname check.

	* dlls/ntdll/nt.c:
	ntdll: Add check for null pointer in
	NtQuerySystemInformation(SystemModuleInformation).

2007-06-26  Peter Dons Tychsen <donpedro@dhcppc2>

	* dlls/winex11.drv/dib.c:
	winex11: Fix X11DRV_DIB_GetImageBits() when target bitmaps are larger than
	fetched.

2007-07-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetInstallLevel.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetLanguage.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetComponentState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetComponentState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetFeatureState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetFeatureState.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetMode.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSetTargetPath.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetSourcePath.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetTargetPath.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiSequence.

	* dlls/msi/install.c, dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiDoAction.

	* dlls/msi/msiserver.idl, dlls/msi/package.c:
	msi: Handle remote calls to MsiProcessMessage.

2007-07-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/console.c, dlls/msvcrt/exit.c, dlls/msvcrt/file.c,
	  dlls/msvcrt/process.c, dlls/msvcrt/undname.c:
	msvcrt: Remove superfluous casts of void pointers to other pointer types.

2007-07-03  Evan Stade <estade@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Don't access DC in PolyDraw after releasing handle.

	* dlls/gdiplus/graphics.c:
	gdiplus: Call EndPath() in GdipDrawLineI in case there is an open path.

2007-07-02  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Use SaveDC, RestoreDC in GdipDrawLineI.

2007-07-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/lsa.c:
	advapi32/tests: Use skip when we don't have enough rights.

	* dlls/user32/tests/wsprintf.c:
	user32/tests: Use skip.

	* dlls/user32/tests/winstation.c:
	user32/tests: Use skip.

2007-07-03  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Use global Pictures for the tiles.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Move the PictFormats into an array.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Pass root_window to XCreatePixmap to avoid BadDrawable errors.

2007-07-02  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/msi.c:
	msi: Read the components state directly from the registry.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return INSTALLSTATE_BADCONFIG if we can't decode the first component.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return INSTALLSTATE_ADVERTISED if the component list is empty.

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c, dlls/msi/tests/msi.c:
	msi: Open the correct key and return INSTALLSTATE_ADVERTISED if it's missing.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiQueryFeatureState.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Set the WindowsInstaller value in RegisterProduct instead of PublishProduct.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Only publish the product if at least one feature is to be installed.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/install.c:
	msi: Unpublish the product when it is entirely removed.

	* dlls/msi/action.c, dlls/msi/files.c, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h, dlls/msi/package.c, dlls/msi/tests/install.c:
	msi: Delay publishing of the SourceList until the PublishProduct action.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: PackagePath must also include the package name.

	* dlls/msi/tests/install.c:
	msi: Add tests to show when the SourceList is published to the registry.

	* dlls/msi/msipriv.h, dlls/msi/registry.c, dlls/msi/source.c,
	  dlls/msi/tests/source.c:
	msi: Add support for the MSICODE_PATCH option.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: pcchValue represents the length of szValue in TCHARS, not bytes.

	* dlls/msi/package.c:
	msi: Handle remote calls to MsiSetProperty.

	* dlls/msi/package.c:
	msi: Handle remote calls to MsiGetProperty.

	* dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Handle remote calls to MsiGetActiveDatabase.

	* dlls/msi/custom.c, dlls/msi/msi_main.c, dlls/msi/msipriv.h,
	  dlls/msi/msiserver.idl:
	msi: Add the IWineMsiRemoteCustomAction interface.

	* dlls/msi/msi_main.c, dlls/msi/msipriv.h, dlls/msi/msiserver.idl,
	  dlls/msi/package.c:
	msi: Add the IWineMsiRemotePackage interface.

2007-07-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c:
	wined3d: Implement dsx & dsy shader instructions.

2007-06-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface_thunks.c:
	ddraw: Z buffers can be attached to offscreen d3d devices.

2007-06-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Create multiple contexts for onscreen render targets.

	* dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Select onscreen contexts based on the thread id.

2007-07-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: rsq and rcp use the .w component if no swizzle is given.

2007-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/safearray.c:
	oleaut32: Constify some variables.

2007-07-02  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Don't free the password in InitializeSecurityContextW to enable the
	credentials handle to be re-used in further InitializeSecurityContextW calls.

2007-06-30  Ben Hodgetts <ben@atomnet.co.uk>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't tell users to run Wine as root when sockets not creatable.

2007-06-19  Evan Stade <estade@gmail.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Save load time format of pictures.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Added support for decoding some PNG files.

2007-07-02  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Added checks for libpng.

	* configure, configure.ac, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/oleaut32/olepicture.c:
	configure: Make the libjpeg soname check depend on the header check.

	* configure, configure.ac, dlls/wininet/netconnection.c:
	configure: Make the libssl soname check depend on the header check.

	* configure, configure.ac, dlls/gdi32/freetype.c:
	configure: Make the libfontconfig soname check depend on the header check.

	* configure, configure.ac, dlls/winejack.drv/audio.c,
	  dlls/winejack.drv/jack.c:
	configure: Make the libjack soname check depend on the header check.

	* configure, configure.ac, dlls/wineps.drv/init.c,
	  dlls/winspool.drv/info.c:
	configure: Make the libcups soname check depend on the header check.

	* configure, configure.ac, dlls/sane.ds/ds_ctrl.c,
	  dlls/sane.ds/ds_image.c, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c, include/config.h.in:
	configure: Merge the libsane existence check with the soname check.

	* configure, configure.ac, dlls/capi2032/cap20wxx.c, include/config.h.in:
	configure: Merge the libcapi20 existence check with the soname check.

	* configure, configure.ac, programs/wineconsole/curses.c:
	configure: Merge the libcurses existence check with the soname check.

	* configure, configure.ac, include/config.h.in, programs/explorer/hal.c:
	configure: Merge the libhal existence check with the soname check.

	* configure, configure.ac:
	configure: Move the dll checks earlier in the file to make them available for
	library checks.

	* aclocal.m4, configure, configure.ac:
	configure: Change WINE_GET_SONAME to allow it to be used as a replacement
	for AC_CHECK_LIB.

2007-06-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return ERROR_SUCCESS if the PackageName property is not present.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Return ERROR_BAD_CONFIGURATION if the SourceList key does not exist.

	* dlls/msi/source.c, dlls/msi/tests/source.c:
	msi: Validate MsiSourceListGetInfo parameters.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/msi.c,
	  dlls/msi/tests/source.c, include/winerror.h:
	msi: Add tests for MsiSourceListGetInfo.

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Implement MsiSourceListGetInfoA.

2007-07-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/enumx.c, dlls/ole32/enumx.h:
	ole32: Constify some variables.

2007-07-02  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Don't set LDPATH if not needed.

	* aclocal.m4, configure, configure.ac, dlls/gphoto2.ds/ds_image.c,
	  dlls/winex11.drv/xinerama.c, programs/explorer/hal.c,
	  programs/wineconsole/curses.c:
	configure: Don't use a default soname if a library is not found, leave it
	undefined.

	* configure, configure.ac, dlls/capi2032/cap20wxx.c,
	  dlls/gdi32/freetype.c, dlls/gphoto2.ds/gphoto2_i.h,
	  dlls/oleaut32/olepicture.c, dlls/opengl32/wgl.c,
	  dlls/sane.ds/sane_main.c, dlls/winejack.drv/jack.c,
	  dlls/wineps.drv/init.c, dlls/wineps.drv/truetype.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/wintab.c, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xrender.c, dlls/wininet/netconnection.c,
	  dlls/winspool.drv/info.c, include/config.h.in:
	configure: Export the shared library extension instead of hardcoding .so.

	* configure, configure.ac:
	configure: Fix the strip command line for Mac OS.

2007-07-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/service.c:
	advapi32/tests: Add tests for OpenSCManagerA.

2007-07-01  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_load_psamplers().

	* dlls/wined3d/state.c:
	wined3d: In tex_colorop() & tex_alphaop(), only check the mapped stage against
	GL_LIMITS(textures) if the texture is used.

	* dlls/wined3d/state.c:
	wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for supported units.

	* dlls/wined3d/state.c:
	wined3d: Only call activate_dimensions() if the texture is used.

	* dlls/wined3d/context.c, dlls/wined3d/device.c:
	wined3d: Call IWineD3DDeviceImpl_FindTexUnitMap for cards without support for
	NV_REGISTER_COMBINERS as well.

2007-06-29  Kai Blin <kai.blin@gmail.com>

	* configure, configure.ac, dlls/ws2_32/socket.c, include/config.h.in:
	ws2_32: Handle IPv6 in WSAStringToAddress.

2007-06-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/loader.c:
	ntdll: Fix missing unlock on error path. Found by Smatch.

2007-06-29  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Accept ERROR_INVALID_PARAMETER in addition to ERROR_PATH_NOT_FOUND
	(and remove no-longer-useful checkFileStoreFailure).

	* dlls/crypt32/tests/store.c:
	crypt32: Accept ERROR_BADKEY in addition to ERROR_INVALID_HANDLE.

	* dlls/crypt32/tests/store.c:
	crypt32: Accept OSS errors as well.

	* dlls/crypt32/tests/crl.c:
	crypt32: Accept OSS errors.

	* dlls/crypt32/tests/cert.c:
	crypt32: Don't fail when CryptVerifyCertificateSignatureEx is missing, use skip
	(and get rid of unnecessary indenting).

	* dlls/crypt32/tests/encode.c:
	crypt32: Use skip to avoid failures where support is missing.

2007-06-22  Markus Gömmel <m.goemmel@compulab.de>

	* dlls/user32/msgbox.c:
	user32: Center MessageBox dialogs to desktop, as Windows does.

2007-06-21  Markus Gömmel <m.goemmel@compulab.de>

	* dlls/comctl32/datetime.c:
	comctl32/datetime: Added a missing InvalidateRect to update display after
	WM_ENABLE.

2007-06-29  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Implementation of GCS_CURSORPOS.

2007-06-29  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.40.

----------------------------------------------------------------
2007-06-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c:
	dsound: Fix calcplayposition to handle mixed amount > buffer length better.

2007-06-29  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* programs/winefile/Ru.rc:
	programs/winefile: Add Russian resources.

2007-06-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: Constify some variables.

2007-06-29  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Return WSAEINVAL for unhandled address families in WSAStringToAddress.
	Prepare for IPv6 support.

2007-06-28  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	shell32: Fix shelllink creation to non-executable files and remove unnecessary
	code.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Fix tests of IShellLinkA_SetPath to conform on both Windows 98
	and XP.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Allow CoCreateInstance to return E_NOINTERFACE to pass on Win98;
	add skips and display return values.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Add test for shell links to existing non-executable files.

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Allow individual tests in check_lnk to be todo_wine'd.

2007-06-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Get rid of the oneToOneTexUnitMap field.

	* dlls/wined3d/device.c:
	wined3d: In device_map_psamplers(), only touch the sampler mapping for samplers
	that are used by the shader.

	* dlls/wined3d/device.c:
	wined3d: Cleanup device_map_fixed_function_samplers().

2007-06-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't print traces from async I/O callbacks.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c:
	ntdll: Don't print traces from async I/O callbacks.

2007-06-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlbody.c:
	mshtml: Add IID_IPropertyNotifySink and DIID_HTMLTextContainerEvents connection
	points to HTMLBodyElement.

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IConnectionPointContainer implementation to HTMLBodyElement.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Make connection points container independent.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Move IConnectionPointContainer to the separated struct.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store connection point as a list.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Don't use dynamic allocation for connection points.

2007-06-28  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting content for data messages opened to encode.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement getting bare content for data messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Add tests for data message encoding.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add a stub get param function for data messages and remove stub
	message from open function.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Implement CryptMsgUpdate for data messages opened to encode.

	* dlls/crypt32/msg.c:
	crypt32: Add a finalized member to message.

	* dlls/crypt32/msg.c:
	crypt32: Store stream info in message.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add an update function, use it to implement CryptMsgUpdate.

	* dlls/crypt32/msg.c:
	crypt32: Add a get param function, use it to implement CryptMsgGetParam.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Stub CryptMsgOpenToEncode for data messages.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test CryptMsgGetParam for data messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test CryptMsgUpdate for data messages opened to encode.

	* dlls/crypt32/tests/msg.c:
	crypt32: Test CryptMsgOpenToEncode for data messages.

	* dlls/crypt32/msg.c:
	crypt32: Add base message type and use it to implement CryptMsgDuplicate and
	CryptMsgClose.

	* dlls/crypt32/msg.c, dlls/crypt32/tests/msg.c:
	crypt32: Add basic parameter checking to CryptMsgOpenTo*.

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/msg.c:
	crypt32: Add basic tests for CryptMsg functions.

	* dlls/crypt32/msg.c:
	crypt32: Don't return fake HCRYPTMSG from CryptMsgOpenTo*.

	* include/wincrypt.h:
	wincrypt: Add missing message flags and parameters.

2007-06-29  Rob Shearman <rob@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add the SystemDrive environment variable.

2007-06-28  Misha Koshelev <mk144210@bcm.edu>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Do not WINE_ERR in InvokeShellLinker if we are going to
	try again.

2007-06-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Ignore invalid conditional expressions when checking the launch conditions.

	* dlls/msi/tests/package.c:
	msi: Add tests that show '!=' is not a valid conditional expression operator.

2007-06-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/tests/comboex.c:
	comctl32: Replace malloc() with HeapAlloc().

2007-06-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/winemp3.acm/mpegl3.c:
	winemp3: Announce capability to decode at 48 KHz.

2007-06-22  Pedro Maia <pedrom.maia@tvtel.pt>

	* dlls/shell32/shell32_Pt.rc:
	shell32: Update paths in Portuguese resource.

2007-06-28  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Silence buffer on allocation.

2007-06-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Move key state array into object.

2007-06-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhCollectQueryData.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhAddCounter{A, W} and PdhRemoveCounter.

	* dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Implement PdhOpenQuery{A, W} and PdhCloseQuery.

	* include/Makefile.in, include/pdh.h, include/pdhmsg.h, include/winperf.h:
	pdh: Add public headers.

2007-06-28  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/ppl.l:
	wpp: Don't suppress output from C include files, that's up to the user.

	* tools/wrc/parser.l:
	wrc: Strip C code based on the name of the include file.
	Get rid of the old C code stripping support that wasn't used anymore.

2007-06-23  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c, dlls/winealsa.drv/dsoutput.c, include/dsdriver.h:
	dsound/winealsa: Remove writelead for alsa directsound.

2007-06-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Optimize GetPosition() more in dsalsa.

2007-06-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/shelllink.c, programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Wait for parent process to finish instead of creating RunOnce
	entry that may never run.

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Create/release semaphore only around call to wineshelllink.

2007-06-27  Aric Stewart <aric@codeweavers.com>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/editstr.h:
	riched20: Make richedit control IME aware.

2007-06-27  Jeff Latimer <lats@yless4u.com.au>

	* dlls/cabinet/fci.c:
	cabinet: Fix a potential NULL reference.

2007-06-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Combine all Release functionality into base class.

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Move parent dinput reference into base class.

	* dlls/dinput/dinput_main.c:
	dinput: Remove duplicate code.

2007-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Check more thoroughly if a stage references a texture.

	* dlls/wined3d/device.c:
	wined3d: Map vertex samplers to a texturing unit.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement texldl.

2007-06-27  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winefile/winefile.c:
	winefile: Do not use the TEXT() macro on character constants. The implicit
	cast from char to WCHAR works as well in UNICODE mode.

	* programs/winefile/splitpath.c:
	winefile: Do not use wide character constants.

2007-06-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Constify some variables.

2007-06-28  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32/service: Don't rely blindly on type.

2007-06-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c, dlls/advapi32/tests/service.c:
	advapi32/service: Make sure we fill all struct members.

2007-06-27  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* programs/uninstaller/Ru.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Russian resources.

2007-06-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Reference count the custom action data to avoid freeing the data by
	another thread.
	Based on a patch by Rob Shearman.

2007-06-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/handle.c:
	msi: Avoid some redundant checks in MsiCloseHandle.

2007-06-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/handle.c:
	msi: Add support for remote handles.

2007-06-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/service.c:
	advapi32/service: Return (more) correct needed buffersize.

	* dlls/advapi32/service.c:
	advapi32/service: Fix wrong key.

	* dlls/advapi32/service.c:
	advapi32/service: Use the correct registry key for the service account.

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/service.c:
	advapi32/tests: Add some service related tests.

2007-06-27  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xdnd.c:
	winex11.drv: Added better support for the X file drag protocol.

2007-06-26  Evan Stade <estade@gmail.com>

	* dlls/gdi32/painting.c:
	gdi32: Added missing call to GDI_ReleaseObj.

2007-06-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/amstream/amstream.c, dlls/msxml3/nodemap.c, dlls/riched20/reader.c,
	  dlls/shlwapi/tests/string.c, dlls/user32/tests/cursoricon.c:
	janitorial: Remove superfluous casts of void pointers to other pointer types.

	* dlls/winedos/int31.c:
	winedos: Remove superfluous casts of void pointers to other pointer types.

	* dlls/wininet/tests/url.c:
	wininet: Remove superfluous casts of void pointers to other pointer types.

	* dlls/dbghelp/msc.c:
	dbghelp: Remove superfluous casts of void pointers to other pointer types.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/surface.c:
	wined3d: Remove superfluous casts of void pointers to other pointer types.

	* dlls/gdi32/tests/bitmap.c, dlls/gdi32/tests/metafile.c:
	gdi32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/virtual.c:
	kernel32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/ole32/dictionary.c, dlls/ole32/tests/marshal.c:
	ole32: Remove superfluous casts of void pointers to other pointer types.

	* dlls/iccvid/iccvid.c:
	iccvid: Remove superfluous casts of void pointers to other pointer types.

	* dlls/quartz/avidec.c, dlls/quartz/enumregfilters.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/regsvr.c:
	quartz: Remove superfluous casts of void pointers to other pointer types.

	* programs/cmd/builtins.c, programs/cmd/directory.c:
	cmd: Remove superfluous casts of void pointers to other pointer types.

2007-06-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/automation.c:
	msi: Set the WindowsInstaller value of the UserData product key when publishing
	the product.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: If the UserData product key exists, but the user product key doesn't,
	the product is absent.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Any value of WindowsInstaller besides 0 means the product is installed.

	* dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/registry.c,
	  dlls/msi/tests/automation.c, dlls/msi/tests/msi.c:
	msi: Use the correct registry key when detecting a published product.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: If the user product key exists, the product's state is advertised.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Validate MsiQueryProductCode parameters.

	* dlls/msi/tests/msi.c:
	msi: Add tests for MsiQueryProductState.

2007-06-26  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Store the assoc_group_id in the connections.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h:
	rpcrt4: Make pointers to RPCRT4_BuildBindHeader and RPCRT4_BuildBindAckHeader
	const.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Remove the unused AuthInfo field from the RpcAssoc structure and Used
	from RpcConnection.

	* dlls/msi/msipriv.h, dlls/msi/string.c, dlls/msi/table.c:
	msi: Fix transforms to work when the number of bytes per string reference
	differs to that of the database it is being applied to.

	* dlls/msi/table.c:
	msi: Fix bytes_per_column for binary types when the database is using 3-byte
	string references.

	* dlls/msi/string.c:
	msi: Fix loading string tables for databases that use 3-byte string references
	and that have a non-zero codepage (i.e. != CP_ACP).

	* dlls/msi/action.c:
	msi: Free version after using lpVer in msi_get_disk_file_version as lpVer
	points inside of version.

	* dlls/msi/action.c:
	msi: Check the return value of VerQueryValueW in msi_get_disk_file_version.

2007-06-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Cleanup GL extension detection.

2007-06-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Added Exec(IDM_DELETE) implementation.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_DELETE support in QueryStatus.

	* dlls/mshtml/editor.c:
	mshtml: Correctly handle delete key in editor mode.

2007-06-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/str.c:
	crypt32: Fix an uninitialized variable compiler warning.

	* dlls/ddraw/Makefile.in:
	ddraw: Don't link against X libraries.

	* dlls/wineps.drv/Makefile.in:
	wineps.drv: List source files explicitly in the makefile to make it easier
	to parse.

2007-06-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/serial.c, dlls/ntdll/tape.c:
	ntdll: Constify some variables.

2007-06-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/file.c, dlls/ntdll/relay.c:
	ntdll: Constify some variables.

2007-06-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/env.c, include/winternl.h:
	ntdll: Constify some variables.

	* dlls/ntdll/cdrom.c, dlls/ntdll/debugbuffer.c, dlls/ntdll/directory.c:
	ntdll: Constify some variables.

2007-06-26  Lei Zhang <thestig@google.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Determine if PSH_PROPSHEETPAGE is set once.

	* dlls/comctl32/propsheet.c:
	comctl32: Reduce duplicate code between PROPSHEET_CollectSheetInfoA/W.

2007-06-25  Lei Zhang <thestig@google.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Reduce duplicate code between PropertySheetA/W.

2007-06-26  Francois Gouget <fgouget@free.fr>

	* dlls/dsound/mixer.c:
	dsound: Add missing '\n' to Wine trace.

2007-06-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for publishing and unpublishing products, features, and
	components.

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	msi: Add a stub implementation of MsiQueryComponentStateA.

2007-06-25  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Allow enums as union switch types.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Allow enums as union switch types.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4/tests: Wrap a try/except block around tests.

	* tools/widl/typegen.c:
	widl: Fix crash dealing with anonymous unions.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Get simple enums working.

	* tools/widl/typegen.c:
	widl: Check for user types when calculating buffer size.

	* tools/widl/typegen.c:
	widl: Check for interface pointers in pointer handling.

2007-06-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm: Replace malloc with HeapAlloc.

	* dlls/msacm32/tests/msacm.c:
	msacm32: Replace malloc/free with HeapAlloc/HeapFree.

2007-06-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winejack.drv/audio.c:
	winejack.drv: Fix missing unlock. Found by Smatch.

	* dlls/ddraw/vertexbuffer.c:
	ddraw: Fix missing unlock on an error path. Found by Smatch.

	* dlls/gdi32/freetype.c:
	gdi32: Multi-character character constants aren't portable as their behaviour
	is compiler dependent according to the C standard. Found by sparse.

2007-06-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Map vertex sampler numbers to the correct internal array indices for
	GetTexture and SetTexture.

	* dlls/wined3d/device.c:
	wined3d: Map vertex sampler numbers to the correct internal array indices for
	GetSamplerState and SetSamplerState.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Increase the sizes of texturing related arrays, in order to support
	vertex textures.

	* dlls/wined3d/directx.c, dlls/wined3d/state.c, include/wine/wined3d_gl.h:
	wined3d: Add max_vertex_samplers and max_combined_samplers to WineD3D_GL_Info.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  include/wine/wined3d_gl.h:
	wined3d: Rename max_samplers to max_fragment_samplers.

2007-06-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Fetch the volume name when getting disk info.

2007-06-25  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/custom.c, dlls/msi/events.c,
	  dlls/msi/install.c, dlls/msi/msi.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c:
	msi: Implement MsiGetMode for MSIRUNMODE_SCHEDULED, MSIRUNMODE_COMMIT and
	MSIRUNMODE_ROLLBACK.

2007-06-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/dsound/primary.c:
	dsound: Reset device playpos/mixpos on buflen change.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Make test recover from failure to preserve primary buffer length
	after SetFormat().

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Reduce writeahead to next multiple of psize greater than 512.

	* dlls/mciwave/mciwave.c:
	mciwave: Prevent division by zero when processing non-PCM codec.

2007-06-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/crypt32/str.c:
	crypt32: Fix possible dereference of NULL ptr.

2007-06-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the pointer passed to the marshaling/unmarshaling/sizing
	routines in complex types for interface pointers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement marshalling, unmarshalling and buffer sizing for the context
	handle type.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement marshalling/unmarshalling for the range NDR type.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set PointerBufferMark to the buffer location immediately after the
	non-pointer data in complex struct and array marshaling and unmarshaling to
	keep to the DCE/RPC specification.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Try a lot harder to resuse existing connections by comparing inside
	the RpcQualityOfService and RpcAuthInfo objects.
	Store a copy of the SEC_WINNT_AUTH_IDENTITY structure passed in to
	RpcBindingSetAuthInfo(Ex) to enable us to do this for RpcAuthInfo objects.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Store the assoc_group_id field returned from the bind_ack packet and
	use it when creating further connections in the association group.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: When an exception is raised, return the stored exception code instead
	of the generic RPC_S_CALL_FAILED.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Translate STATUS_ACCESS_VIOLATION exceptions caught whilst executing
	the stub function to ERROR_NOACCESS to prevent confusing exceptions occurring
	in the client.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Close the connection if a protocol error or certain other kinds of
	errors occur, instead of returning it to the connection pool.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Return a fault packet if the interface/object pair in a request packet
	aren't registered.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add a STUBLESS_FREE phase for freeing the allocated memory in the
	server function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add support for ServerAllocSize parameters.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Don't use add on the sizes of array elements to an open-ended structure;
	use FIELD_OFFSET with the array index instead.

	* dlls/mshtml/htmlelem.c:
	mshtml: Implement HTMLElement_get_children.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Always set the requested fields of the security descriptor according
	to the info flags in GetNamedSecurityInfoW.
	Also, set the control flags so that other security descriptor
	functions can retrieve the info from it.

2007-06-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/context.c, dlls/wined3d/state.c:
	wined3d: Some point sprite fixes.

2007-06-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/vertexshader.c:
	wined3d: Skip the start offset to the source array in
	IWIneD3DVertexShaderImpl_SetLocalConstantsF.

2007-06-15  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/tests/d3d.c, dlls/wined3d/state.c:
	wined3d: Clamp material power to 128.0.

2007-06-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/str.c:
	crypt32: Fix incorrect usage of CharNextA.

	* dlls/mapi32/util.c:
	mapi32: Get rid of unneeded CharNextA call.

	* dlls/ntdll/signal_i386.c:
	ntdll: Use the standard exception handling for vm86 GP faults too.

	* server/signal.c:
	server: Make crash error message more explicit.

	* dlls/advpack/files.c:
	advpack: Get rid of CharPrevW.

	* dlls/shell32/shlfileop.c:
	shell32: Get rid of CharNextW.

	* dlls/shlwapi/path.c, dlls/shlwapi/string.c:
	shlwapi: Get rid of CharNextW/CharPrevW. Simplify some string functions.

	* dlls/comctl32/string.c:
	comctl32: Get rid of CharNextW/CharPrevW. Simplify some string functions.

2007-06-25  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/d3d.c, dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-06-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more QueryInterface tests.

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/dom.c:
	mshtml: Added beginning DOM tests.

	* dlls/mshtml/htmlnode.c:
	mshtml: Added IHTMLDOMNode::get_nodeName implementation.

2007-06-24  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Notify the Gecko stream listener that we stopped binding, if an error
	occurs in start_binding.

	* dlls/mshtml/htmldoc3.c:
	mshtml: Fix HTMLDocument3_get_documentElement to get the right nsIDOMNode.

	* dlls/mshtml/htmlelem.c:
	mshtml: Implement HTMLElement_setAttribute.

	* dlls/mshtml/htmlelem.c:
	mshtml: The SRC value returned from HTMLElement_getAttribute should be an
	absolute, not relative URL.

2007-06-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/action.c:
	msi: Fix use of uninitialized variable (Coverity).

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Fix use of uninitialized variable (Coverity).

2007-06-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/crypt.c:
	wintrust/tests: Add tests for CryptCATAdminCalcHashFromFileHandle.

2007-06-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/loader.c:
	kernel32/tests: Don't crash (on Vista).

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Don't crash on Vista.

2007-06-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IOleInPlaceUIWindow tests.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Better test of QueryInterface.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IOleControlSite tests.

	* dlls/mshtml/olewnd.c:
	mshtml: Set focus to FALSE in InPlaceDeactivate.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsevents.c,
	  dlls/mshtml/view.c:
	mshtml: Notify IOleControlSite about focus changes.

	* dlls/mshtml/view.c:
	mshtml: Activate nsWebBrowser after creating document window.

	* dlls/mshtml/nsembed.c:
	mshtml: Added nsIEmbeddingSiteWindow:[Get|Set]Visibility implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added nsIEmbeddingSiteWindow::SetFocus implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c:
	mshtml: Get rid of no longer used nsIDOMEventListener interface in NSContainer.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsevents.c:
	mshtml: Move load event listener to separated object.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsevents.c:
	mshtml: Move keypress event listener to separated object.

2007-06-22  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/graphics.c:
	gdiplus: Tidy up graphics constructor.

	* dlls/gdiplus/pen.c:
	gdiplus: Fix erroneous pen error checking.

	* dlls/gdiplus/graphicspath.c:
	gdiplus: Fix broken graphics path constructor.

2007-06-22  Misha Koshelev <mk144210@bcm.edu>

	* tools/wine.inf:
	wine.inf: Fix path to rundll32.exe in inffile/shell/install/command subkey.

	* dlls/setupapi/install.c, dlls/setupapi/tests/install.c:
	setupapi: Simplify code as native setupapi does not handle quoted paths.

2007-06-22  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/file.c, dlls/msvcrt/scanf.c:
	msvcrt: Do not use wide character constants.

	* dlls/winealsa.drv/dsoutput.c:
	winealsa.drv: Fix missing unlock on the error path. Found by Smatch.

	* dlls/dsound/primary.c:
	dsound: Fix missing unlock on an error path. Found by Smatch.

2007-06-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Split of the mapping of pixel shader samplers from
	IWineD3DDeviceImpl_FindTexUnitMap().

	* dlls/wined3d/device.c:
	wined3d: Remove the sharing of mapping code for fixed function and pixel
	shader samplers.

	* dlls/wined3d/device.c:
	wined3d: Split of the mapping of fixed function samplers from
	IWineD3DDeviceImpl_FindTexUnitMap().

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Keep track of what fixed function texture stages are in use.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Keep track of what stage a texturing unit is mapped to.

2007-06-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Fix wrong test for failure.

	* dlls/mscms/tests/profile.c:
	mscms/tests: Don't crash on Vista.

2007-06-15  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move material applying to the state table.

2007-06-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/vertexshader.c:
	d3d9: Hold the lock in VertexShader methods.

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Hold the lock in VertexDeclaration methods.

	* dlls/d3d9/vertexbuffer.c:
	d3d9: Hold the lock in Vertexbuffer methods.

	* dlls/d3d9/texture.c:
	d3d9: Hold the lock in Texture methods.

2007-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Extend _invoke to cope with more args.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Handle marshaling of VARTYPE-less FADF_VARIANT safearrays.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement marshaling of VT_BYREF interfaces.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal_dispids.h, dlls/oleaut32/typelib.c:
	oleaut32: Interfaces that derive from IDispatch should be marshaled as
	VT_DISPATCH.

2007-06-21  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/tests/path.c:
	gdi32/tests: Fix test_widenpath to succeed on Win98.

	* dlls/gdi32/painting.c, dlls/gdi32/tests/path.c:
	gdi32: Emulate AngleArc using ArcTo.

	* dlls/gdi32/tests/path.c:
	gdi32/tests: Expand framework for tests of drawing functions in paths, add
	test for AngleArc in paths.

2007-06-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/swapchain.c:
	d3d9: Hold the lock in swapchain methods.

	* dlls/d3d9/surface.c:
	d3d9: Hold the lock in suface methods.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/tests/d3d.c, dlls/wined3d/surface.c:
	wined3d: Depthfill blits are allowed between BeginScene and Endscene.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Check for incorrect rectangles to DDrawSurface::Blt.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for incorrect surface desc sizes for Lock().

2007-06-22  Emmanuel Maillard <mahanuu@free.fr>

	* configure, configure.ac:
	configure: Fix libxml2 detection on Mac OS X.

2007-06-21  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphicspath.c,
	  include/gdiplusenums.h, include/gdiplusflat.h,
	  include/gdiplusgpstubs.h, include/gdiplustypes.h:
	gdiplus: Implemented GdipCreatePath and GdipDeletePath.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawLines.

2007-06-21  Lei Zhang <thestig@google.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Reset focus if application does not want to be activated.

2007-06-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h:
	dsound: Tune some parameters for alsa waveout.

2007-06-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c, dlls/dsound/sound3d.c:
	dsound: Simplify mixing by removing remixing support, and fix its waveout
	breakage.
	Based on a patch by Peter Dons Tychsen.

2007-06-08  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Give rougher estimates for fraglen to satisfy alsa.

2007-06-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Finally get rid of the thread in alsa directsound acceleration.

2007-06-21  Nigel Liang <ncliang@gmail.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Remove call to XCreateFontSet.

2007-06-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c:
	mshtml: Don't check out VT in exec_fontsize.

2007-06-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntprint/tests/ntprint.c:
	ntprint/tests: Add tests for PSetupEnumMonitor.

	* dlls/ntprint/ntprint.c, dlls/ntprint/ntprint.spec:
	ntprint: Implement PSetupEnumMonitor.

2007-06-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Do not mark texture stages > MAX_TEXTURES dirty, they don't exist.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Fix various incorrect uses of GL_LIMITS(texture_stages) and
	GL_LIMITS(sampler_stages).

2007-06-21  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmloader/loaderstream.c:
	dmloader: Do not use wide character constants.

	* dlls/comctl32/commctrl.c, dlls/comctl32/string.c,
	  dlls/comctl32/tooltips.c:
	comctl32: Do not use wide character constants.

	* dlls/ole32/ole2.c:
	ole32: Do not use wide character constants.

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/typelib.c:
	oleaut32: Do not use wide character constants.

	* dlls/setupapi/devinst.c:
	setupapi: Do not use wide character constants.

	* dlls/riched20/string.c:
	riched20: Do not use wide character constants.

	* dlls/shlwapi/url.c:
	shlwapi: Remove more wide character constants.

	* dlls/winmm/lolvldrv.c:
	winmm: Do not dump the version info when loading drivers.

2007-06-21  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/files.c:
	msi: Only use the long name for the file source if the file has one.

2007-06-21  David Adam <David.Adam@math.cnrs.fr>

	* programs/wordpad/Fr.rc:
	wordpad: French translation for the view item.

2007-06-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shfldr_desktop.c:
	shell32: Make SHGetDesktopFolder use a cached instance of IShellFolder.

2007-06-18  Lei Zhang <thestig@google.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Send WM_MOUSEACTIVATE before closing a window.

2007-06-18  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Fix popup window style.

2007-06-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/painting.c, dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Handle ArcTo in paths as native.

	* dlls/gdi32/path.c:
	gdi32: Allow arbitrary start entry types in PATH_DoArcPart, not just PT_MOVETOs.

	* dlls/gdi32/painting.c, dlls/gdi32/tests/path.c:
	gdi32: Set current position properly after ArcTo.

2007-06-19  Kovács András <andras@csevego.net>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dwmapi/Makefile.in, dlls/dwmapi/dwmapi.spec,
	  dlls/dwmapi/dwmapi_main.c, dlls/dwmapi/version.rc:
	Add dwmapi.dll stub.

2007-06-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/msg.c:
	user32/tests: Only do the GetProcAddress once.

2007-06-21  Francois Gouget <fgouget@free.fr>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Run the GetTextMetricsA() tests on Windows 9x too.

2007-06-21  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntprint/tests/Makefile.in, dlls/ntprint/tests/ntprint.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	ntprint/tests: Add initial test.

	* dlls/ntprint/Makefile.in, dlls/ntprint/ntprint.c,
	  dlls/ntprint/ntprint.spec:
	ntprint: Implement PSetupCreateMonitorInfo.

2007-06-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Specify the arguments of the function in the function.

	* dlls/shlwapi/reg.c:
	shlwapi: Do not use wide character constants.

2007-06-21  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	winapi: Add support for GDIPCONST.

2007-06-21  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Add more RegGetValue() conformance tests, and fix Wine accordingly.

2007-06-20  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Fix warnings about unused function parameters.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Add tests for arrays of pointers.

2007-06-21  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Make use of the texUnitMap in drawStridedSlow as well.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use texture2D to sample in pshader_glsl_texdp3tex().

2007-06-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Remove unnecessary toolbar resizing code.

	* programs/wordpad/wordpad.c:
	wordpad: Set default font effects to 0.

2007-06-20  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Emulate tracking of multiple material properties.

	* dlls/wined3d/state.c:
	wined3d: Unload texture coords for all supported texture stages.

2007-06-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the FVF codepath from drawprim.

2007-06-19  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Convert fvfs to vertex declarations.

2007-06-20  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/net.c:
	net.exe: Add missing CloseServiceHandle().

2007-06-20  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Make.rules.in, configure, configure.ac, loader/Makefile.in,
	  server/Makefile.in, tools/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	makefiles: Build programs that link against libwine twice with appropriate
	rpaths.
	One rpath is for installing and one is for running inside the build tree.

2007-06-20  Ken Thomases <ken@codeweavers.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Make wodReset fail if called on a closed device.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Move notify of completed WAVEHDRs to end of wodReset.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Move a variable declaration to narrower scope, reduce whitespace.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio: Extract loop, wodNotifyClient for WAVEHDRs in list, to separate
	function.

2007-06-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Make MDI get_client_info checks more strict.

	* dlls/user32/mdi.c, dlls/user32/menu.c, dlls/user32/tests/menu.c:
	user32: When inserting a menu item make sure that MDI system buttons stay on
	the right side.

2007-06-19  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/quartz/videorenderer.c:
	quartz: Fix video rendering sizing/positioning bugs.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/surface.c, dlls/ddraw/surface_thunks.c,
	  dlls/ddraw/tests/dsurface.c:
	ddraw: Test for incorrect surface desc sizes in GetSurfaceDesc.

2007-06-20  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/trace.c:
	server: Don't crash when trying to set a file lock on a device.

2007-06-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Fixed pointer casting and additions.

2007-06-19  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplustypes.h:
	gdiplus: Implemented GdipDrawCurve2.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawArc.

2007-06-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/access.c, dlls/netapi32/nbt.c, dlls/netapi32/netbios.c,
	  dlls/netapi32/netbios.h, dlls/netapi32/wksta.c:
	netapi32: Constify some variables.

2007-06-19  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/main.c:
	msvcrt: Move definition of 2 static inline functions up and remove the forward
	declaration of those. Found by sparse.

2007-06-19  Jason Green <jave27@gmail.com>

	* dlls/winscard/winscard.c, dlls/winscard/winscard.spec:
	winscard: Add extended stub for SCardEstablishContext.

2007-06-19  Rob Shearman <rob@codeweavers.com>

	* programs/rpcss/Makefile.in, programs/rpcss/np_server.c,
	  programs/rpcss/rpcss.h, programs/rpcss/rpcss_main.c:
	rpcss: Remove lazy timeout mechanism and use __wine_make_system_process instead.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use the offset to array data in embedded pointer format descriptions.

	* tools/widl/typegen.c:
	widl: Always write out pointers if the structure is a pointer structure. Pointer
	are optional for conformant varying structures.

	* tools/widl/typegen.c:
	widl: Write out embedded pointers for the element type when writing out arrays.

	* tools/widl/parser.y:
	widl: Fix detection of structures with non-conformant strings.

	* tools/widl/typegen.c:
	widl: Implement pointer descriptions for all embedded pointer types.

2007-06-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, dlls/ntdll/nt.c, dlls/ntdll/tests/info.c:
	ntdll: Improved the stub behavior of
	NtQuerySystemInformation(SystemModuleInformation).

2007-06-18  James Hawkins <truiken@gmail.com>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Add a stub implementation of KeInitializeTimer.

2007-06-18  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/net.c:
	net.exe: Add NET STOP.

2007-06-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/stateblock.c:
	d3d9: Hold the lock in stateblock methods.

	* dlls/d3d9/query.c:
	d3d9: Release the wined3d query when the d3d9 query is destroyed.

	* dlls/d3d9/query.c:
	d3d9: Hold the lock in query methods.

2007-06-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c:
	user32: Insert menu item only after contents of the passed in menu item info
	have been verified.

2007-06-19  Misha Koshelev <mk144210@bcm.edu>

	* dlls/gdi32/painting.c, dlls/gdi32/tests/path.c:
	gdi32: Fix ArcTo to use proper starting and ending points.

	* dlls/gdi32/tests/path.c:
	gdi32/tests: Add framework for tests of drawing functions in paths, add test
	for ArcTo in paths.

2007-06-18  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix typo in union buffer size calculation.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix bug calculating union switch type.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove inaccurate comments.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h:
	rpcrt4: Add encapsulated union tests.

2007-06-18  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawPie/GdipFillPie.

2007-06-19  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, dlls/ntprint/Makefile.in, dlls/ntprint/ntprint.rc:
	ntprint: Add version resource.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntprint/Makefile.in, dlls/ntprint/ntprint.c,
	  dlls/ntprint/ntprint.spec:
	ntprint: Add a stub for ntprint.dll.

2007-06-18  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, dlls/printui/Makefile.in, dlls/printui/printui.rc:
	printui: Add version resource.

2007-06-18  Lei Zhang <thestig@google.com>

	* dlls/riched20/tests/editor.c:
	riched20: Add tests for EM_FORMATRANGE.

2007-06-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvidc32/msvideo1.c:
	msvidc32: Constify some variables.

2007-06-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/alter.c, dlls/msi/create.c, dlls/msi/delete.c,
	  dlls/msi/distinct.c, dlls/msi/insert.c, dlls/msi/join.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/streams.c, dlls/msi/table.c, dlls/msi/tests/db.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	msi: Properly delete rows from the table, instead of zeroing out the row.

	* dlls/msi/custom.c:
	msi: Send the expected data to set_deferred_action_props.

2007-06-18  Jeff Latimer <lats@yless4u.com.au>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/hnetcfg/Makefile.in, dlls/hnetcfg/hnetcfg.c,
	  dlls/hnetcfg/hnetcfg.spec:
	hnetcfg: Stub implementation of the dll.

2007-06-18  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/be_i386.c:
	winedbg: Added support for indirect call with absolute address.

2007-06-15  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/builtins.c:
	cmd.exe: for loop by default only matches files.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Fix FOR so it works as 'well' as before.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Support IF..ELSE processing tolerate multiline/part lines.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Correctly parse IF ELSE plus multipart/multiline.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Parse multipart FOR statements.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: EXIT /b skips any residual commands.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Lines starting with REM ignore any multiline/part characters.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: GOTO throws away any preloaded multi part/line command.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Pass the command list through so it is available to built in commands.

	* programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Pass command structure into WCMD_pipe, not command line itself.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/batch.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add basic support for && and (...) syntax.

2007-06-18  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement encapsulated union NDR functions.

2007-06-18  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/text.c:
	wineps.drv: Ignore ExtTextOut calls that occur before the job has started.

2007-06-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Use Unicode functions in more places.

2007-06-18  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/printui/Makefile.in, dlls/printui/printui.c,
	  dlls/printui/printui.spec:
	printui: Add stub for printui.dll.

2007-06-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for AddPortEx.

2007-06-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for AddPortEx.

2007-06-17  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Fix compilation on systems that don't support nameless unions.

2007-06-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/query.h, dlls/msi/sql.y:
	msi: Name all or none of the formal arguments in function prototypes.

2007-06-15  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c,
	  include/gdiplusflat.h:
	gdiplus: Implemented GdipDrawBezier.

2007-06-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/winedos/int21.c:
	winedos: Fix the device open code for the new NtCreateFile syntax for Unix files.

	* dlls/kernel32/vxd.c:
	kernel32: Fix VxD open code for the new NtCreateFile syntax for Unix files.

2007-06-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Mask texture stage state arguments with WINED3DTA_SELECTMASK when
	comparing them.

2007-06-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Only set GL_SHADER_OPERATION_NV to GL_NONE for mapped stages.

2007-06-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/pixelshader.c:
	d3d9: Hold the lock in Pixelshader functions.

	* dlls/d3d9/indexbuffer.c:
	d3d9: Hold the lock in indexbuffer methods.

	* dlls/d3d9/cubetexture.c:
	d3d9: Hold the lock in cubetexture methods.

2007-06-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c:
	d3d9: Hold the lock in methods implemented in device.c.

2007-06-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c:
	d3d9: Hold the lock in IDirect3D9 methods.

2007-06-16  Misha Koshelev <mk144210@bcm.edu>

	* tools/wine.inf:
	wine.inf: Quote %1 for Msi.Package shell actions per native.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Conform to native in SHELL_ArgifyW for unquoted %1 in registry keys.

2007-06-17  Vitaly Budovski <vbudovski@gmail.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Fix incorrect callback private value.

2007-06-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Patches are applied based on ProductCode, not ProductID.

	* dlls/msi/msi.c, include/msi.h:
	msi: Implement MsiApplyPatchW.

	* dlls/msi/msi.c:
	msi: Forward MsiApplyPatchA to MsiApplyPatchW.

2007-06-15  Francois Gouget <fgouget@free.fr>

	* dlls/shlwapi/ordinal.c, tools/winapi/win32.api:
	shlwapi: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	winapi_check: ULONG_PTR is a 'long --pointer', not a 'long'.

2007-06-15  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regproc.c:
	regedit: Merge getRegClass() and getRegKeyName() to form parseKeyName().
	Keep track of the full registry path (including the root key) in
	currentKeyName. This makes the error messages more informative.
	Reduce the number of global variables used by openKey() & co.  Only
	use one variable, currentKeyHandle, to indicate whether a key is
	currently open or not.

	* programs/regedit/regproc.c:
	regedit: Don't allow square-bracketed registry paths on the command line
	(to match native).
	The only place they are allowed is in .reg files, so exclusively deal with
	them in processRegEntry().
	Fix detection of the trailing ']' in processRegEntry(): it can be followed by
	some garbage.

	* programs/regedit/regproc.c:
	regedit: Add missing '\n' to an error message.

2007-06-15  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Don't crash on Vista.

2007-06-15  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.39.

----------------------------------------------------------------
2007-06-14  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/brush.c:
	gdiplus: Brush tests.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/brush.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h:
	gdiplus: Brush implementation.

2007-06-14  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add support for cmd.exe /u (Unicode from internal pgms).

2007-06-15  Kolbjørn Fredheim <hightower@tregt.net>

	* dlls/winex11.drv/settings.c:
	winex11.drv: Echo the video mode requested in the error message when not
	finding a matching mode.

2007-06-14  Lei Zhang <thestig@google.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Make modal property sheets modal.

2007-06-14  Misha Koshelev <mk144210@bcm.edu>

	* dlls/setupapi/install.c, dlls/setupapi/tests/install.c:
	setupapi: Handle unquoted paths in InstallHinfSection as native.

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/install.c:
	setupapi/tests: Add basic tests for InstallHinfSectionA/W command line
	processing.

2007-06-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/edit.c:
	user32/tests: Avoid strlen in trace.

	* dlls/ntdll/cdrom.c:
	ntdll: Implemented reading of the CDROM TOC on Mac OS.

	* server/fd.c:
	server: Enable kqueue support on Mac OS >= 10.5 now that it's fixed.

2007-06-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msi/action.c:
	msi: Simplify the code.

2007-06-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Set the UserSID and ProductCode properties for deferred custom actions.

2007-06-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Constify some variables.

2007-06-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IOleInPlaceSiteEx tests.

	* dlls/mshtml/olewnd.c, dlls/mshtml/view.c:
	mshtml: Use IOleInPlaceSiteEx if available.

2007-06-14  Lei Zhang <thestig@google.com>

	* dlls/user32/tests/edit.c:
	user32: Remove a unused variable from ES_PASSWORD test.

2007-06-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/opengl.c:
	opengl: Use get_glxdrawable to grab the drawable.

2007-06-14  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: getsockname should fail on unbound socket.

2007-06-14  John Klehm <xixsimplicityxix@gmail.com>

	* include/wine/port.h:
	include: Allow port.h to build on gcc4.

2007-06-14  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Fix a write_parameters_init bug.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Factor the output functions.

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Handle encapsulated unions.

	* tools/widl/parser.y, tools/widl/typegen.c:
	widl: Handle embedded interface pointers.

2007-06-13  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Use Unicode functions in more places.

2007-06-14  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regproc.c:
	regedit: Modify getRegClass() to avoid dubious comparisons and casts between
	HKEYs and error codes.

	* programs/regedit/regproc.c:
	regedit: Having garbage after the dash in '"foo"=-' is not valid.
	Don't complain if the value already does not exist.

	* programs/regedit/regproc.c:
	regedit: The registry functions return standard error codes, not HRESULTs.

	* programs/regedit/regproc.c:
	regedit: Make the dword and binary data parsing both more flexible and stricter.
	Make sure it does not modify the value if the data is invalid.

	* programs/regedit/regproc.c:
	regedit: If the data for a given value is in an unknown format, then print an
	error and don't modify the value.
	Note that '"foo"=' is not valid.

	* programs/regedit/listview.c, programs/regedit/regedit.c,
	  programs/regedit/regproc.c, programs/regedit/regproc.h:
	regedit: Remove cruft and make functions static, reordering where necessary
	to avoid forward declarations.
	Remove the command parameter of processRegLines() as it can only be used with
	processRegEntry().

	* programs/regedit/regedit.c, programs/regedit/regproc.c,
	  programs/regedit/regproc.h:
	regedit: Remove setAppName() as the application name is hardcoded anyway.

2007-06-14  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/encode.c:
	crypt32: Add missing '\n' to ok() call.

2007-06-14  Lei Zhang <thestig@google.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Move file dialog resizing code into its own function.

2007-06-13  Lei Zhang <thestig@google.com>

	* dlls/user32/edit.c, dlls/user32/tests/edit.c:
	user32: Improve cut/copy/paste behavior of password edit boxes.

2007-06-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Fixed the WriteEnvironmentStrings action.

2007-06-10  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/d3d9_main.c, dlls/d3d9/d3d9_private.h:
	d3d9: Add a dll global critical section.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: DDraw surfaces are QWORD aligned.

2007-06-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/wined3d/swapchain.c:
	wined3d: Present does not clear the depth stencil.

2007-06-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/ddraw.h, include/wine/wined3d_gl.h,
	  include/wine/wined3d_types.h:
	wined3d: Implement vertical refresh sync.

2007-05-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/swapchain.c:
	wined3d: Only swap system memory resources of front and back buffer if they
	have the same size.

2007-06-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/msipriv.h, dlls/msi/query.h, dlls/msi/table.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	msi: Constify some variables.

2007-06-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: Use TIME_KILL_SYNCHRONOUS on sound timer.

2007-06-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/localspl/localmon.c:
	localspl: Make some functions static.

2007-06-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c:
	localspl: Implement AddPortEx.

2007-06-13  Michael Stefaniuc <mstefani@redhat.de>

	* tools/wrc/parser.y:
	wrc: Fix redundant checks for NULL before free(). Found by Smatch.

2007-06-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/custom.c:
	msi: Protect custom actions with a structured exception handler.

2007-06-13  Rob Shearman <rob@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	include: Add HTMLTextContainerEvents dispinterface and necessary dispids.

2007-06-13  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/device.c:
	wined3d: Remove a duplication in device.c.

2007-06-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Vista uses a different error code.

2007-06-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Skip tests if we don't have enough rights.

2007-06-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Add some tests for BITMAPINFOHEADER biSize checks.

2007-06-13  Francois Gouget <fgouget@codeweavers.com>

	* programs/regedit/regedit.c, programs/regedit/regproc.c,
	  programs/regedit/regproc.h:
	regedit: Move PerformRegAction() and get_file_name() around to eliminate
	forward references. Make them static.

2007-06-13  Francois Gouget <fgouget@free.fr>

	* dlls/gdiplus/pen.c, dlls/gdiplus/tests/pen.c:
	gdiplus: Add missing '\n' to ok() calls, Wine traces.

2007-06-14  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/typegen.c:
	widl: Add typecasts for user marshalling routines to avoid compiler warnings.

2007-06-13  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Handle wire_marshal pointer attributes.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	widl: Test structure argument marshalling.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/header.c, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h, tools/widl/widltypes.h:
	widl: Handle wire_marshal types.

2007-06-06  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/tests/msg.c:
	user32: tests:msg Add test for switching MDI children.

2007-06-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Skip tests if we don't have enough rights.

2007-06-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/dib.c:
	gdi32: Make BITMAPINFOHEADER biSize check match what other parts of code do.

2007-06-12  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/hlink.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c:
	mshtml: Use the implementation of IHlink in hlink.dll instead of duplicating it.

2007-06-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/waveout.c:
	winealsa: Detach directsound implementation from waveout implementation.

2007-06-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Allow CRYPT_NEWKEYSET and CRYPT_VERIFYCONTEXT at same time when
	acquiring context.

2007-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Fix the WintrustGetRegPolicyFlags to work right the first time.

2007-06-12  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Fix checks to be more informative when they fail.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Simplify the code and improve consistency by removing unneeded
	function typedefs.

2007-06-12  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/gdiplus/gdiplus.c:
	Add API documentation stubs to make winapi_check happy.

2007-06-12  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS7_SIGNER_INFO encoding/decoding.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS_ATTRIBUTES encoding/decoding.

	* dlls/crypt32/encode.c:
	crypt32: Use CRYPT_EncodeEnsureSpace to allocate memory when necessary.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS_ATTRIBUTE encoding/decoding.

	* dlls/crypt32/encode.c:
	crypt32: Separate set encoding into a separate function.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement PKCS_CONTENT_INFO encoding/decoding.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement CERT_AUTHORITY_KEY_ID2_INFO encoding/decoding.

2007-06-12  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_types.h:
	wined3d: Add wined3d vertex sampler definitions.

	* dlls/wined3d/context.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Call IWineD3DDeviceImpl_FindTexUnitMap() when activating the context.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Take the texUnitMap into account when loading
	shader_glsl_load_psamplers().

2007-06-12  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c:
	wined3d: Add gamma linerization support for D3DFMT_A4R4G4B4.

2007-06-12  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawRectangleI.

	* dlls/gdiplus/gdiplus.spec, dlls/gdiplus/graphics.c:
	gdiplus: Implemented GdipDrawLineI.

2007-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/tab.c:
	comctl32: Remove useless pointer check.

2007-06-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Set the MsiNetAssemblySupport property.

2007-06-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/msipriv.h, dlls/msi/query.h, dlls/msi/select.c, dlls/msi/sql.y,
	  dlls/msi/string.c, dlls/msi/suminfo.c:
	msi: Constify some variables.

2007-06-12  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	secur32: Update win32.api to fix the winapi_check warnings.

	* dlls/msdmo/dmoreg.c, include/dmoreg.h, tools/winapi/win32.api:
	msdmo: Improve the prototypes Win64 compatibility by replacing long with LONG.

	* include/dmoreg.h:
	msdmo: dmoreg.h should include mediaobj.h.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: winapi_check expects the module name to be all uppercase in the
	documentation.

	* tools/winapi/winapi_documentation.pm:
	winapi_check: .exe and .ocx files can also export APIs.

	* dlls/gdiplus/gdiplus.c:
	gdiplus: Add missing '\n' in Wine trace.

2007-06-12  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Pass the D3DCB_CreateAdditionalSwapChain() error code to the upper
	layers (needed for d3d9).

2007-05-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/texture.c:
	d3d8: Hold the lock in IDirect3Dtexture8 methods.

	* dlls/d3d8/volumetexture.c:
	d3d8: Hold the lock in IDirect3DVolumeTexture8 methods.

	* dlls/d3d8/volume.c:
	d3d8: Hold the lock in volume methods.

	* dlls/d3d8/vertexbuffer.c:
	d3d8: Hold the lock in IDirect3DVertexBuffer methods.

2007-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/swapchain.c:
	d3d8: Hold the lock in swapchain methods.

2007-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Glyph width is rounded to 32 bits, make sure to provide enough
	null data.

2007-06-12  Rob Shearman <rob@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Add some error handling to hlink_frame_navigate.

	* dlls/hlink/hlink_main.c, dlls/uuid/uuid.c:
	uuid: Add hlink CLSIDs.

2007-06-11  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.spec,
	  dlls/gdiplus/gdiplus_private.h, dlls/gdiplus/graphics.c:
	gdiplus: Added first GDI+ graphics implementation.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/gdiplus/tests/Makefile.in, dlls/gdiplus/tests/pen.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	gdiplus: First pen test.

	* dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec, dlls/gdiplus/gdiplus_private.h,
	  dlls/gdiplus/pen.c:
	gdiplus: First pen implementation.

2007-06-06  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/propset.c:
	dsound: Unset variable on failure in IKsBufferPropertySetImpl_Create.

2007-06-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/format.c:
	msi: Constify a variable.

2007-06-06  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/Fr.rc, programs/wordpad/Hu.rc,
	  programs/wordpad/Ko.rc, programs/wordpad/Makefile.in,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Split toolbar into tool- and formatbar.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Allow toggling of statusbar.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Allow toggling of toolbar.

2007-05-26  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/surface.c:
	d3d8: Hold the lock in IDirect3DSurface8 methods.

	* dlls/d3d8/indexbuffer.c:
	d3d8: Hold the lock in IDirect3DIndexBuffer8 methods.

	* dlls/d3d8/cubetexture.c:
	d3d8: Hold the lock in cubetexture methods.

	* dlls/wined3d/device.c:
	wined3d: Do not set the dynlock flag on all created surfaces.

2007-06-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Simplify correlation descriptor code.

2007-06-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added get_URL implementation.

	* dlls/mshtml/editor.c:
	mshtml: Don't crash in set_font_size if range_cnt is 0.

	* dlls/mshtml/persist.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added GetCurMoniker implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Store current moniker in HTMLDocument.

	* dlls/mshtml/persist.c:
	mshtml: Move Exec(CGID_ShellDocView, 37) call to match native.

	* dlls/mshtml/nsio.c:
	mshtml: Move createing URL moniker to separated function.

	* dlls/mshtml/olecmd.c:
	mshtml: Call Exec(CGID_ShellDocView, 37) in exec_editmode.

2007-06-11  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/appdefaults.c:
	winecfg: Fix potential null pointer access (spotted by Yaroslav Skorokhodov).

	* dlls/shell32/shell32_En.rc:
	shell32: Remove a redundant include.

	* dlls/shell32/xdg.c:
	shell32: Fix contents of string returned in load_path.

2007-06-11  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

	* dlls/credui/credui.rc, dlls/credui/credui_Ko.rc:
	credui: New Korean resource.

2007-06-11  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	advapi32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/winapi.pm:
	winapi_check: Also warn about 'unsigned long's Win64 compatibility problems.

	* dlls/ntdll/misc.c, dlls/ntdll/string.c, dlls/ntdll/wcstring.c,
	  tools/winapi/win32.api:
	ntdll: Improve the prototypes Win64 compatibility by replacing long with LONG.

2007-06-09  Vedran Rodic <vrodic@gmail.com>

	* dlls/winmm/playsound.c:
	winmm: Fix PlaySound so it doesn't block when another sound is already playing.

2007-06-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/time.c:
	winmm: Initialize the timer critical section statically.

	* dlls/winmm/time.c:
	winmm: Maintain the timer list sorted by expiration time.

	* dlls/winmm/time.c, dlls/winmm/winemm.h:
	winmm: Convert the timer list to a standard Wine list.

2007-06-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added edit mode IDM_CUT implementation.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added edit mode IDM_PASTE implementation.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Added edit mode IDM_COPY implementation.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IsDirty tests.

	* dlls/mshtml/persist.c:
	mshtml: Added semi stub IsDirty implementation.

	* dlls/mshtml/editor.c:
	mshtml: Added IDM_COMPOSESETTINGS implementation.

2007-06-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added IHTMLStyle::get_fontFamily implementation.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added COMMENT_NODE implementation in nsnode_to_nsstring_rec.

	* dlls/mshtml/nsembed.c:
	mshtml: Silence invalid FIXME for ELEMENT_DOCUMENT_FRAGMENT_NODE in
	nsnode_to_nsstring_rec.

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_RESPECTVISIBILITY_INDESIGN command stub implementation.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Set default scrollbar preferences.

	* dlls/mshtml/editor.c:
	mshtml: Reimplement editor mode left key using command controller.

	* dlls/mshtml/editor.c:
	mshtml: Reimplement editor mode right key using command controller.

	* dlls/mshtml/editor.c:
	mshtml: Added editor mode down key implementation.

	* dlls/mshtml/editor.c:
	mshtml: Added editor mode up key implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Store editor controller in NSContainer.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Call update_doc in init_editor.

	* dlls/mshtml/editor.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Call update_doc in editor commands.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more command tests.

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added Exec(IDM_FONTNAME) tests.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/task.c:
	mshtml: Set default fontname to 'Times New Roman'.

	* dlls/mshtml/editor.c:
	mshtml: Don't check out variant type in exec_fontname.

	* dlls/mshtml/nsembed.c:
	mshtml: Set FALSE useCapture for editor's keypress event listener.

	* dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c:
	mshtml: Push TASK_PARSECOMPLETE in load event if Gecko is available.

	* dlls/mshtml/editor.c:
	mshtml: Improve IDM_JUSTIFYLEFT query status.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Pump messages of all windows in test_download.
	We have to pump Gecko windows' messages to correctly support loading documents.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of callbacks called from document timer.

	* dlls/mshtml/olecmd.c:
	mshtml: Call update_doc in exec_editmode.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/persist.c, dlls/mshtml/task.c,
	  dlls/mshtml/view.c:
	mshtml: Move Exec(OLECMDID_SETTITLE) call to separated function and use it
	in on_timer.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c:
	mshtml: Call UpdateUI and Exec(OLECMDID_UPDATECOMMANDS) from timer callback.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c, dlls/mshtml/olewnd.c:
	mshtml: Use IOleCommandTarget::Exec to implement context menu.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Don't do anything in exec_editmode if edit mode is already set.

	* dlls/mshtml/navigate.c:
	mshtml: Don't crash in load_stream if Gecko is not available.

	* dlls/mshtml/persist.c:
	mshtml: Forward all IsDirty implementations to one function.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c:
	mshtml: Move setup_ns_editing to nsembed.c.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h:
	mshtml: Make [get|set]_font_size static.

	* dlls/mshtml/olecmd.c:
	mshtml: Move remaining status queries to command tables.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move edit command queries to the command table.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move justify queries to command table.

	* dlls/mshtml/olecmd.c:
	mshtml: Use command table for IDM_COPY, IDM_CUT and IDM_PASTE query.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move remaining commands to tables.

	* dlls/mshtml/editor.c, dlls/mshtml/olecmd.c:
	mshtml: Move more commands to editor command table.

	* dlls/mshtml/olecmd.c:
	mshtml: Move more commands to command table.

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c:
	mshtml: Move IDM_FONTSIZE, IDM_FONTNAME and IDM_FORECOLOR to edit state
	command table.
	This patch temporary adds code duplication.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c:
	mshtml: Added command table for CGID_MSHTML commands.

2007-06-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32.spec, dlls/crypt32/msg.c:
	crypt32: Add CryptMsg* stubs.

2007-06-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/msxml3/xmlelem.c:
	msxml: Don't use VariantClear on an uninitialized variant.

2007-06-08  Evan Stade <estade@gmail.com>

	* dlls/gdiplus/gdiplus.c, dlls/gdiplus/gdiplus.spec:
	gdiplus: Added beginnings of memory and startup functions.

	* include/Makefile.in, include/gdiplus.h, include/gdiplusenums.h,
	  include/gdiplusflat.h, include/gdiplusgpstubs.h,
	  include/gdiplusinit.h, include/gdiplusmem.h,
	  include/gdipluspixelformats.h, include/gdiplustypes.h:
	gdiplus: Added public headers.

2007-06-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Some render target->texture blit context handling.

	* dlls/d3d8/device.c:
	d3d8: Hold the lock in IDirect3DDevice8 methods.

2007-06-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Find possible fbconfis on dll load time, use them in
	CheckDepthStencilMatch.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store the adapter driver and description in the adapter.

2007-06-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/context.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store the gl information in a per adapter structure and initialize
	it only once.

2007-06-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/recyclebin.c, dlls/shell32/shell32.spec:
	shell32: Add stub for SHUpdateRecycleBinIcon.

2007-06-10  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Fix compilation with old alsa headers.

2007-06-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/sysparams.c:
	user32: Do not hardcode cp1252 for an icon/title font.

2007-06-10  Jeff Latimer <lats@yless4u.com.au>

	* dlls/msi/msi.c:
	msi: Use the langbuff len rather than the versionbuff len when allocating
	the langbuff.

	* dlls/shell32/shelllink.c:
	shell32: Fix possible dereference of NULL ptr.

2007-06-09  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add test for unquoted %1 in command and ddeexec keys.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Allow testing for arbitrary number of command line arguments
	in DDE tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Expand default DDE application name tests to conform to win98.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Use ShellExecuteEx with SEE_MASK_FLAG_DDEWAIT and
	SEE_MASK_FLAG_NO_UI for DDE tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Save threadid from CreateThread as required by winme/98/95.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Simplify DDE thread and message loop.

2007-06-08  Nigel Liang <ncliang@gmail.com>

	* dlls/shell32/tests/shlfileop.c, dlls/shell32/xdg.c:
	shell32: Conformance tests for unicode filenames and fix a bug for file deletion.

2007-06-08  Alexandre Julliard <julliard@winehq.org>

	* tools/config.guess, tools/config.sub:
	tools: Upgrade the config.guess/config.sub scripts.

	* aclocal.m4, configure, configure.ac:
	configure: Replace some obsolete macros to avoid warnings.

	* configure, configure.ac, libs/wine/Makefile.in:
	libwine: Set install name to an absolute path for the installed library on
	Mac OS.

	* include/activscp.idl, include/comcat.idl, include/dispex.idl,
	  include/mlang.idl, include/msxml.idl, include/oaidl.idl,
	  include/objidl.idl, include/objsafe.idl, include/ocidl.idl,
	  include/oleidl.idl, include/propidl.idl, include/unknwn.idl:
	include: Add DO_NO_IMPORTS ifdefs where needed.

2007-06-02  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/kernel32/sync.c:
	kernel32: Implement IO completion functions on top of the NT IoCompletion API.

	* dlls/kernel32/sync.c:
	kernel32: Factor out all kernel32 timeout-conversion snippets to one helper
	functions.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/sync.c, include/winternl.h:
	ntdll: Stub and document IoCompletion APIs.

2007-06-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Set the correct ebp value before calling the local unwind handler.

	* programs/cmd/builtins.c:
	cmd.exe: Silence a FIXME.

2007-06-08  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add missing table entry value.

2007-06-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/string.c,
	  dlls/msi/table.c:
	msi: Add support for large string tables.

	* dlls/msi/table.c:
	msi: Represent table data as bytes instead of shorts.

	* dlls/msi/table.c:
	msi: Reduce the amount of code that directly accesses table data.

	* dlls/msi/table.c:
	msi: Use fetch_int to reduce code duplication and access to table data.

2007-06-07  Lei Zhang <thestig@google.com>

	* dlls/shell32/brsfolder.c, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shresdef.h:
	shell32: Start implementing BIF_USENEWUI.

2007-06-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: For ps_2_0 and higher, call shader_get_registers_used() in
	IWineD3DPixelShaderImpl_SetFunction.

	* dlls/wined3d/vertexshader.c:
	wined3d: Pass NULL for the stateBlock parameter to shader_get_registers_used()
	in IWineD3DVertexShaderImpl_SetFunction.

2007-06-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Fix debug trace.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Switch to Wine Gecko 0.1.0.

2007-06-07  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Fix incomplete struct/union typedef bug.

	* tools/widl/typegen.c:
	widl: Check for NULL in set_tfswrite.

2007-06-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Use correct tests for synthesizer/port enumeration order.

2007-06-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Check file dialog's FOIShellView before accessing it.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Initialize file dialog controls before creating dialog.

2007-06-07  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Implementation of state bits for IStorage.

2007-06-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ole32/filemoniker.c:
	ole32: Remove stack-based string buffer inFileMonikerImpl_DecomposePath.

2007-06-07  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_gl.h:
	wined3d: Fix GLSL definitions.

	* dlls/wined3d/device.c:
	wined3d: Turn off filtering for FBO attachments, update the texture's states
	array.

2007-06-07  Misha Koshelev <mk144210@bcm.edu>

	* tools/wine.inf:
	wine.inf: Use DDE for winebrowser as native.

	* programs/winebrowser/Makefile.in, programs/winebrowser/main.c:
	winebrowser: Add DDE support.

2007-06-07  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/commctrl.c, dlls/comctl32/tests/toolbar.c,
	  dlls/dbghelp/type.c, dlls/localspl/tests/localmon.c,
	  dlls/mciavi32/info.c, dlls/odbccp32/tests/misc.c,
	  dlls/riched20/editor.c, dlls/shell32/tests/shlexec.c,
	  dlls/shlwapi/tests/shreg.c, dlls/version/info.c,
	  dlls/version/tests/info.c, dlls/wined3d/device.c,
	  dlls/wined3d/state.c, dlls/wined3d/surface.c, dlls/winedos/int10.c,
	  include/wine/wined3d_interface.h:
	Assorted spelling fixes.

	* dlls/wined3d/state.c:
	wined3d: Fix spelling of the state_separateblend() function.

2007-06-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/ftp.c:
	wininet: More lenient parsing of the passive mode server response.

2007-06-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/atl/atl_ax.c:
	atl: Use CallWindowProc instead of calling old window proc directly.

2007-06-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comdlg32/tests/filedlg.c:
	comdlg32/tests: Skip some not implemented functions on win98.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/mci.c, dlls/winmm/mmio.c, dlls/winmm/mmsystem.c,
	  dlls/winmm/playsound.c, dlls/winmm/time.c, dlls/winmm/winemm.h,
	  dlls/winmm/winmm.c:
	winmm: Get rid of the WINE_MM_IDATA global structure, there's only one instance
	anyway.

2007-06-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/time.c:
	winmm: Use unix fd's instead of win32 events to sync internal events in timer.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/time.c:
	winmm: Fix computation of sleep time until next timeout.

2007-06-06  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h:
	wined3d: Enable the loading and reloading of gamma corrected textures.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  include/wine/wined3d_interface.h:
	wined3d: Add support for loading gamma corrected textures.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Extend the D3DFMT table to include gamma corrected formats.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_EXT_texture_sRGB constants and corresponding CheckDeviceFormat
	query.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/widl.c:
	widl: Get rid of the SIGSEGV handler, this only makes things harder to debug.

2007-06-06  Misha Koshelev <mk144210@bcm.edu>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Add support for vararg functions in ITypeInfo::Invoke.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Add tests for IDispatch::Invoke of vararg function.

	* tools/widl/write_msft.c:
	widl: Add support for vararg attribute.

2007-05-21  Lei Zhang <thestig@google.com>

	* include/shlobj.h:
	include: Add missing definitions to shlobj.h.

2007-06-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c:
	wined3d: Void functions should not return a value.

2007-06-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c:
	mlang: Implement IMultiLanguage::GetLcidFromRfc1766.

2007-06-06  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/cmd/Ru.rc:
	cmd.exe: Update Russian translation.

2007-06-07  Alexandre Julliard <julliard@winehq.org>

	* programs/winedevice/device.c:
	winedevice: Accept the shutdown service control.

2007-06-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/install.c, dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added support for coexisting different Gecko versions installation.

2007-06-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Get rid of the pBaseVertexIndex parameter to
	IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DDevice_GetBaseVertexIndex to retrieve the base vertex index.

2007-06-06  Markus Goemmel <m.goemmel@compulab.de>

	* dlls/comctl32/listview.c:
	comctl32/listview.c: Ownerdraw font problem during focus change fixed.

2007-06-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Remove outdated comment.

2007-06-06  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: XRenderCompositeText has a problem with 0x0 glyphs, so we'll
	pretend they're 1x1.

2007-06-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Use A instead of W-calls.

2007-06-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/msvcrt/direct.h, include/msvcrt/io.h, include/msvcrt/malloc.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/stddef.h, include/msvcrt/stdio.h,
	  include/msvcrt/stdlib.h, include/msvcrt/string.h,
	  include/msvcrt/sys/stat.h, include/msvcrt/sys/types.h,
	  include/msvcrt/time.h, include/msvcrt/wchar.h:
	include/msvcrt: Make sure that __int64 is properly defined on a 64-bit platform.

2007-06-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Mark service processes as system processes, and exit when all user
	processes are done.

	* programs/explorer/desktop.c:
	explorer.exe: Mark explorer as a system process.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/process.c,
	  include/wine/server_protocol.h, server/process.c, server/process.h,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add support for system processes, that can be signaled to exit when
	all non-system processes are done.

2007-06-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/oleaut.c:
	oleaut32: Fix some typos.

	* dlls/msi/helpers.c, dlls/msi/insert.c, dlls/msi/msi.c,
	  dlls/msi/msipriv.h, dlls/msi/package.c, dlls/msi/query.h,
	  dlls/msi/record.c:
	msi: Constify some variables.

2007-06-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umstream.c:
	urlmon: Don't pass query part of URL to CreateUrlCacheEntryW.

2007-06-05  Lei Zhang <thestig@fido.smo.corp.google.com>

	* dlls/wined3d/surface.c:
	wined3d: Various spelling fixes.

2007-06-05  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Fix potential buffer overflow.

2007-05-23  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/directx.c:
	d3d8: Hold the DLL lock in IDirect3D8 methods.

2007-05-22  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/d3d8_main.c, dlls/d3d8/d3d8_private.h:
	d3d8: Add a dll global critical section.

2007-06-05  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Implement conformant structure handling.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h, tools/widl/typelib.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Represent arrays with type_t.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c:
	widl: Replace get_name with a field reference.

	* include/wine/list.h:
	list.h: Add macros for reverse iteration.

2007-06-06  Francois Gouget <fgouget@free.fr>

	* programs/cmd/directory.c:
	programs/cmd: Add missing '\n' to Wine trace.

	* dlls/winspool.drv/winspool.drv.spec:
	winspool.drv: Fix the AddPortExA/W() export to match the implementation.

2007-06-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/psapi/psapi_main.c:
	psapi: GetWsChanges() calls down to the wrong ntdll function. Found by sparse.

	* dlls/psapi/psapi_main.c:
	psapi: GetPerformanceInfo() calls down to the wrong ntdll function. Found
	by sparse.

2007-06-05  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wineoss.drv/midi.c:
	wineoss.drv: Mark every buffer being added.

2007-06-05  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Implement NTLM support for proxy authentication.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Send the correct callbacks during InternetReadFileExA calls.

2007-06-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_interface.h:
	wined3d: Get rid of the BaseVertexIndex parameter to
	IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead.

	* dlls/wined3d/drawprim.c:
	wined3d: Make sure the color buffer is not modified by depth_blt().

2007-06-05  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Replace WINSPOOL_SHDeleteKeyW with RegDeleteTreeW.

2007-06-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winedos/int31.c:
	winedos: Fix printf format warnings introduced by the TEB change in thread.h.

2007-06-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/crypt.c:
	wintrust/tests: Start of some crypt tests for wintrust.

2007-06-05  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add mapping for STATUS_OBJECT_TYPE_MISMATCH to WSAENOTSOCK.

2007-06-05  Huw Davies <huw@codeweavers.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h:
	riched20: Don't mess with the caret if we don't have focus.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Fixes for the PICTYPE_UNINITIALIZED case.

2007-06-05  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc:
	wordpad: Add missing dots to Open menu item.

2007-06-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Convert the service list to a standard list.

2007-05-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/viewport.c:
	ddraw: Hold the Lock in IDirect3DViewport methods.

	* dlls/ddraw/vertexbuffer.c:
	ddraw: Hold the lock in IDirect3DVertexBuffer methods.

	* dlls/ddraw/texture.c:
	ddraw: Hold the lock in IDirect3DTexture methods.

	* dlls/ddraw/light.c:
	ddraw: Hold the lock in IDirect3DLight methods.

	* dlls/ddraw/palette.c:
	ddraw: Hold the lock in IDirectDrawPalette methods.

2007-06-04  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarRound.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarNeg.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarInt.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarFix.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarNot.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAbs.

2007-06-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c:
	quartz: Don't return S_FALSE for failed connections.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Add a few missing checkGLcall calls.

2007-06-05  Michael Stefaniuc <mstefani@redhat.de>

	* tools/wrc/translation.c:
	wrc: Fix non-ANSI function declaration. Found by sparse.

	* dlls/gphoto2.ds/gphoto2_main.c:
	gphoto2.ds: Fix non-ANSI function declaration. Found by sparse.

	* dlls/capi2032/cap20wxx.c:
	capi2032: Fix non-ANSI function declaration. Found by sparse.

2007-06-04  Michael Stefaniuc <mstefani@redhat.de>

	* include/wingdi.h:
	wingdi.h: Multi-character character constants are implementation specific
	according to the C standard. Use a hex number instead.

2007-06-04  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/qcap/dllsetup.c:
	qcap: Replace DeleteEntireSubKey with RegDeleteTreeW.

2007-06-04  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement SummaryInfo::PropertyCount.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for SummaryInfo::PropertyCount.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/tests/automation.c:
	msi: automation: Implement SummaryInfo::Property, put.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for SummaryInfo::Property, put.

	* dlls/msi/msiserver.idl:
	msi: automation: Add MsiOpenDatabaseMode enum.

	* dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for Installer::OpenDatabase.

	* dlls/msi/automation.c:
	msi: automation: SummaryInfo::Property, remove all specific instances to PIDs.

	* dlls/msi/suminfo.c, dlls/msi/tests/suminfo.c:
	msi: suminfo: Return ERROR_UNKNOWN_PROPERTY as native.

	* dlls/msi/tests/suminfo.c:
	msi/tests: suminfo: Add tests for MsiSummaryInfoGetProperty for unknown
	property values.

2007-06-04  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Rename IWineD3DDeviceImpl_SetBasevertexIndex to
	IWineD3DDeviceImpl_SetBaseVertexIndex.

	* dlls/wined3d/device.c:
	wined3d: TRACE the Color parameter in IWineD3DDeviceImpl_Clear.

2007-06-04  Huw Davies <huw@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Don't release the factory if we failed to get it.

2007-06-04  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, include/winspool.h:
	winspool: Implement AddPortEx.

2007-06-04  Ralf Beck <musical_snake@gmx.de>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Mark every sysex buffer being added.

2007-06-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Rewrite WSAGetOverlappedResult for the new async I/O behavior.

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: Rewrite GetOverlappedResult for the new async I/O behavior.

	* dlls/ntdll/file.c, dlls/ntdll/sync.c, dlls/ws2_32/socket.c,
	  include/thread.h:
	ntdll: Get rid of the num_async_io counter in the TEB.

	* server/thread.c:
	server: Run async I/O APCs from the SIGUSR1 handler.

	* dlls/ws2_32/socket.c:
	ws2_32: Queue a proper user APC also on immediate success in
	WSARecvFrom/WSASendTo.

2007-06-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/protocol.def,
	  server/trace.c:
	server: Remove the extra apc_arg parameter now that user APCs all require the
	same arg as the kernel APC.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c:
	ntdll: Queue an intermediate user APC routine to free the async info.

2007-06-02  Andrey Turkin <andrey.turkin@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/pdh/Makefile.in, dlls/pdh/pdh.spec, dlls/pdh/pdh_main.c:
	pdh: Stub implementation of pdh.dll.

2007-06-03  Jason Edmeades <jason.edmeades@googlemail.com>

	* programs/xcopy/Makefile.in, programs/xcopy/xcopy.c:
	xcopy.exe: Convert from main to wmain.

	* programs/cmd/directory.c:
	cmd.exe: Fix dir /w.
	Use of %* fails when using wvsprintf, so just pad manually,
	but maintain only a single output call.

	* programs/cmd/Makefile.in, programs/cmd/wcmdmain.c:
	cmd.exe: Change from main to wmain.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Fix handling of malformed environment variable expansion.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: Fix 'help garbage' command post-unicode support.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Makefile.in, programs/cmd/Nl.rc,
	  programs/cmd/No.rc, programs/cmd/Pl.rc, programs/cmd/Pt.rc,
	  programs/cmd/Ru.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc,
	  programs/cmd/batch.c, programs/cmd/builtins.c,
	  programs/cmd/directory.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Convert cmd to Unicode.

	* programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Handle command line as Unicode.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Move writing to console into a single function.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/batch.c,
	  programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Move English constants into NLS files.

2007-06-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Make LVM_GETCOLUMNWIDTH query the header control instead
	of using cached data.

2007-06-03  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/tests/mouse.c:
	dinput: Acquire device only if specified window has focus in foreground
	coop level.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Make sure to unacquire device before freeing it.

2007-06-01  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/tests/automation.c:
	msi: automation: Fix SummaryInfo::Property get to conform to native.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for SummaryInfo::Property, get.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl:
	msi: automation: Database::SummaryInformation is a propget, not a method.

	* dlls/msi/automation.c:
	msi: automation: Remove redundant VariantClear(pVarResult).

	* dlls/msi/msiserver.idl:
	msi: msiserver.idl: Maintain spacing as spaces, not tabs.

	* dlls/msi/automation.c:
	msi: automation: Add missing operand for evaluation.

	* dlls/msi/automation.c:
	msi: automation: Remove duplicate error messages on unknown dispid.
	DISP_E_MEMBERNOTFOUND FIXME is already handled in AutomationObject_Invoke.

2007-06-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Add a test for calling DrawIndexedPrimitive with a NULL index buffer.

	* dlls/wined3d/device.c:
	wined3d: Return WINED3DERR_INVALIDCALL in DrawIndexedPrimitive if no index
	buffer is set.

2007-06-01  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/crypt32/store.c:
	crypt32: Replace CRYPT_RecurseDeleteKey with RegDeleteTreeW.

2007-06-01  Glenn Wurster <gwurster@scs.carleton.ca>

	* dlls/sfc/sfc.spec, dlls/sfc_os/sfc_os.c, dlls/sfc_os/sfc_os.spec:
	sfc_os: Add stub implementation for SfcIsKeyProtected.

2007-05-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/propset.c:
	dsound: Disable property sets if hardware doesn't support it.

	* dlls/dsound/buffer.c:
	dsound: Recalculate 3d buffer on SetVolume.

	* dlls/dsound/buffer.c, dlls/dsound/primary.c:
	dsound: Fix buffer caps.

2007-05-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/material.c:
	ddraw: Hold the lock in IDirect3DMaterial methods.

2007-05-26  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/gamma.c:
	ddraw: Hold the lock in IDirectDrawGammaControl methods.

2007-05-20  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/clipper.c:
	ddraw: Hold the lock in IDirectDrawClipper methods.

2007-06-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Hold the lock in IDirect3DDevice methods.

2007-05-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/stateblock.c:
	wined3d: Do not enable GL_APPLE_client_storage for the dummy textures.

2007-05-31  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Pl.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Add file saving dialog.

	* programs/wordpad/wordpad.c:
	wordpad: Convert open file dialog to Unicode.

2007-06-02  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Improve file reading code.

	* programs/wordpad/wordpad.c:
	wordpad: Add file saving support.

2007-05-30  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Store file name globally.

	* programs/wordpad/wordpad.c:
	wordpad: Split code into set_caption function.

2007-06-02  Detlef Riekenberg <wine.dev@web.de>

	* include/winspool.h:
	include/winspool: Add more flags for printer drivers.

2007-06-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/quartz/filtermapper.c:
	quartz: Added some error checking on failure to CreateClassEnumerator.

2007-06-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/local16.c:
	kernel: Fix clearing of memory in LocalReAlloc16(..., LMEM_ZEROMEMORY).

2007-06-01  Francois Gouget <fgouget@free.fr>

	* dlls/ws2_32/socket.c, include/winsock.h, include/winsock2.h,
	  tools/winapi/win32.api:
	ws2_32: Improve the prototypes Win64 compatibility by replacing long with LONG.

2007-05-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Simplify the async shutdown handling, and remove a bunch of no longer
	used code.

	* dlls/ws2_32/socket.c:
	ws2_32: Call the I/O completion routine as a user APC.

	* dlls/ws2_32/socket.c:
	ws2_32: Reimplement WSASendTo along the lines of NtWriteFile.

2007-06-01  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.38.

----------------------------------------------------------------
2007-06-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/tests/menu.c:
	user32: Fix a printf format warning.

2007-05-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/appsearch.c, dlls/msi/classes.c, dlls/msi/cond.y,
	  dlls/msi/custom.c, dlls/msi/msipriv.h:
	msi: Constify some variables.

2007-05-31  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/msg.c:
	user32/test: Add few tests for messages sent from SetForegroundWindow().

2007-06-01  Julien Muchembled <jm@jm10.no-ip.com>

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Fix enumeration of VFW video codecs that are registered in the registry.

2007-05-31  Misha Koshelev <mk144210@bcm.edu>

	* dlls/comctl32/imagelist.c:
	comctl32: imagelist: Fix simultaneous selection of one bitmap into two device
	contexts.

2007-05-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, include/msidefs.h:
	msi: Implement SummaryInfo::Property get.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h:
	msi: Implement Installer::OpenDatabase.

	* dlls/msi/custom.c:
	msi: Add handling for MsiBreak.

2007-05-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix a compilation warning in 64-bit mode.

2007-05-31  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/cmd/No.rc:
	cmd: Update Norwegian Bokmål resources.

	* dlls/shdoclc/No.rc:
	shdoclc: Update Norwegian Bokmål resources.

	* dlls/localui/localui.rc, dlls/localui/ui_No.rc:
	localui: Add Norwegian Bokmål resources.

	* dlls/credui/credui.rc, dlls/credui/credui_No.rc:
	credui: Add Norwegian Bokmål resources.

	* programs/regedit/No.rc:
	regedit: Update Norwegian Bokmål resources.

	* dlls/msi/msi_No.rc:
	msi: Update Norwegian Bokmål resources.

	* dlls/shell32/shell32_No.rc:
	shell32: Update Norwegian Bokmål resources.

2007-06-01  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: gethostbyname("") should work.

2007-05-31  Francois Gouget <fgouget@free.fr>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Improve vtstr() and variantstr().
	- Use a CASE() macro to simplify the vtstr() code and eliminate hard-coded
	variant type values.
	- Update the list of known variant types.
	- If a variant type is unknown, print its numerical value.
	- In variantstr(), hand off all the standard cases to vtstr(), instead of
	(partially) duplicating its code.

2007-05-31  Jeremy White <jwhite@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Mark Proxy Authorization header as a request header, so it actually
	gets sent.

2007-05-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mciavi32/mciavi.c, dlls/mciavi32/mmoutput.c, dlls/mciavi32/wnd.c:
	mciavi32: Fix compilation warnings in 64-bit mode.

	* dlls/midimap/midimap.c, dlls/winmm/driver.c, include/mmddk.h:
	midimap: Fix compilation warnings in 64-bit mode.

	* dlls/mciwave/mciwave.c:
	mciwave: Fix compilation warnings in 64-bit mode.

	* dlls/mciseq/mcimidi.c:
	mciseq: Fix compilation warnings in 64-bit mode.

	* dlls/mcicda/mcicda.c:
	mcicda: Fix compilation warnings in 64-bit mode.

	* dlls/atl/atl_ax.c:
	atl: Fix compilation warnings in 64-bit mode.

2007-05-31  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Remove unneeded cast.

2007-06-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Preserve errno across system calls done in the suspend handler.

	* dlls/ws2_32/socket.c:
	ws2_32: Don't modify last error in async I/O callback.

	* dlls/ws2_32/socket.c:
	ws2_32: Re-enable FD_READ also when returning EWOULDBLOCK from WSARecvFrom().

2007-05-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Pass an lpDx array to the driver if the escapement is non-zero, so that
	the driver has access to the unrotated advance widths.

2007-05-31  Francois Gouget <fgouget@free.fr>

	* dlls/d3drm/tests/vector.c:
	d3drm/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/version/info.c, include/winver.h:
	version: Fix the VerQueryValueA/W() prototypes.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Convert some macros to functions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix the EQ_DOUBLE() and EQ_FLOAT() macros so they work no
	matter how large the values to compare are.
	Use them everywhere.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Remove unneeded parentheses.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Remove redundant semi-colons.

2007-05-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/task.c:
	mshtml: Constify some variables.

2007-05-30  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Add stub implementations for CryptCATAdminAddCatalog and
	CryptCATAdminReleaseCatalogContext.

	* dlls/msi/action.c:
	msi: Implement the WriteEnvironmentStrings standard action.

2007-05-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c:
	wined3d: Keep GL_TEXTURE_2D enabled when using dummy textures.

	* dlls/wined3d/state.c:
	wined3d: Don't mess with nv texture shaders if its not supported.

2007-05-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/direct3d.c:
	ddraw: Hold the lock in IDirect3DX methods.

2007-05-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Check the validy of IDirectDrawSurface::BltFast parameters.

2007-05-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/surface.c:
	ddraw: Hold the lock in IDirectDrawSurface methods.

2007-05-30  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/comctl32/comctl32.spec, dlls/comctl32/commctrl.c,
	  include/commctrl.h:
	comctl32: Add stub for DrawShadowText.

2007-05-30  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Fix build of test on Solaris by renaming a variable.

2007-05-30  Rob Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Set current_structure when writing out structure members to
	ensure the conformance/variance calculation function can find the
	necessary fields in the structures.

	* tools/widl/typegen.c:
	widl: RPC_FC_BIND_PRIMITIVE is a base type so reverse an if statement
	that caused string_of_type to fail and the RPC_FC_BIND_PRIMITIVE code
	not to be executed.

	* tools/widl/parser.y:
	widl: A structure with variance, but without conformance should be a complex
	struct instead of a conformant, varying struct.

2007-05-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Report end of file instead of broken pipe on char devices.

	* dlls/ws2_32/socket.c:
	ws2_32: Allocate iovec buffers statically using MSG_MAXIOVLEN.

	* include/winsock.h:
	include: Fix the definition of MSG_MAXIOVLEN.

	* dlls/ws2_32/socket.c:
	ws2_32: Store the local iosb in the ws2_async structure to avoid a memory
	allocation.

	* dlls/ws2_32/socket.c:
	ws2_32: Reimplement WSARecvFrom along the lines of NtReadFile.

2007-05-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Avoid memory allocations for sockaddr conversion.

2007-05-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Constify some variables.

	* dlls/msacm32.drv/wavemap.c:
	msacm32.drv: Constify some variables.

	* dlls/msacm32/internal.c, dlls/msacm32/wineacm.h:
	msacm32: Constify some variables.

2007-05-25  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/clock/Es.rc, programs/cmd/Es.rc, programs/cmdlgtst/Es.rc,
	  programs/regedit/Es.rc:
	Some Spanish translations updated.

2007-05-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Added implementation of RegDeleteTreeA/W.

2007-05-28  Tim Schwartz <tim@sanityinternet.com>

	* programs/net/Makefile.in, programs/net/net.c:
	net.exe: Add NET START command.

2007-05-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/kernel32/local16.c:
	kernel32: Clear the extra memory in LocalReAlloc16(h, bigger_size,
	LMEM_ZEROINIT).

2007-05-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/caret.c, dlls/user32/dde_misc.c, dlls/user32/dde_private.h,
	  dlls/user32/dde_server.c, dlls/user32/edit.c, dlls/user32/mdi.c,
	  dlls/user32/menu.c, dlls/user32/message.c, dlls/user32/msg16.c,
	  dlls/user32/sysparams.c, dlls/user32/uitools.c,
	  dlls/user32/user_private.h, dlls/user32/win.c, dlls/user32/winproc.c:
	user32: Fix some compilation warnings in 64-bit mode.

	* dlls/kernel32/kernel16_private.h, dlls/kernel32/selector.c:
	kernel32: Fix some compilation warnings in 64-bit mode.

2007-05-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/global16.c, dlls/kernel32/toolhelp.h:
	kernel32: Store global arena base as a pointer.

	* dlls/winedos/Makefile.in, dlls/winedos/dosexe.h, dlls/winedos/int11.c,
	  dlls/winedos/int12.c, dlls/winedos/int17.c, dlls/winedos/int19.c,
	  dlls/winedos/int1a.c, dlls/winedos/int20.c, dlls/winedos/int29.c,
	  dlls/winedos/int2a.c, dlls/winedos/int41.c, dlls/winedos/int4b.c,
	  dlls/winedos/int5c.c, dlls/winedos/interrupts.c:
	winedos: Merge a number of tiny source files into interrupts.c.

	* dlls/dmband/band.c, dlls/dmband/bandtrack.c, dlls/dmband/dmband_main.c,
	  dlls/dmband/dmband_private.h, dlls/dmband/dmutils.c,
	  dlls/dmband/dmutils.h, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/signposttrack.c, dlls/dmime/audiopath.c,
	  dlls/dmime/dmime_main.c, dlls/dmime/dmime_private.h,
	  dlls/dmime/dmutils.c, dlls/dmime/dmutils.h, dlls/dmime/graph.c,
	  dlls/dmime/lyricstrack.c, dlls/dmime/markertrack.c,
	  dlls/dmime/paramcontroltrack.c, dlls/dmime/patterntrack.c,
	  dlls/dmime/performance.c, dlls/dmime/segment.c,
	  dlls/dmime/segmentstate.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/wavetrack.c,
	  dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/debug.c, dlls/dmloader/debug.h,
	  dlls/dmloader/dmloader_main.c, dlls/dmloader/dmloader_private.h,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c,
	  dlls/dmscript/dmscript_main.c, dlls/dmscript/dmscript_private.h,
	  dlls/dmscript/script.c, dlls/dmscript/scripttrack.c,
	  dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_main.c,
	  dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/dmutils.h, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/style.c,
	  dlls/dmstyle/styletrack.c, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/synth.c,
	  dlls/dmsynth/synthsink.c, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/thru.c,
	  dlls/dmusic32/dmusic32_main.c, dlls/dpnhpast/main.c,
	  dlls/dswave/dswave.c, dlls/dswave/dswave_main.c,
	  dlls/dswave/dswave_private.h, include/dls1.h, include/dls2.h,
	  include/dmdls.h, include/dmerror.h, include/dmplugin.h,
	  include/dmusbuff.h, include/dmusicc.h, include/dmusicf.h,
	  include/dmusici.h, include/dmusics.h:
	dmusic: Fix license headers that mistakenly use GPL instead of LGPL.
	Confirmed by the original author and the major contributors.

2007-05-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Fix compilation warnings in 64-bit mode.

	* dlls/gdi32/enhmfdrv/objects.c, dlls/gdi32/font.c, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/mfdrv/text.c, dlls/gdi32/printdrv.c, dlls/gdi32/region.c:
	gdi32: Fix compilation warnings in 64-bit mode.

2007-05-30  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix the references in function descriptions returned for dual
	IDispatch interfaces.
	Do this by changing references from other interfaces (and possibly other
	typelibs) to uniquely identify them.
	Add special handling to GetRefTypeInfo to cope with this.

	* include/wincred.h:
	include: Fix a typo in wincred.h.
	The Attribute field of the CREDENTIALA/W structs should instead be
	Attributes.

	* dlls/oleaut32/typelib.c:
	oleaut32: For automatic-value-getting in ITypeInfo::Invoke, it doesn't matter
	what flag(s) the function was executed with, just what type of function is
	being invoked.

2007-05-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/dc.c, dlls/gdi32/gdi_private.h, dlls/winex11.drv/dce.c,
	  include/wine/wingdi16.h:
	gdi32: Make SetDCHook 64-bit safe.

2007-05-29  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt: Fix typo.

2007-05-29  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* .gitignore, programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add program icon.

2007-05-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/custom.c, dlls/msi/msipriv.h:
	msi: Perform a forced reboot if a custom action returns ERROR_INSTALL_SUSPEND.

	* dlls/msi/package.c:
	msi: Set the MsiNTProductType property.

	* dlls/msi/files.c:
	msi: Fall back to checking if the cab exists if the volume name doesn't match.

	* dlls/msi/files.c:
	msi: Create the destination directory if it doesn't exist when duplicating files.

2007-05-28  Rob Shearman <rob@codeweavers.com>

	* server/process.c:
	server: When starting a new process, use the token from the calling process,
	if one exists.

	* server/security.h, server/token.c:
	server: Move most of the duplicate_token request to a new function,
	token_duplicate, to enable the code to be used inside wineserver.

2007-05-27  Misha Koshelev <mk144210@bcm.edu>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Remove duplicate code.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Handle default DDE application names.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add tests for default DDE application name.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Fix execute_from_key to conform to native behavior.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add tests for ShellExecute DDE behavior.

2007-05-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Remove the fixme about MB_USEGLYPHCHARS.

	* include/wine/unicode.h, libs/wine/c_037.c, libs/wine/c_10000.c,
	  libs/wine/c_10006.c, libs/wine/c_10007.c, libs/wine/c_10029.c,
	  libs/wine/c_1006.c, libs/wine/c_10079.c, libs/wine/c_10081.c,
	  libs/wine/c_1026.c, libs/wine/c_1250.c, libs/wine/c_1251.c,
	  libs/wine/c_1252.c, libs/wine/c_1253.c, libs/wine/c_1254.c,
	  libs/wine/c_1255.c, libs/wine/c_1256.c, libs/wine/c_1257.c,
	  libs/wine/c_1258.c, libs/wine/c_20127.c, libs/wine/c_20866.c,
	  libs/wine/c_21866.c, libs/wine/c_28591.c, libs/wine/c_28592.c,
	  libs/wine/c_28593.c, libs/wine/c_28594.c, libs/wine/c_28595.c,
	  libs/wine/c_28596.c, libs/wine/c_28597.c, libs/wine/c_28598.c,
	  libs/wine/c_28599.c, libs/wine/c_28600.c, libs/wine/c_28603.c,
	  libs/wine/c_28604.c, libs/wine/c_28605.c, libs/wine/c_28606.c,
	  libs/wine/c_424.c, libs/wine/c_437.c, libs/wine/c_500.c,
	  libs/wine/c_737.c, libs/wine/c_775.c, libs/wine/c_850.c,
	  libs/wine/c_852.c, libs/wine/c_855.c, libs/wine/c_856.c,
	  libs/wine/c_857.c, libs/wine/c_860.c, libs/wine/c_861.c,
	  libs/wine/c_862.c, libs/wine/c_863.c, libs/wine/c_864.c,
	  libs/wine/c_865.c, libs/wine/c_866.c, libs/wine/c_869.c,
	  libs/wine/c_874.c, libs/wine/c_875.c, libs/wine/c_878.c,
	  libs/wine/cpmap.pl, libs/wine/mbtowc.c:
	libwine: Add support for glyph chars mapping in OEM codepage tables.

	* dlls/wininet/netconnection.c:
	wininet: Fixed compilation without SSL.

2007-05-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: There is no need to make slash conversion in BindToStorage as URL is
	already canonized in the constructor.

2007-05-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winebuild/utils.c:
	winebuild: Mark builtin DLLs as IMAGE_FILE_LARGE_ADDRESS_AWARE on a 64-bit
	platform.

2007-05-28  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Add a new NETCON_query_data_available function.
	Use it to implement the behaviour where InternetReadFileExA does a
	synchronous request if the data is available and asynchronous otherwise.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Don't close the connection if the caller passes in zero for the number
	of bytes to be read.
	Only close the connection when the bytes read equals the content length.
	Fixup HTTP_DrainContent, which relied on the previous incorrect
	behaviour to instead close connections with no content length manually.

2007-05-28  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/tests/sip.c, dlls/ddraw/utils.c,
	  dlls/msi/tests/automation.c, dlls/msxml3/tests/xmlelem.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c,
	  dlls/riched20/tests/editor.c:
	Assorted spelling fixes.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/d3d8/tests/visual.c:
	d3d8/tests: Fix the Visual C++ double to float conversion warnings.

	* dlls/psapi/tests/psapi_main.c:
	psapi/tests: Fix a signed/unsigned int mismatch.

	* dlls/gdi32/tests/bitmap.c:
	gdi32/tests: Fix a signed/unsigned int mismatch.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Remove an inappropriate const qualifier.

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: There is no strncasecmp() on Windows. So use CompareString()
	instead.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Fix a Visual C++ double to float conversion warning.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Fix signed/unsigned and 32/64bit issues with the wiredatalen
	parameter.

2007-05-25  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Cope with non-nul-terminated header strings being passed to
	HttpSendRequestW.

	* dlls/wininet/http.c:
	wininet: Fix basic authentication by putting Basic directing into the scheme
	field, as the pszAuthValue can have an optional realm string appended.

2007-05-27  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: Fix compilation with Visual C++ 2005.

2007-05-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/schannel/tests/main.c:
	schannel: Use FIELD_OFFSET instead of offsetof.

2007-05-27  Francois Gouget <fgouget@free.fr>

	* dlls/schannel/lsamode.c, dlls/schannel/tests/main.c, include/ntsecpkg.h:
	schannel: Fix the name of the SetContextAttributes field of
	SECPKG_FUNCTION_TABLE.

	* dlls/schannel/tests/main.c, include/ntsecpkg.h:
	schannel: The PSDK defines no SECPKG_FUNCTION_TABLE_SIZE_* macro.

	* dlls/mshtml/tests/htmldoc.c, include/shlguid.h:
	include: The PSDK does not define the DEFINE_SHLGUID() macro anymore.

	* dlls/shlwapi/tests/clsid.c:
	shlwapi/tests: The PSDK does not define IID_IDelayedRelease anymore.

	* dlls/shell32/tests/shellpath.c:
	shell32/tests: With recent PSDKs, CSIDL_MYDOCUMENTS is a synonym for
	CSIDL_PERSONAL. So define our own constant.

	* dlls/urlmon/tests/misc.c, include/winerror.h, include/winnt.h:
	In the PSDK HRESULT_FROM_WIN32() is now an inline function, and it is
	__HRESULT_FROM_WIN32() which is a macro.

	* dlls/ddraw/tests/dsurface.c, include/ddraw.h:
	ddraw: Fix the name of DDSPD_IUNKNOWNPOINTER.

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: The PSDK does not define ListView_InsertItemA() so don't use it.

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: src[i] is a char so there is no point trying to stuff 0xcafedead
	into it.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix compilation with Visual C++ 2005.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: We need NTDDI_VERSION >= NTDDI_WINXPSP1 to get
	SEE_MASK_NOZONECHECKS with the PSDK.

	* dlls/user32/tests/msg.c:
	user32/tests: SWP_STATECHANGED is an undocumented flag so define it
	ourselves. Fixes compilation with the PSDK.

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Fix a signed/unsigned int mismatch.

	* dlls/msi/tests/automation.c:
	msi/tests: Fix a signed/unsigned int mismatch.

	* dlls/kernel32/tests/toolhelp.c:
	kernel32/tests: Fix a signed/unsigned int mismatch.

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Fix a signed/unsigned int mismatch.

2007-05-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/clipboard.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/xdnd.c,
	  dlls/winex11.drv/xrender.c:
	winex11.drv: Exclude unused headers.

	* dlls/wininet/dialogs.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/urlcache.c, dlls/wininet/utility.c:
	wininet: Exclude unused headers.

	* dlls/wineps.drv/bitblt.c, dlls/wineps.drv/builtin.c,
	  dlls/wineps.drv/download.c, dlls/wineps.drv/driver.c,
	  dlls/wineps.drv/graphics.c, dlls/wineps.drv/ppd.c,
	  dlls/wineps.drv/ps.c, dlls/wineps.drv/text.c,
	  dlls/wineps.drv/type1.c, dlls/wineps.drv/type42.c:
	wineps.drv: Exclude unused headers.

2007-05-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/msxml3/msxml_private.h:
	msxml3: Fixed compilation without libxml.

2007-05-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Constify some variables.

	* dlls/mscms/handle.c, dlls/mscms/icc.c, dlls/mscms/mscms_priv.h,
	  dlls/mscms/profile.c:
	mscms: Constify some variables.

	* dlls/msdmo/dmoreg.c:
	msdmo: Constify some variables.

2007-05-25  Evan Stade <estade@evanstade.smo.corp.google.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/gdiplus/Makefile.in, dlls/gdiplus/gdiplus.c,
	  dlls/gdiplus/gdiplus.spec:
	gdiplus: Added stub implementation of gdiplus.dll.

2007-05-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Add support for loading and drawing metafiles.

	* dlls/gdi32/enhmetafile.c, dlls/gdi32/tests/metafile.c:
	gdi32: Perform consistency checks when loading an EMF, add a test case.

2007-05-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ddraw/surface.c:
	ddraw: Do not crash when Clipper is NULL.

	* dlls/localui/tests/localui.c:
	localui/tests: Handle different results from XP.

2007-05-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Fix stupid mistake.

2007-05-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mpr/pwcache.c, dlls/mpr/wnet.c:
	mpr: Constify some variables.

	* dlls/mciwave/mciwave.c:
	mciwave: Constify a variable.

2007-05-26  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Pass context to InitializeSecurityContext in second parameter.
	Otherwise, the call will now fail with SEC_E_INVALID_HANDLE.

	* dlls/setupapi/misc.c:
	setupapi: Add a FIXME in SetupCopyOEMInfW for when we should be copying a
	catalog file.

2007-05-26  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Make WS2_send trace more readble.

	* dlls/secur32/ntlm.c:
	secur32: Downgrade WARN to TRACE, fix another TRACE.

2007-05-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/lolvldrv.c, dlls/winmm/message16.c, dlls/winmm/mmsystem.c,
	  dlls/winmm/winmm.c:
	winmm: Exclude unused headers.

	* dlls/ws2_32/async.c, dlls/ws2_32/protocol.c:
	ws2_32: Exclude unused headers.

2007-05-24  Juan Lang <juan.lang@gmail.com>

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Remove wrong test and parameter check.

2007-05-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/cabinet/fdi.c, dlls/comctl32/animate.c, dlls/comctl32/comboex.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/flatsb.c, dlls/comctl32/header.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/ipaddress.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/nativefont.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/tests/datetime.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/listview.c, dlls/comctl32/tests/monthcal.c,
	  dlls/comctl32/tests/mru.c, dlls/comctl32/tests/msg.c,
	  dlls/comctl32/tests/subclass.c, dlls/comctl32/tests/tab.c,
	  dlls/comctl32/tests/updown.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/comdlg32/colordlg.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/printdlg.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c, dlls/gdi32/opengl.c,
	  dlls/gdi32/palette.c, dlls/imm32/imm.c,
	  dlls/kernel32/tests/environ.c, dlls/mciavi32/wnd.c,
	  dlls/msacm32/format.c, dlls/mshtml/olewnd.c, dlls/mshtml/task.c,
	  dlls/msi/dialog.c, dlls/msvfw32/mciwnd.c, dlls/mswsock/mswsock.c,
	  dlls/ole32/compobj.c, dlls/ole32/ole2.c, dlls/oleacc/main.c,
	  dlls/oledlg/pastespl.c, dlls/riched20/editor.c, dlls/rpcrt4/cproxy.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/schannel/tests/main.c,
	  dlls/setupapi/queue.c, dlls/setupapi/virtcopy.c,
	  dlls/shdocvw/shdocvw_main.c, dlls/shell32/brsfolder.c,
	  dlls/shell32/shell.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlmenu.c, dlls/shell32/shlview.c,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/user32/combo.c,
	  dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/dde_server.c, dlls/user32/dialog.c, dlls/user32/edit.c,
	  dlls/user32/hook.c, dlls/user32/input.c, dlls/user32/listbox.c,
	  dlls/user32/mdi.c, dlls/user32/menu.c, dlls/user32/message.c,
	  dlls/user32/nonclient.c, dlls/user32/scroll.c, dlls/user32/spy.c,
	  dlls/user32/static.c, dlls/user32/tests/dde.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/listbox.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/win.c,
	  dlls/user32/winproc.c, dlls/winedos/dosvm.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winmm/joystick.c,
	  dlls/winmm/tests/mci.c, dlls/winmm/winmm.c,
	  dlls/winspool.drv/tests/info.c, dlls/wintab32/manager.c,
	  dlls/ws2_32/async.c, dlls/ws2_32/socket.c, include/basetsd.h,
	  programs/explorer/desktop.c, programs/regedit/framewnd.c,
	  programs/wineconsole/user.c:
	wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility.

2007-05-24  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Use XRenderCompositeText instead of XRenderCompositeString.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Merge some common code.

2007-05-25  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Simplify some socket tests by adding a function that generates a pair
	of connected sockets.

2007-05-23  Ralf Beck <musical_snake@gmx.de>

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Add missing offset of pitch bender in midi input.

	* dlls/winealsa.drv/midi.c:
	winealsa.drv: Add midi realtime and midi common messages on midi input.

2007-05-24  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix NTLM's InitializeSecurityContextA/W to be flexible with the index
	of the token buffer in both the input and output buffer descriptions.

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Don't set the output buffer type in NTLM's IntializeSecurityContextA/W.

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Make the NTLM SSP cope with a NULL phCredential parameter when
	InitializeSecurityContext is called more than once.

	* dlls/secur32/wrapper.c:
	secur32: Fix the wrapper InitializeSecurityContextA/W functions to handle
	phContext and phNewContext parameters being optional for some SSPs.

2007-05-24  James Hawkins <truiken@gmail.com>

	* dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/xmldoc.c:
	msxml3: Add tests for IXMLDocument.

	* dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/xmlelem.c:
	msxml3: Add tests for IXMLElement and IXMLElementCollection.

	* dlls/msxml3/Makefile.in, dlls/msxml3/factory.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/xmldoc.c:
	msxml3: Add initial implementation of IXMLDocument.

	* dlls/msxml3/Makefile.in, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/xmlelem.c:
	msxml3: Add initial implementation of IXMLElement and IXMLElementCollection.

2007-05-23  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: SLTG references are only unique at the typeinfo level, so convert
	them to be unique to the typelib.

2007-05-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Statically initialize static lists and critical sections.

2007-05-24  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Allow types that reference themselves.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Shrink type_t structure.

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h, tools/widl/typegen.c:
	widl: Handle pointers in unions.
	Unify write_pointers with write_embedded_types, and handle pointers in
	unions.  Includes tests.

	* dlls/rpcrt4/tests/server.c:
	rpcrt4: Fix test typo.

2007-05-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/buffer.c, dlls/dsound/tests/dsound.c:
	dsound: Block align SetCurrentPosition and add test for it.

2007-05-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Add the ability to deformat the component's source.

	* dlls/msi/format.c:
	msi: Remove a misleading ERR, as this fails if a file doesn't exist, which
	is common.

2007-05-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/view.c:
	mshtml: Added missing WINAPI in window proc.

	* dlls/mshtml/nsio.c:
	mshtml: Fixed AsyncOpen implementation for channels without associated document.

2007-05-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/tests/localui.c:
	localui/tests: Add tests for AddPortUI.

2007-05-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Create fake dll for iexplore.exe.

2007-05-24  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/secur32.c, dlls/secur32/tests/secur32.c:
	secur32: Fix the dwVersion field in the security function tables returned by
	InitSecurityInterfaceA/W.

2007-05-21  Nigel Liang <ncliang@gmail.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec, include/shlwapi.h:
	shlwapi: Stub implementation for SHSetTimerQueueTimer.

2007-05-24  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/utils.c:
	winebuild: Set the IMAGE_FILE_EXECUTABLE_IMAGE flag for all modules.

2007-05-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winedbg/be_x86_64.c:
	winedbg: Fix a problem revealed by compilation in 64-bit mode.

	* dlls/user32/tests/win.c:
	user32/tests: Fix a problem revealed by compilation in 64-bit mode.

	* dlls/kernel32/tests/loader.c:
	kernel32/tests: Fix a problem revealed by compilation in 64-bit mode.

	* dlls/comctl32/tests/datetime.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/listview.c, dlls/comctl32/tests/monthcal.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/trackbar.c,
	  dlls/comctl32/tests/treeview.c, dlls/comctl32/tests/updown.c:
	comctl32/tests: Fix some problems revealed by compilation in 64-bit mode.

2007-05-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shell32_Nl.rc:
	shell32: Update Dutch resource.

2007-05-24  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msi/msipriv.h:
	msi: A signed 1-bit bitfield doesn't make much sense; use unsigned.

2007-05-23  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/lib.c:
	winedump: '$' isn't a valid character in an identifier regardless that gcc
	accepts it without warning.

2007-05-23  Rob Shearman <rob@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Implement ConvertINetString.

	* dlls/hlink/link.c:
	hlink: Improve the loading of hlinks.

	* dlls/hlink/link.c, dlls/hlink/tests/hlink.c:
	hlink: Improve the saving of hlinks by documenting the unknown header values
	and saving out more data.
	Add tests for saving hlinks with different properties.

	* dlls/shlwapi/url.c:
	shlwapi: Add a slash to the URL if there is no path component.

	* dlls/urlmon/umon.c:
	urlmon: The persisted version of URL monikers should be size of URL
	including nul-terminating character (4-bytes), followed by the URL
	string including nul-terminating character.

	* dlls/urlmon/umon.c:
	urlmon: Fix a typo in URLMonikerImpl_Save.
	The data in This->URLName should be written out, not the pointer
	followed by garbage.

	* dlls/hlink/hlink_main.c:
	hlink: Fix HlinkCreateFromString to create a URL moniker if the input target
	is a URL.

2007-05-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/xcopy/Ko.rc, programs/xcopy/rsrc.rc:
	xcopy: New Korean resource.

2007-05-23  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c:
	dsound: Add missing interface ID.

2007-05-22  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/mpr/wnet.c:
	mpr: Small fixes to WNetGetConnection.
	Convert unc\server\share to \\server\share and be more tolerant to null
	pointers if only length is requested.

2007-05-22  Francois Gouget <fgouget@free.fr>

	* include/wine/port.h:
	port.h: Issue an error if port.h is included after the regular Wine headers.

2007-05-22  Thomas Spear <Speeddymon@gmail.com>

	* tools/wine.inf:
	wine.inf: Add uninstall key.

2007-05-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/quartz/filtergraph.c:
	quartz: ppinsplitter might be used uninitialized (Coverity).

	* dlls/ntdll/sec.c:
	ntdll: Initialize pointers to NULL (Coverity).

2007-05-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/file.c, dlls/kernel32/locale.c, dlls/kernel32/lzexpand.c,
	  dlls/kernel32/process.c, dlls/kernel32/pthread.c,
	  dlls/kernel32/resource.c, dlls/kernel32/sync.c,
	  dlls/kernel32/syslevel.c, dlls/kernel32/thread.c:
	kernel32: Fix compilation warnings in 64-bit mode.

	* dlls/ntdll/critsection.c, dlls/ntdll/heap.c, dlls/ntdll/loader.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/process.c, dlls/ntdll/reg.c,
	  dlls/ntdll/rtl.c, dlls/ntdll/sec.c, dlls/ntdll/server.c,
	  dlls/ntdll/sync.c, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Fix compilation warnings in 64-bit mode.

	* tools/widl/typegen.c:
	widl: Fix compilation warnings in 64-bit mode.

	* dlls/ntdll/process.c, include/winternl.h:
	winternl.h: Make the fields of the PROCESS_BASIC_INFORMATION structure use
	same type width as a PSDK one.

	* include/basetsd.h:
	basetsd.h: Fix a typo in the parameter name.

2007-05-23  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winscard/Makefile.in, dlls/winscard/rsrc.rc,
	  dlls/winscard/winscard.c, dlls/winscard/winscard.spec:
	winscard: Small initial stub implementation.

2007-05-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/vartype.c:
	oleau32: Fix one entry overflow (Coverity).

2007-05-22  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_active.c:
	winedbg: Only check for break/watch points on first chance exceptions.

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c:
	winedbg: Show some info for msvcrt C++ exceptions.

	* dlls/ntdll/exception.c, dlls/ntdll/tests/exception.c:
	ntdll: Fix up instruction pointer in context inside raise_exception.

2007-05-22  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/git.c, dlls/ole32/tests/marshal.c:
	ole32: Remove spurious AddRef of returned object on retrieval of an interface
	from the global interface table.

	* dlls/ole32/git.c, dlls/ole32/tests/marshal.c:
	ole32: Allow the getting of different interfaces from the global interface
	table than that with what the object was registered with.

	* dlls/ole32/tests/marshal.c:
	ole32: Add more tests for global interface table functions.

	* dlls/ole32/git.c:
	ole32: Fix some races in the global interface table implementation.
	Fix a race between RevokeInterfaceFromGlobal and GetInterfaceFromGlobal
	by only using the entry inside the critical section.
	Fix a race between two GetInterfaceFromGlobal by cloning the stream,
	instead of using it and setting the current position back to zero.

	* dlls/ole32/ole32.spec:
	ole32: Add spec entry for CoRegisterSurrogateEx.

2007-05-22  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/msiserver.idl:
	msi: automation: Append copyright notice.

2007-05-21  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winhelp/hlpfile.c, programs/winhelp/macro.c,
	  programs/winhelp/macro.lex.l:
	winhelp: Fix some comparisons between signed and unsigned.

2007-05-22  Kolbjoern Fredheim <hightower@tregt.net>

	* dlls/wined3d/surface.c:
	wined3d: Implemented converting X1R5G5B5 format to R5G5B5A1 to emulate
	color-keying.

2007-05-21  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/marshal.c:
	ole32: Remove a useless trace.
	Remove an incorrect comment.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: The identity functions can be used from apartments other than the one
	the proxy was unmarshaled into.
	In this case, don't use the cached This->remunk and don't cache the
	unmarshaled object in This->remunk.

	* dlls/ole32/marshal.c:
	ole32: Make proxy_manager_get_remunknown AddRef the return IRemUnknown object.
	Fix up the callers to release the returned IRemUnknown object.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: Handle MSHLFLAGS_TABLEWEAK and MSHLFLAGS_TABLESTRONG when marshaling
	a proxy.
	Add tests for this behaviour.

2007-05-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/xcopy/Pl.rc, programs/xcopy/rsrc.rc:
	xcopy: Add Polish translation.

2007-05-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/mixer.c,
	  dlls/winealsa.drv/wavein.c, dlls/winealsa.drv/waveout.c:
	winealsa.drv: Exclude unused headers.

2007-05-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/serialui/tests/confdlg.c:
	serialui/tests: Remove unused string.

	* dlls/localui/tests/Makefile.in, dlls/localui/tests/localui.c:
	localui/tests: Add tests for ConfigurePortUI.

2007-05-21  Francois Gouget <fgouget@codeweavers.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: When operating on a closed pipe, read() should return 0, not -1.
	Add tests to make sure read() and fread() work right on closed pipes.

	* dlls/msvcrt/tests/file.c, include/msvcrt/sys/stat.h:
	msvcrt: Remove the S_ISXXX() macros as they are not present in the Visual C++
	headers.

	* dlls/msvcrt/tests/printf.c:
	msvcrt/tests: When compiling with Visual C++ 2005, one must define
	_CRT_NON_CONFORMING_SWPRINTFS otherwise swprintf() takes an extra parameter.

2007-05-22  Alexandre Julliard <julliard@winehq.org>

	* server/timer.c:
	server: Don't allow a waitable timer to be set to expire in the past.

	* dlls/ntdll/file.c, dlls/wininet/internet.c:
	Fix a couple of overflowing heap allocations revealed by the previous change.

	* dlls/kernel32/tests/heap.c, dlls/ntdll/heap.c:
	ntdll: Avoid overflows in heap allocations. Based on a patch by Rob Shearman.

2007-05-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Hold the dll lock in IDirectDraw methods.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Hold the lock in creation functions.

2007-05-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Make the ddraw list lock a global dll lock.

2007-05-20  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Return error on NULL service name to GetServiceDisplayNameA/W.

2007-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/thread.c, include/winbase.h, include/winternl.h:
	kernel32: Fix the size of ThreadAffinityMask to match PSDK.

	* include/basetsd.h:
	basetsd.h: Add a bunch of PSDK compatible macros/inline functions for 64-bit
	safe type conversions.

2007-05-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/reg.c,
	  dlls/ntoskrnl.exe/ntoskrnl.exe.spec, include/winternl.h:
	ntdll: Implement RtlWriteRegistryValue and forward ntoskrnl to it.

2007-05-21  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Implement basic non-proxy authentication.

	* dlls/wininet/Makefile.in, dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Add support for SSPI authentication for HTTP.

2007-05-20  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMCreateColorRGB.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMCreateColorRGBA.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetAlpha.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetBlue.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetGreen.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c,
	  include/d3drmdef.h:
	d3drm: Implement D3DRMColorGetRed.

2007-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Synchronize debug output between X11DRV_KeyEvent and
	X11DRV_ToUnicodeEx.

	* include/wine/debug.h:
	include/wine/debug.h: Fix compilation warning in 64-bit mode.

	* tools/winedump/pdb.c:
	winedump: Fix compilation warnings in 64-bit mode.

	* tools/winebuild/res16.c:
	winebuild: Fix compilation warnings in 64-bit mode.

	* tools/widl/proxy.c, tools/widl/typegen.c:
	widl: Fix compilation warnings in 64-bit mode.

2007-05-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c, dlls/uxtheme/property.c:
	uxtheme: Exclude unused headers.

	* dlls/version/info.c, dlls/version/resource.c, dlls/version/ver16.c:
	version: Exclude unused headers.

	* dlls/vmm.vxd/vmm.c:
	vmm.vxd: Exclude unused headers.

2007-05-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/text.c, dlls/user32/uitools.c, dlls/user32/user_main.c,
	  dlls/user32/winproc.c:
	user32: Exclude unused headers.

	* dlls/user32/mdi.c, dlls/user32/msgbox.c, dlls/user32/nonclient.c,
	  dlls/user32/property.c, dlls/user32/spy.c:
	user32: Exclude unused headers.

	* dlls/user32/dde_server.c, dlls/user32/defwnd.c, dlls/user32/exticon.c,
	  dlls/user32/focus.c, dlls/user32/lstr.c:
	user32: Exclude unused headers.

	* dlls/user32/combo.c, dlls/user32/comm16.c, dlls/user32/cursoricon.c,
	  dlls/user32/dde_client.c, dlls/user32/dde_misc.c:
	user32: Exclude unused headers.

2007-05-18  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  dlls/rpcrt4/tests/server_defines.h, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Lay framework for unions with simple unions working.

	* tools/widl/typegen.c:
	widl: Replace erroneously removed current_func assignment.
	This accidentally came out and should not have.  Thanks to Eric Kohl
	for pointing this out to me.

2007-05-21  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/crypt32/store.c, dlls/crypt32/tests/cert.c:
	crypt32: Fix CertAddCertificateContextToStore when called with
	CERT_STORE_ADD_USE_EXISTING.

2007-05-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/comm.c:
	kernel32: Skip modem status tests if GetModemStatus failed.

2007-05-20  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/registry.c, dlls/msi/tests/automation.c:
	msi: Make MsiEnumProducts enumerate products, not features.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Test Installer::Products before and after InstallProduct,
	check product is not/is installed.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Installer::InstallProduct, remove a registry key set
	by Wine but not native.

2007-05-20  Francois Gouget <fgouget@free.fr>

	* dlls/user32/tests/menu.c:
	user32/tests: Fix compilation with gcc 2.95.

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c, include/d3d8types.h,
	  include/d3d9types.h:
	direct3d: Remove misspelled constants as they exist correctly spelled.

	* dlls/ntdll/thread.c:
	ntdll: Fix compilation on systems that don't support nameless unions.

2007-05-19  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/install.c:
	advpack/tests: Don't hardcode the system directory.

2007-05-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Fix hosting in main apartments.
	The recently introduced code had a bug where it passed the wrong
	values into apartment_findfromtype to find the main apartment. Since
	this is now the only way the function is used, fix this bug by
	changing apartment_findfromtype to apartment_findmain, which only
	finds the main apartment.

2007-05-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellstring.c, dlls/shell32/shlfsbind.c,
	  dlls/shell32/shlmenu.c, dlls/shell32/shv_bg_cmenu.c,
	  dlls/shell32/shv_item_cmenu.c:
	shell32: Exclude unused headers.

	* dlls/shell32/iconcache.c, dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shell32_main.c, dlls/shell32/shellreg.c:
	shell32: Exclude unused headers.

	* dlls/shell32/autocomplete.c, dlls/shell32/brsfolder.c,
	  dlls/shell32/changenotify.c, dlls/shell32/debughlp.c,
	  dlls/shell32/folders.c:
	shell32: Exclude unused headers.

	* dlls/setupapi/fakedll.c, dlls/setupapi/query.c,
	  dlls/setupapi/setupx_main.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/virtcopy.c:
	setupapi: Exclude unused headers.

	* dlls/secur32/thunks.c, dlls/secur32/util.c:
	secur32: Exclude unused headers.

2007-05-18  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Fix return value to indicate error when NULL string is passed in.

2007-05-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/query.c:
	setupapi: Don't require a valid version section for INF_STYLE_OLDNT files.

2007-05-18  Michael Karcher <karcher@physik.fu-berlin.de>

	* dlls/user32/msg16.c:
	user32: Reduce the PeekMessage timeout to zero for USER16_AlertableWait.

2007-05-18  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement StringList::_NewEnum.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h:
	msi: automation: Generalize list implementation.
	Same structures and functions can be used for both StringList and RecordList.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for StringList::_NewEnum.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Fix Installer_ProductInfo ok message to correctly
	state function.

2007-05-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/element.c:
	msxml3: Implement IXMLDOMElement::getElementsByTagName.

2007-05-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add tests for XPath queries with namespaces.

	* dlls/msxml3/queryresult.c, dlls/msxml3/tests/domdoc.c:
	msxml3: For queries the get_item should change the current position.

2007-05-18  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Recurse through the impltype list so that dispinterfaces get the
	correct parents.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix CreateDispTypeInfo to store the correct number of functions.

2007-05-17  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: non-dual dispinterfaces should be marshaled via IDispatch.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Move the proxy thunk creation code to a separate function.

	* dlls/oleaut32/tests/typelib.c:
	oleaut32: Test for interface that derives from IUnknown.

	* dlls/oleaut32/tests/tmarshal.idl, dlls/oleaut32/tests/typelib.c:
	oleaut32: Tests for more 'syntax 2' dispinterfaces.

2007-05-14  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: GetRefTypeOfImplType(0) on TKIND_DISPATCH typeinfos should always
	return an href to IDispatch.

2007-05-11  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix return value in the element not found case.

	* dlls/oleaut32/tests/tmarshal.idl, dlls/oleaut32/tests/typelib.c:
	oleaut32: Typelib inheritance tests.

2007-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c,
	  dlls/ntdll/version.c:
	ntdll: Setup the shared user data structure at 0x7ffe0000.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Implemented a couple of time-related APIs.

	* dlls/kernel32/instr.c, dlls/kernel32/kernel32.spec,
	  dlls/kernel32/kernel_private.h, dlls/kernel32/wowthunk.c,
	  dlls/ntoskrnl.exe/ntoskrnl.c:
	ntoskrnl.exe: Reuse the kernel32 instruction emulation support for kernel-mode
	drivers.

2007-05-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/queryresult.c,
	  dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/domdoc.c:
	msxml3: Improve the XPath queries handling.

2007-05-17  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Change SUCCEEDED(hr) to more specific hr == S_OK.

	* dlls/msi/script.c:
	msi: script: Change all tabs to spaces to conform to msi formatting.

	* dlls/msi/automation.c:
	msi: automation: Change all tabs to spaces to conform to msi formatting.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Check for NULL source string before calling lstrcpyW.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Change non-const LPCWSTR parameters to LPWSTR.

2007-05-17  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix reading from an HGLOBALStreamImpl with an invalid HGLOBAL.
	Add tests that show the strange behaviour of IStream_Read returning S_OK
	instead of an error code.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/tests/marshal.c:
	ole32: Create host apartments to enable isolation of objects of incompatible
	threading models.
	There should be one host apartment per apartment. Existing apartments
	should not be re-used, except in the case of the main apartment.

2007-05-17  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Trying to blend an image without a mask causes problem, especially
	if the background is white.

2007-05-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/queue.c, include/setupapi.h:
	setupapi: Add a partial implementation for SetupScanFileQueue{A, W}.

	* dlls/setupapi/query.c:
	setupapi: Correctly handle an empty filename in SetupGetSourceFileLocationA.

	* dlls/setupapi/queue.c, dlls/setupapi/setupapi.spec:
	setupapi: Implement pSetup{Get, Set}QueueFlags.

2007-05-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/codepage.c:
	kernel32: Add an overflow test for MultiByteToWideChar.

	* dlls/kernel32/tests/codepage.c:
	kernel32: Print last error value as unsigned, printing error in hex is useless.

2007-05-18  Rob Shearman <rob@codeweavers.com>

	* server/token.c:
	server: Add the logon SID to the default admin token's groups.

2007-05-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/editor.c, dlls/riched20/txtsrv.c:
	riched20: Exclude unused headers.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Exclude unused header.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Exclude unused headers.

2007-05-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/oleaut32/ungif.c:
	oleaut32: Don't mix allocation routines.

2007-05-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Launch winedevice.exe when asked to start a kernel driver service.

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/winedevice/Makefile.in, programs/winedevice/device.c:
	winedevice: Add a service process that loads and runs a kernel driver.

2007-05-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/shlexec.c:
	shell32: Avoid potential 1 byte overflow.

2007-05-11  Jeff Latimer <lats@yless4u.com.au>

	* .gitignore, include/Makefile.in, include/netfw.idl:
	hnetcfg: Add netfw.idl - Network Firewall interface.

	* .gitignore, include/Makefile.in, include/icftypes.idl:
	hnetcfg: Define icftypes.idl.

2007-05-17  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::ProductInfo.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Return appropriate values for empty MsiProductInfo parameters.

	* dlls/msi/tests/msi.c:
	msi/tests: Add test for empty MsiGetProductInfo parameters not referencing
	default registry values.

2007-05-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/capturegraph.c, dlls/qcap/vfwcapture.c, dlls/qcap/yuv.c:
	qcap: Exclude unused headers.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/avisplit.c,
	  dlls/quartz/dsoundrender.c, dlls/quartz/mpegsplit.c:
	quartz: Exclude unused headers.

	* dlls/quartz/parser.c, dlls/quartz/systemclock.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c:
	quartz: Exclude unused headers.

2007-05-16  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Minor cleanup.

2007-05-10  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Type references are global to the typelib.

2007-05-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implemented PsGetVersion and added stubs for a couple of other
	Ps functions.

2007-05-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Export a Wine-internal function to run the device request
	handling loop.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec,
	  include/ddk/wdm.h:
	ntoskrnl.exe: Implemented a number of memory allocation functions.

	* dlls/kernel32/module.c, dlls/kernel32/tests/loader.c:
	kernel32: Check for already loaded module also for LOAD_LIBRARY_AS_DATAFILE.

	* dlls/kernel32/module.c:
	kernel32: Support incrementing the module refcount in GetModuleHandleEx.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented LdrAddRefDll.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Reimplement LdrGetDllHandle to use the same search algorithm as
	LdrLoadDll.

2007-05-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c:
	user32: Remove duplicated code.

2007-05-14  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/user32/mdi.c:
	user32: mdi: Fix switch with wParam in WM_SYSCOMMAND processing.

2007-05-15  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Installer::ProductInfo.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Remove unnecessary if (SUCCEEDED(hr)) statements.

	* dlls/msi/automation.c:
	msi: automation: Condense a few loops.

2007-05-14  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Add access flags to service handle data.

2007-05-14  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add hardware cursor support.

2007-05-15  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Write some structures to the type format string on the fly.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Improve handling of offsets in the type format string.

2007-05-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/opengl32/wgl.c:
	opengl32: Exclude unused header.

	* dlls/oleaut32/dispatch.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib16.c, dlls/oleaut32/typelib2.c:
	oleaut32: Exclude unused headers.

	* dlls/oledlg/insobjdlg.c:
	oledlg: Exclude unused header.

	* dlls/ole32/classmoniker.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ole16.c, dlls/ole32/ole2.c, dlls/ole32/ole2_16.c,
	  dlls/ole32/ole2impl.c, dlls/ole32/ole2nls.c, dlls/ole32/ole32_main.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/stg_stream.c, dlls/ole32/storage.c:
	ole32: Exclude unused headers.

2007-05-15  Erez Volk <erez.volk@gmail.com>

	* dlls/ntdll/time.c:
	ntdll: Added IDT Timezone (Israel daylight savings time).

2007-05-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: TB_SETIMAGELIST should try to preserve button width.

2007-05-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add a test for LoadLibraryEx(LOAD_LIBRARY_AS_DATAFILE).

2007-05-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Added IofCompleteRequest.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Export KeServiceDescriptorTable and KeTickCount.

	* dlls/ntoskrnl.exe/ntoskrnl.c, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implemented IoCreateSymbolicLink.

	* dlls/ntoskrnl.exe/Makefile.in, dlls/ntoskrnl.exe/ntoskrnl.c,
	  dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Implemented IoCreateDevice and IoDeleteDevice.

	* include/ddk/wdm.h:
	include: Add a few definitions in wdm.h.

2007-05-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c:
	dbghelp: Late init hash_table.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/storage.c, dlls/dbghelp/symbol.c,
	  dlls/dbghelp/type.c:
	dbghelp: Speed up vector iteration by directly using for().

	* dlls/dbghelp/storage.c:
	dbghelp: Speed up pool_alloc. Patch by Eric Pouech.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c:
	dbghelp: Speed up vector_add by avoiding pool_realloc calls. Remove no longer
	needed pool_realloc.

2007-05-15  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/ddraw/ddraw.c,
	  dlls/ddraw/tests/dsurface.c, dlls/msi/tests/automation.c,
	  dlls/wined3d/device.c, programs/regedit/regedit.c:
	Assorted spelling fixes.

	* dlls/mshtml/nsio.c:
	mshtml: Fix '\n' typo.

2007-05-15  Francois Gouget <fgouget@codeweavers.com>

	* include/Makefile.in, include/winscard.h, include/winsmcrd.h:
	winscard: Add headers for the upcoming implementation of the winscard dll.

	* include/Makefile.in, include/scarderr.h, include/winerror.h:
	winscard: Adding the missing SCARD_E_XXX and SCARD_W_XXX error codes.
	Adding scarderr.h with the same definitions.

2007-05-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Prevent race between destroying the hook window and unloading the dll.

2007-05-14  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/tests/register.c, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Implement WintrustGetRegPolicyFlags and WintrustSetRegPolicyFlags.

	* dlls/crypt32/tests/sip.c:
	crypt32: Remove last error checks on success.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Use public functions to get store access state.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Implement CertGetStoreProperty and CertSetStoreProperty.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c:
	crypt32: Don't set ret to TRUE when it already is.
	Set it to FALSE when it needs to be.

2007-05-14  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c:
	msi: automation: Simplify counting products/related products.

	* dlls/msi/automation.c:
	msi: automation: Installer::Products, verify HeapAlloc return value.

	* dlls/msi/registry.c, dlls/msi/tests/automation.c:
	msi: Make MsiEnumRelatedProducts enumerate registry value names, not subkeys.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::RelatedProducts.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Installer::RelatedProducts.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::InstallProduct.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for Installer::InstallProduct.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Record::IntegerData.

2007-05-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Improve some exec command stubs.

2007-05-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c, dlls/user32/tests/menu.c:
	user32: Add a test for the menu resource loader, make it pass under Wine.

2007-05-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/menu.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/resource.rc:
	user32: Add a test for CheckMenuRadioItem and make it pass under Wine.

2007-05-15  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix crash in RSAENH_CPVerifySignature if pbSignature is set to NULL
	or if dwSigLen is lesser than the expected value.

2007-05-14  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: IDirectSound_Compact should return DS_OK on priolevel >= DSSCL_PRIORITY.

2007-05-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/access.c, dlls/netapi32/wksta.c:
	netapi32: Exclude unused headers.

	* dlls/ntdll/debugtools.c, dlls/ntdll/loader.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/sec.c, dlls/ntdll/virtual.c:
	ntdll: Exclude unused headers.

	* dlls/msxml3/main.c, dlls/msxml3/schema.c:
	msxml3: Exclude unused headers.

2007-05-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/except.c, dlls/msvcrt/file.c, dlls/msvcrt/scanf.c:
	msvcrt: Exclude unused headers.

	* dlls/msvfw32/mciwnd.c:
	msvfw32: Exclude unused header.

	* dlls/msvcrt20/msvcrt20.c:
	msvcrt20: Exclude unused header.

2007-05-14  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/hal/Makefile.in, dlls/hal/hal.spec:
	hal: Added an initial stub.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ntoskrnl.exe/Makefile.in, dlls/ntoskrnl.exe/ntoskrnl.exe.spec:
	ntoskrnl.exe: Initial stub version with forwards to existing functions.

2007-05-13  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_SetControlDetails.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_GetControlDetails.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_GetLineControls.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Initial implementation of MIX_GetLineInfo.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Implement MIX_GetDevCaps.

	* dlls/winecoreaudio.drv/mixer.c:
	winecoreaudio: Implement MIX_Open and MIX_GetNumDevs.

	* dlls/winecoreaudio.drv/Makefile.in, dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/coreaudio.h, dlls/winecoreaudio.drv/mixer.c,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec:
	winecoreaudio: Initial mixer support on Mac OS X.
	Find all lines and initialize controls.

2007-05-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/moniker.c:
	ole32/tests: Check for correct return value.

2007-05-11  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement View::Modify.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for View::Modify.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Record::IntegerData.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Correct expected Record::StringData PROPERTYPUT return
	variant type.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Record::FieldCount.

	* dlls/msi/automation.c, dlls/msi/tests/automation.c:
	msi: automation: Return DISP_E_MEMBERNOTFOUND if flags are incorrect.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Test invoking methods as properties & vice versa.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::CreateRecord.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Test for Installer::CreateRecord error.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Session::EvaluateCondition.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Session::EvaluateCondition.

2007-05-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/status.c:
	comctl32: status: Send a NMMOUSE in mouse notifications, not a NMHDR.

2007-05-12  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ddraw/tests/d3d.c, dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Check for failing to create surfaces.

2007-05-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c:
	mshtml: Don't call start_binding if we use necko to load the page.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Wrap nsIExternalProtocolHandler.

2007-05-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/dsound_private.h, dlls/dsound/primary.c,
	  dlls/dsound/tests/dsound8.c:
	dsound: Primary buffer isn't an IDirectSoundBuffer8.

	* dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/waveout.c:
	winealsa: Remove dead code.

2007-05-14  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Stub implementation of CertGetCertificateChain.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/oid.c:
	crypt32: Stub implementation of CryptFindLocalizedName.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Fix crash in CertGetCertificateContextProperty when querying length
	of a hash property.

2007-05-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Don't lookup the address for the DllGetClassObject function for ole32.dll
	in the apartment loaded dll list.
	Call the function directly for a small performance boost.

	* dlls/ole32/compobj.c:
	ole32: Fix CoUninitialize to only free libraries that return S_OK from
	DllCanUnloadNow.

2007-05-13  Frank Richter <frank.richter@gmail.com>

	* programs/wordpad/De.rc:
	wordpad: Update German translation.

	* programs/cmd/De.rc:
	cmd: Updated German translation.

	* dlls/shell32/shell32_De.rc:
	shell32: Update German resources.

	* dlls/credui/credui.rc, dlls/credui/credui_De.rc:
	credui: Add German translation.

	* dlls/shdoclc/De.rc:
	shdoclc: Update German translation.

2007-05-13  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* include/winsvc.h:
	advapi32: Add service state request definitions.

2007-05-12  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/winecfg/Es.rc:
	winecfg: Updated Spanish translation.

2007-05-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/advapi.c:
	advapi32: Fix a typo.

2007-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-05-12  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/device.c:
	wined3d: Fixed swapchain context NULL ptr checks.

2007-05-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/typegen.c:
	widl: Handle pointers fields that point to structures.

	* tools/widl/typegen.c:
	widl: Remove an unnecessary assignment in write_pointers.

2007-05-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement IXMLDOMDocument2::setProperty("SelectionLanguage", ...).

2007-05-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/localui/localui.rc, dlls/localui/ui_Pl.rc:
	localui: Add Polish translation.

2007-05-11  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.37.

----------------------------------------------------------------
2007-05-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/d3drm/tests/Makefile.in, dlls/d3drm/tests/vector.c:
	d3drm/tests: d3drm is removed from Windows Vista.

2007-05-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IPersistStreamInit::Load test.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/persist.c:
	mshtml: Added IPersistStreamInit::Load implementation.

	* dlls/mshtml/persist.c:
	mshtml: Split IPersistMoniker::Load.

	* dlls/mshtml/navigate.c:
	mshtml: Move AddRequest call to the separated function.

	* dlls/mshtml/navigate.c:
	mshtml: Don't crash in OnStopBinding if This->binding is null.

	* dlls/mshtml/navigate.c:
	mshtml: Split code from OnDataAvailable.

2007-05-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: WINED3DSIO_POW should use the absolute value of the first source
	register.

2007-05-10  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::RegistryValue.

2007-05-11  Alexandre Julliard <julliard@winehq.org>

	* server/console.c, server/console.h, server/debugger.c, server/process.c,
	  server/process.h:
	server: Stop exporting the console_input structure. Get rid of console.h.

2007-05-10  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Add tests for console codepages.

	* dlls/kernel32/console.c, include/wine/server_protocol.h,
	  server/console.c, server/console.h, server/protocol.def,
	  server/trace.c:
	server: Move console codepages to the server.

2007-05-09  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl,
	  tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Remove var_t's ptr_level field and start write_pointers.

2007-05-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/systray.c, dlls/shell32/tests/Makefile.in,
	  dlls/shell32/tests/systray.c, programs/explorer/systray.c:
	shell32: Handle invalid cbSize in Shell_NotifyIcon[AW].

2007-03-28  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/tests/install.c:
	msi/tests: Increase buffer size a bit.
	Spotted by Coverity.

2007-05-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c:
	wined3d: Prevent wrong bumpenvmap warnings.

	* dlls/wined3d/surface.c:
	wined3d: Only addref clippers if one exists.

2007-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Avoid fallout of failing tests.

2007-05-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement DDBLT_DEPTHFILL on the active depth stencil target.

2007-05-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/surface.c, dlls/d3d9/tests/surface.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c,
	  dlls/wined3d/resource.c, include/d3d8.h:
	wined3d: Destroying the resource frees all private data.
	Also adds a test for ddraw, d3d8 and d3d9.

2007-05-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: GetSurfaceDesc returns the surface memory while the surface is locked.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c:
	ddraw: Use point filter for blit operations.
	D3DTEXF_NONE is a special value for mipmapping which disabled
	mipmapping, but it is not a valid mag / min filter parameter.
	D3DTEXF_POINT is what we want

2007-05-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Remove all non-d3d7 capability flags.

2007-05-10  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/rpcss/np_server.c:
	rpcss: Use correct prototype for thread function.

	* dlls/ntdll/tests/atom.c:
	ntdll: Use correct prototype for thread function.

2007-05-10  Francois Gouget <fgouget@free.fr>

	* dlls/wined3d/surface.c:
	wined3d: Add a missing '\n' to a trace.

	* dlls/crypt32/store.c:
	crypt32: Add missing '\n' in FIXME() call.

	* dlls/msi/tests/automation.c:
	msi/tests: Add missing '\n' to ok() calls.

2007-05-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Only check the volume label for every media after the first disk.

2007-05-10  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Add support for mandatory parameters to RSAENH_CPGetProvParam.

2007-05-10  Rob Shearman <rob@codeweavers.com>

	* dlls/setupapi/query.c:
	setupapi: SetupOpenInfFile returns INVALID_HANDLE_VALUE on failure, not NULL.
	Fix SetupQueryInfOriginalFileInformation to check for the former rather than
	the latter.

2007-05-10  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix UrlCanonicalizeW's handling of filesystem paths.

2007-05-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/actctx.c:
	kernel32: Fix typo in CreateActCtxA.

2007-05-09  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/tests/console.c:
	kernel32/tests: Add tests for console screen buffer.

	* server/console.c:
	server: Fix access check in screen buffer handling.

2007-05-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: Deformat the key path before opening the key.

2007-05-09  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/write_msft.c:
	widl: Remove dead code in write_msft.c.

	* tools/widl/parser.y:
	widl: Simplify make_safearray.

	* tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/write_msft.c:
	widl: Remove redundant get_var_vt function.

	* tools/widl/typegen.c:
	widl: Add string_of_type function, prettify code.

2007-05-10  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Correct the implementation of CertCreateSelfSignCertificate.

2007-05-09  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Trace the VBO and stream number as well in
	drawPrimitiveTraceDataLocations.

	* dlls/wined3d/state.c:
	wined3d: Load texture coordinates even if no texture is bound to that stage
	at this time.

	* dlls/wined3d/state.c:
	wined3d: Split texture coordinate loading from loadVertexData().

	* dlls/wined3d/state.c:
	wined3d: Calling glDisableClientState() from loadVertexData() is redundant.
	unloadVertexData() will already have done this if necessary.

	* dlls/wined3d/state.c:
	wined3d: Unload vertex weight data in case of EXT_VERTEX_WEIGHTING as well.

2007-05-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mlang/mlang.c:
	mlang: Exclude unused headers.

	* dlls/msacm32/driver.c, dlls/msacm32/msacm32_main.c:
	msacm32: Exclude unused headers.

	* dlls/mscms/icc.c:
	mscms: Exclude unused headers.

2007-05-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/sendmail.c:
	mapi32: Exclude unused header.

	* dlls/mciwave/mciwave.c:
	mciwave: Exclude unused header.

	* dlls/localspl/localmon.c, dlls/localspl/localspl_main.c:
	localspl: Exclude unused headers.

	* dlls/mcicda/mcicda.c:
	mcicda: Exclude unused headers.

2007-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/psapi/psapi.spec:
	psapi: Don't print output parameters as strings.

2007-05-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Move the logic in StgCreateDocfile for "if no share mode given then
	DENY_NONE is the default" to before the validateSTGM check.
	Add a test that shows this behaviour is correct.
	Remove a test on the access mode that is redundant because it is already
	done in validateSTGM.

2007-05-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlbody.c, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLBodyElement::CreateTextRange implementation.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: CGID_Undocumented is CGID_DocHostCmdPriv.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/txtrange.c:
	mshtml: Added IHTMLTxtRange::get_htmlText implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/selection.c,
	  dlls/mshtml/txtrange.c:
	mshtml: Reimplement IHTMTxtRange on top of nsIDOMRange.

2007-05-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Properly cleanup after each test.

2007-05-09  Thomas Spear <Speeddymon@gmail.com>

	* programs/regedit/regedit.c:
	regedit: Spelling and grammar fixes.

2007-05-09  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add more tests for Installer::RegistryValue.
	Add test for a new error condition and tests for returning data from values
	of different registry value types.

2007-05-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Manage private data in a wine linked list.

	* dlls/ddraw/surface.c:
	ddraw: Fix stupid bug when setting surface client memory.

	* dlls/ddraw/ddraw.c:
	ddraw: Always set fullscreen mode in wined3d.
	DDSCL_NORMAL is not set at initialization. Instead of making this a
	& DDSCL_NORMAL || == 0 check just set fullscreen mode always. WineD3D
	will catch NOP changes anyway.

	* dlls/wined3d/context.c, dlls/wined3d/directx.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Support bump environment mapping using GL_NV_texture_shader.

2007-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Unload vertex weight data in unloadVertexData.

2007-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/direct3d.c, dlls/ddraw/tests/d3d.c:
	ddraw: Some caps fixes.
	Cards at DirectX7 times did not support non power of 2 textures, and
	some games check the capatiblity flags incorrectly. Rollcage expects the
	D3DPTEXTURECAPS_POW2 (limitation) flag set and fails with the reference
	rasterizer which support NP2 textures and doesn't have the cap set.

2007-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel32/actctx.c:
	kernel32: Set the new definition for an activation context, and implement
	adding/releasing references to it.

	* dlls/kernel32/actctx.c:
	kernel32: Implemented CreateActCtxA on top of CreateActCtxW.

2007-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Some more ProcessVertices fixes.
	Remove vbos from the input strided data from the fixed function
	attributes explicitly and avoid writing beyond the end of a temporary
	buffer when cloning a windows bug.

2007-05-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/surface.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/tests/dsurface.c:
	ddraw: More tests and fixes on surface attachments.

	* dlls/ddraw/device.c, dlls/wined3d/directx.c, dlls/wined3d/state.c,
	  dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Implement environment bump mapping with GL_ATI_envmap_bumpmap.

2007-05-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Report only D16, D24S8 and D24X8 depth stencil formats as supported.

2007-05-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Check the volume name when changing media.

	* programs/msiexec/msiexec.c:
	msiexec: /quiet is the same options as /qn.

2007-05-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Implement CertEnumSystemStore.

2007-05-08  Thomas Spear <Speeddymon@gmail.com>

	* programs/uninstaller/main.c:
	uninstaller: Fix trace message.

2007-05-08  Marcus Meissner <marcus@jet.franken.de>

	* server/named_pipe.c:
	server: set_server_state needs to be called with non-NULL server.
	Spotted by Coverity.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Fix set process request, a pipe instance can only handle one request.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/device.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add support for retrieving results of queued ioctls once they are done.

	* include/wine/server_protocol.h, server/device.c, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Add request to retrieve the next pending ioctl call for a device manager.

	* server/async.c, server/device.c, server/file.h:
	server: Add support for queuing ioctl calls to a device.

	* include/wine/server_protocol.h, server/Makefile.in, server/device.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Add support for generic device objects managed from the client side.

2007-05-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: SetupQueryInfOriginalFileInformationA is not available on win98.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Support setting the CPU context on the current thread without segment
	registers.

2007-04-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Unset the StreamIsUP flag in ProcessVertices.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix front buffer coords for gdi surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Handle DDPCAPS_ALPHA.

	* dlls/ddraw/device.c:
	ddraw: Forward the mag filter correctly to wined3d.
	Fixes the erros when using anisotropic mag filtering in the d3d7
	filter demo.

	* dlls/ddraw/ddraw.c, dlls/ddraw/surface.c, dlls/wined3d/surface.c:
	wined3d: Make the blit -> flip work for windowed rendering.

2007-04-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/main.c, dlls/wined3d/Makefile.in, dlls/wined3d/clipper.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d.spec, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d: Move clippers from DDraw to wined3d.

2007-05-08  Rob Shearman <rob@codeweavers.com>

	* dlls/setupapi/query.c:
	setupapi: Improve the stub for SetupQueryInfOriginalFileInformation
	to return information for OriginalCatalogName based on information in
	the installed inf file.

	* dlls/setupapi/misc.c:
	setupapi: Don't copy an OEM inf file if the exact same OEM inf file already
	exists.

	* dlls/ole32/ole2.c:
	ole32: Don't release the drop target on process uninitialisation if not revoked,
	just release the memory.

2007-05-08  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c:
	msi: automation: Display an error on create_session failure.

	* dlls/msi/automation.c:
	msi: automation: Move VariantClears out of specific case statements when
	possible.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fixed typo in libicu check.

2007-05-07  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Implement GetServiceDisplayNameW.

	* dlls/advapi32/service.c:
	advapi32: Implement GetServiceDisplayNameA.

	* include/winsvc.h:
	advapi32: Add prototypes for EnumServicesStatusExA/W.

	* dlls/advapi32/service.c:
	advapi32: Store process ID into status structure on startup.

2007-05-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/dialog.c, dlls/user32/tests/msg.c,
	  dlls/user32/tests/resource.rc:
	user32: Windows doesn't send the initialization messages to a dialog if a
	passed in dlgProc is NULL.

2007-05-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix typos in messages.

2007-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makedll.rules.in, dlls/kernel32/Makefile.in:
	kernel32: Set the dll file name with the correct case to make EXECryptor happy.

2007-05-08  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/compobj.c:
	ole32: Add a test for the retrieved local class object in another thread being
	a proxy.

	* dlls/ole32/errorinfo.c:
	ole32: Add documentation for error info functions.

	* dlls/ole32/compobj.c:
	ole32: Add documentation about registered class objects only being visible in
	the apartment in which they were registered.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Fix CoRevokeClassObject to return RPC_E_WRONG_THREAD if it was called
	from a different apartment than the one that called CoRegisterClassObject.

2007-05-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Split CoRevokeClassObject into a separate function,
	COM_RevokeRegisteredClassObject, which acts on a RegisteredClass object.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: COM_GetRegisteredClassObject should only retrieve objects that were
	registered in the current apartment.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for in-process registered class objects not being visible
	from different apartments.

	* dlls/ole32/compobj.c:
	ole32: Revoke registered class objects when the apartment they were registered
	in is destroyed, not when the last CoUninitialize is called.

	* dlls/ole32/tests/compobj.c:
	ole32: Add test for registered class becoming invalid when apartment is
	destroyed.

	* dlls/ole32/compobj.c:
	ole32: CoGetClassObject shouldn't return REGDB_E_KEYMISSING, so convert it
	to REGDB_E_CLASSNOTREG.

2007-05-07  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c:
	msi: automation: Display errors on create_automation_object failure.

	* dlls/msi/automation.c:
	msi: automation: Clear all VT_BSTR variants returned by DispGetParam.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Simplify ok_exception.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add test for Installer::RegistryValue.

	* dlls/msi/automation.c:
	msi: automation: Output FIXMEs for unknown member names.

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Installer::Products and Installer::ProductState.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Add tests for Installer::Products and
	Installer::ProductState.

	* dlls/msi/automation.c:
	msi: automation: Generalize interface-specific data storage in AutomationObject.
	This makes a more general framework for interface/object-specific data storage.

	* dlls/msi/msiserver.idl, dlls/msi/tests/automation.c:
	msi: automation: Use proper parameter names.
	This fixes the parameter names to match native as they are required by
	some scripting languages and by the exceptions that are thrown.

2007-05-07  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Use the correct registry key in RSAENH_CPAcquireContext.

2007-05-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.rc, dlls/localui/ui_De.rc:
	localui: Add German resources.

2007-05-07  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi32/dib.c:
	gdi32: Add check for null pointer in SetDIBitsToDevice.

2007-04-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Primary surfaces always have screen size.

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c:
	ddraw: Adjust the d3d viewport when changing the back buffer.
	WineD3D sets up the viewport according to the front buffer, so this
	needs to be changed to the values of the render target passed when the
	d3d7 device is created and this device turns out not to be the known
	front or back buffer.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Full surface DXTn copy.
	Height * Pitch is not a valid way to calculate the surface size for
	DXTn surfaces. Instead of messing with format specific formulas just
	use the size stored in the destination surface.

2007-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Fix reported caps on compressed surfaces.
	Compressed surfaces in ddraw do not have a pitch, instead the full
	surface size is reported. Also adds tests for the extact behavior and
	surface flags set.

2007-05-07  Damjan Jovanovic <damjan.jov@gmail.com>

	* tools/wine.inf:
	wine.inf: Move explorer to the windows directory.

2007-05-07  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Added rpath support for Solaris.

2007-05-07  Bernard Ladenthin <bernard@ladenthin.net>

	* dlls/browseui/browseui.h, dlls/browseui/browseui_main.c:
	browseui: Fixed ClassFactory_LockServer implementation.

2007-05-07  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Fix read_key_container bug that prevents CryptAcquireContext from
	correctly loading the keys.

	* include/wincrypt.h:
	wincrypt.h: Add missing definitions.

2007-05-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/system.c, dlls/kernel32/thread.c,
	  dlls/kernel32/toolhelp16.c, dlls/kernel32/virtual.c,
	  dlls/kernel32/volume.c, dlls/kernel32/windebug.c:
	kernel32: Exclude unused headers.

	* dlls/kernel32/oldconfig.c, dlls/kernel32/process.c,
	  dlls/kernel32/resource.c, dlls/kernel32/selector.c,
	  dlls/kernel32/stress.c, dlls/kernel32/string.c:
	kernel32: Exclude unused headers.

	* dlls/kernel32/except.c, dlls/kernel32/file.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c,
	  dlls/kernel32/ne_module.c:
	kernel32: Exclude unused headers.

	* dlls/kernel32/actctx.c, dlls/kernel32/atom.c, dlls/kernel32/atom16.c,
	  dlls/kernel32/computername.c, dlls/kernel32/cpu.c,
	  dlls/kernel32/error16.c:
	kernel32: Exclude unused headers.

	* dlls/itss/itss.c, dlls/itss/moniker.c, dlls/itss/storage.c:
	itss: Exclude unused headers.

	* dlls/infosoft/wordbreaker.c:
	infosoft: Exclude unused header.

	* dlls/imagehlp/access.c, dlls/imagehlp/imagehlp_main.c,
	  dlls/imagehlp/integrity.c, dlls/imagehlp/modify.c:
	imagehlp: Exclude unused headers.

	* dlls/inseng/inseng_main.c:
	inseng: Exclude unused header.

2007-05-05  Ben Taylor <sol11x86@comcast.net>

	* tools/winegcc/winegcc.c:
	winegcc: Allow -R and -z linker options.

2007-05-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/kernel_main.c:
	kernel32: Disable FT_Thunk entry point when Windows version is NT.

	* configure, configure.ac:
	configure: Only check for the static versions of libicu.
	Get rid of hardcoded path names to avoid trouble on 64-bit platforms.
	Based on a patch by Robert Millan.

2007-05-05  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/time.c:
	winmm: Use criticalsection for determining wether timer is synchronously
	killable.

2007-05-06  Bernard Ladenthin <bernard@ladenthin.net>

	* dlls/browseui/browseui.h, dlls/browseui/browseui_main.c:
	browseui: Implement ClassFactory_LockServer in browseui dll.

2007-05-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/events.c:
	msi: Add handling for the ReinstallMode control event.

	* dlls/msi/action.c:
	msi: Add stub handlers for the remaing standard actions that reference tables.

	* dlls/msi/package.c:
	msi: Remove debugging printf statements.

	* dlls/msi/dialog.c:
	msi: Remove incorrect ERR as messages can be sent before the control is created.

	* dlls/msi/dialog.c:
	msi: Set the text limit of the edit control if the limit is given.

	* dlls/msi/dialog.c:
	msi: Add the ES_AUTOHSCROLL style to the edit control.

	* dlls/msi/dialog.c:
	msi: Only allow valid styles in msi_dialog_get_style.

2007-05-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Remove auto detection of Mozilla and Mozilla ActiveX control.

2007-05-05  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/dsurface.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-05-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	comctl32: treeview: Treeviews shouldn't be sending NM_TOOLTIPSCREATED (with
	testcase).

	* dlls/comctl32/tests/treeview.c:
	comctl32: treeview: Make the focus test pass under Windows XP.

2007-05-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.c:
	localui: Prefer builtin version.

	* dlls/localui/localui.c, dlls/localui/localui.h, dlls/localui/ui_En.rc:
	localui: Implement ConfigurePortUI for LPT.

2007-05-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/riched20/tests/editor.c:
	riched32: Avoid implicit time().

2007-05-04  Kevin Koltzau <kevin@plop.org>

	* include/winbase.h:
	winbase.h: Define FILE_FLAG_OPEN_REPARSE_POINT.

2007-05-04  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h, dlls/msi/tests/automation.c:
	msi: automation: Implement Session::Installer.

	* dlls/msi/automation.c, dlls/msi/msipriv.h, dlls/msi/script.c:
	msi: automation: Store parent Installer object in Session.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Session::Installer conformance test.

	* dlls/msi/script.c:
	msi: script: Discriminate properly between JScript and VBScript.

2007-05-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Add FILE_FLAG_BACKUP_SEMANTICS to the flags passed to CreateFileW
	to be able to get security information for directories as well as for files.

	* dlls/gdi32/freetype.c:
	gdi32: AddFontResource should return a number of added font faces.

	* dlls/gdi32/freetype.c:
	gdi32: Handle errors in WineEngAddFontResourceEx.

2007-05-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Handle the ps_3_0 vPos field.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove some redundant fields from IWineD3DBaseTextureImpl.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Add a surface locking test.

	* dlls/d3d8/tests/surface.c:
	d3d8: Add a surface locking test.

	* dlls/d3d9/tests/surface.c:
	d3d9: Add a surface locking test.

	* dlls/d3d8/surface.c, dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c:
	d3d: Fix the surface locking rectangle validation.

	* dlls/wined3d/device.c:
	wined3d: Improve a few VBO traces.

	* dlls/wined3d/device.c:
	wined3d: Bind GL_FRAMEBUFFER_EXT rather than GL_DRAW_FRAMEBUFFER_EXT in
	color_fill_fbo.

	* dlls/wined3d/device.c:
	wined3d: Make the IWineD3DDeviceImpl_ColorFill TRACE a bit more useful.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Flip the coordinate system rather than the coordinates itself for
	onscreen surfaces in stretch_rect_fbo.

2007-05-04  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Implement IUnknown_CPContainerInvokeParam.

2007-05-03  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Integrate test_createrecord_and_version properly.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Convert method names to Unicode on the fly to simplify
	adding new tests.

	* dlls/msi/tests/automation.c:
	msi/tests: automation: Free memory after string conversion.

2007-05-03  Bill Medland <billmedland@shaw.ca>

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Some boundary tests on VarBstrFromDate.

	* dlls/kernel32/tests/locale.c, dlls/kernel32/tests/time.c:
	kernel32/tests: Boundary test cases for SystemTimeToFileTime and GetDateFormat.

2007-05-03  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Add missing definitions.

2007-05-03  Rob Shearman <rob@codeweavers.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/misc.c:
	setupapi: Partially implement SetupQueryInfOriginalFileInformationW.
	Implement SetupQueryInfOriginalFileInformationA on top of
	SetupQueryInfOriginalFileInformationW.

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Add stubs for SetupQueryInfOriginalFileInformationA/W.

	* dlls/setupapi/install.c:
	setupapi: The inf file containing the SourceDisksFiles and SourceDisksNames
	sections is the same as hinf if there is no layout file specified.
	So pass the correct inf handle to SetupQueueDefaultCopyW and
	SetupQueueCopySectionW.

2007-05-03  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/directory.c:
	ntdll: Call NtQueryAttributesFile in RtlDoesFileExists_U.

2007-05-03  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* dlls/oledlg/oledlg_Es.rc, dlls/shdoclc/Es.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/winspool.drv/Es.rc:
	Some Spanish translation updates.

2007-05-03  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/ntdll/file.c:
	ntdll: Correct a copy/paste mistake in NtWriteFile.

2007-05-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/dplay/Makefile.in, dlls/dplay/dplay_main.c, dlls/lz32/Makefile.in,
	  dlls/lz32/lzexpand_main.c, dlls/msdmo/Makefile.in,
	  dlls/msdmo/msdmo_main.c, dlls/msvcrt40/Makefile.in,
	  dlls/msvcrt40/msvcrt40.c, dlls/shfolder/Makefile.in,
	  dlls/shfolder/shfolder_main.c:
	Get rid of some empty source files, our makefiles no longer require them.

	* dlls/comctl32/tests/trackbar.c, dlls/cryptnet/cryptnet_main.c,
	  dlls/itss/chm_lib.c, dlls/itss/chm_lib.h, dlls/itss/lzx.c,
	  dlls/itss/lzx.h, dlls/mshtml/hlink.c, dlls/msi/update.c,
	  dlls/rsaenh/des.c, dlls/rsaenh/md2.c, dlls/rsaenh/mpi.c,
	  dlls/rsaenh/rc2.c, dlls/rsaenh/rc4.c, dlls/rsaenh/rsa.c,
	  dlls/rsaenh/rsaenh.c, dlls/rsaenh/tomcrypt.h,
	  dlls/shell32/cpanelfolder.c, include/mapitags.h,
	  programs/oleview/details.c, programs/oleview/pane.c,
	  programs/oleview/resource.h, programs/oleview/tree.c,
	  tools/winedump/pdb.c:
	Fix minor differences in the formatting of the license notices.

2007-05-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Allocate the wait event for FSCTL_PIPE_WAIT on the server side.

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Allocate the wait event for FSCTL_PIPE_LISTEN on the server side.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/fd.c,
	  server/file.h, server/named_pipe.c, server/protocol.def,
	  server/trace.c:
	server: Infrastructure to return a wait handle for blocking ioctls.

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c:
	server: Store valid file options in pseudo file descriptors.

2007-05-02  Tim Schwartz <tim@sanityinternet.com>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/net/Makefile.in, programs/net/net.c:
	net.exe: Initial stub.

2007-05-02  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Recognize and use topic specification in url or in data.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Do not try to dereference NULL pointer if CreateHelpViewer failed.

	* dlls/hhctrl.ocx/hhctrl.c, include/htmlhelp.h:
	hhctrl.ocx: Update HtmlHelp and its commands definitions, and partially
	implement data A->W translation.

2007-05-02  Mounir IDRASSI <mounir.idrassi@idrix.fr>

	* dlls/advapi32/crypt.c:
	advapi32: Check for error in CryptEnumProviderTypesA and CryptEnumProvidersA.

2007-05-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/text.c:
	user32: Fix TabbedTextOut.
	The TEXT_TabbedTextOut didn't set correctly the text starting point
	(x0) for left-aligned tabs and was ignoring the last tab. I've also
	changed GetTextMetricsA to W as this should be slightly faster.

2007-05-03  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c:
	widl: Don't declare a global binding handle when using an implicit handle.

2007-04-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement vertex blending using GL_ARB_vertex_blend.

2007-04-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c:
	ddraw: Forward all 4 world matrices to wined3d.

	* dlls/ddraw/utils.c, dlls/wined3d/utils.c:
	d3d: Calculate the size of WINED3DFVF_XYZBx FVFs.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* include/wine/wined3d_gl.h:
	wined3d: Add missing prototypes for GL_ARB_vertex_blend.

2007-05-02  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/ifs.c:
	ole32: Cope with a realloc returning a different pointer.

2007-05-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ifsmgr.vxd/ifsmgr.c:
	ifsmgr.vxd: Constify some variables.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Exclude unused headers.

	* dlls/dpnet/address.c, dlls/dpnet/client.c, dlls/dpnet/dpnet_main.c,
	  dlls/dpnet/peer.c, dlls/dpnet/server.c:
	dpnet: Exclude unused headers.

	* dlls/dnsapi/record.c:
	dnsapi: Exclude unused header.

	* dlls/dxerr8/dxerr8.c:
	dxerr8: Exclude unused header.

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Constify some variables.

	* dlls/kernel32/heap.c, dlls/ntdll/heap.c, include/winbase.h,
	  include/winternl.h:
	kernel32: Constify a variable.

	* dlls/dxerr9/dxerr9.c:
	dxerr9: Exclude unused header.

2007-05-02  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Improve sound mixer detection.
	The previous mixer code depended on the existence of 1 'Master', and 1
	'Capture' control. According to some feedback in wine-devel this is not
	always the case, the new code will try the following order for loading:
	Destination waveout: Master, Headphone PCM
	Destination wavein: Capture

2007-05-02  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: GetGlyphOutline needs to look at linked fonts as well.

2007-05-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Implement WintrustLoadFunctionPointers.

	* include/wintrust.h:
	wintrust: Fix typo.

2007-05-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Remove an unnecessary QueryInterface in CoRegisterClassObject that
	CoMarshalInterface will already do.

	* dlls/setupapi/misc.c:
	setupapi: SetupCopyOEMInfW should preserve the basename when copying the inf
	file to the inf directory if possible.
	If the file already exists, then it should use a name with the form oem%u.inf
	instead.

2007-04-26  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/xcopy.c:
	xcopy: Output to console in Unicode if possible, or OEM codepage otherwise.

2007-05-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/riched20/editor.c, dlls/riched20/string.c,
	  dlls/riched20/tests/editor.c:
	riched20: Add the tests for EM_SETTEXTEX/EM_GETTEXTEX in addition to
	WM_SETTEXT/WM_GETTEXT, make them pass under Wine.

	* dlls/comctl32/tests/imagelist.c:
	comctl32: Remove a stray back slash.

2007-05-02  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c:
	gdi32: Complete WidenPath implementation.
	WidenPath now recognizes PS_JOINs and PS_ENCDAPs.

2007-05-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmime/dmutils.c:
	dmime: Exclude unused headers.

	* dlls/dmusic32/dmusic32_main.c:
	dmusic32: Exclude unused headers.

	* dlls/dmband/dmutils.c:
	dmband: Exclude unused headers.

	* dlls/dmstyle/dmutils.c:
	dmstyle: Exclude unused headers.

	* dlls/devenum/mediacatenum.c:
	devenum: Exclude unused header.

2007-04-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gphoto2.ds/capability.c:
	gphoto.ds: Constify a variable.

2007-04-30  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/Makefile.in, dlls/msi/automation.c, dlls/msi/custom.c,
	  dlls/msi/msipriv.h, dlls/msi/script.c:
	msi: Add JScript/VBScript support.

	* dlls/msi/custom.c:
	msi: Added handlers for JScript/VBScript actions that call one script function.

	* dlls/msi/automation.c, dlls/msi/msi_main.c, dlls/msi/msipriv.h,
	  dlls/msi/tests/automation.c:
	msi: automation: Expose Installer object.

	* dlls/msi/automation.c:
	msi: automation: Implement Installer::OpenPackage.

	* dlls/msi/automation.c:
	msi: automation: Implement a few functions from the Session object.

	* dlls/msi/automation.c:
	msi: automation: Implement Database::OpenView.

	* dlls/msi/automation.c:
	msi: automation: Implement View::Execute, Fetch, and Close.

	* dlls/msi/automation.c:
	msi: automation: Implement Record::StringData.

2007-05-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c:
	kernel32: Don't skip directory symlinks when looking for a specific file.

	* server/thread.c:
	server: Give system APCs priority over signaled objects.

	* programs/winebrowser/main.c:
	winebrowser: Don't output debug traces by default.

2007-05-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Run the costing actions for both the UI and execute sequences.

	* dlls/msi/action.c:
	msi: Reset the folder's resolved target before setting the target in
	CostFinalize.

	* dlls/msi/tests/install.c:
	msi: Add tests that show that costing is run in both the UI and Execute
	sequences.

2007-04-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.c, dlls/localui/localui.h, dlls/localui/localui.rc,
	  dlls/localui/ui_En.rc:
	localui: Implement AddPortUI.

2007-04-30  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typegen.c,
	  tools/widl/typelib.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Get rid of the tname field of var_t, simplify code.

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c,
	  tools/widl/widltypes.h:
	widl: Get rid of the typeref_t structure, simplify code.

2007-04-30  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/automation.c, dlls/msi/msiserver.idl,
	  dlls/msi/msiserver_dispids.h:
	msi: Expand IDL file to contain some OLE automation interface functions.

	* .gitignore, dlls/msi/Makefile.in, dlls/msi/automation.c:
	msi: Add base class for OLE automation objects.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/automation.c,
	  dlls/msi/tests/iface.c:
	msi: Merge OLE automation conformance tests.

2007-05-01  Ben Taylor <sol11x86@comcast.net>

	* tools/wineinstall:
	wineinstall: Use `wine --version` instead of `which wine`.

	* tools/wineshelllink:
	wineshelllink: Improve /bin/sh and awk compatibility.

2007-04-30  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Implement IConnectionPoint_SimpleInvoke.

2007-04-30  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/sync.c:
	kernel32: Add stub for BindIoCompletionCallback.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/surface.c:
	ddraw: Update the wined3d depth stencil on device creation, render.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Cube map structure test.

2007-04-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Cube texture support.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/device.c, dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d: Pass the cube face to Create*Texture's surface creation callback.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/surface.c:
	ddraw: Store a WineD3DBaseTexture instead of a WineD3DTexture.

2007-04-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_thunks.c, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gamma.c, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/parent.c, dlls/ddraw/surface.c,
	  dlls/ddraw/texture.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Exclude unused headers.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dwarf.c, dlls/dbghelp/image.c,
	  dlls/dbghelp/minidump.c, dlls/dbghelp/module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/stabs.c,
	  dlls/dbghelp/stack.c, dlls/dbghelp/type.c:
	dbghelp: Exclude unused headers.

2007-04-30  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Accelerators, like for the menu ones, should not fire on the keyup
	message.

2007-04-30  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c:
	winecoreaudio.drv: Implement MIDIOut_Data when device is a MOD_MIDIPORT.
	Implement MIDIOut_Send.

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/midi.c:
	winecoreaudio.drv: Create only one MIDIOutPort and one MIDIInPort for all
	destinations and sources.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio.drv: MIDIIn_MessageHandler: Remove a TRACE and simplify skipping
	SysEx.

2007-04-28  Misha Koshelev <mk144210@bcm.edu>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/automation.c:
	msi: Add OLE automation conformance test.

2007-04-29  Andrey Turkin <andrey.turkin@gmail.com>

	* dlls/dbghelp/minidump.c:
	dbghelp: Zero-terminate module name in minidump.

2007-04-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/font.c, include/wingdi.h:
	gdi32: Constify some variables.

	* dlls/gdi32/brush.c, dlls/gdi32/enhmetafile.c:
	gdi32: Constify some variables.

2007-04-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Avoid crash on NULL parameter (XcvOpenPort in OpenPrinter).

	* dlls/winspool.drv/info.c:
	winspool: Return the correct errorcode in OpenPrinter (Xcv).

	* dlls/localspl/localmon.c:
	localspl: Code cleanup for XcvDataPort_AddPort.

2007-04-30  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/device.c, dlls/ddraw/ddraw.c, dlls/dnsapi/query.c,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/odbccp32/tests/misc.c,
	  dlls/winealsa.drv/mixer.c, dlls/winecoreaudio.drv/coremidi.c,
	  dlls/winecoreaudio.drv/coremidi.h, dlls/winecoreaudio.drv/midi.c,
	  programs/cmd/builtins.c:
	Assorted spelling fixes.

	* dlls/msi/tests/db.c:
	msi/tests: Add missing '\n' to ok() call.

	* dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Fix compilation on systems that don't support nameless unions.

	* dlls/d3drm/tests/vector.c:
	d3drm/tests: Add missing '\n' to ok() calls.

2007-04-29  Rob Shearman <rob@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Add stubs for AtlIPersistStreamInit_Load and AtlIPersistStreamInit_Save.
	Based on a patch by Anastasius Focht and information from Inside ATL.

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlComQIPtrAssign.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Print the correct values when warning about a bad frag length.

	* dlls/winex11.drv/xdnd.c:
	winex11.drv: Remove an unneeded include.

	* dlls/dsound/propset.c:
	dsound: Implement QueryInterface for KsPropertySet objects.

	* dlls/dsound/dsound_main.c:
	dsound: Implement QueryInterface for the class factory objects.

2007-04-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/kernel32/process.c:
	kernel32: Fix off by one error.

	* dlls/ntdll/om.c:
	ntdll: Use correct full access bitmask in NtQuerySecurityObject.

2007-04-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg16.c:
	comdlg32: Exclude unused headers.

	* dlls/compstui/compstui_main.c:
	compstui: Exclude unused headers.

	* dlls/dswave/dswave_main.c, dlls/dswave/dswave_private.h:
	dswave: Constify a variable.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c, dlls/crypt32/main.c,
	  dlls/crypt32/protectdata.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c:
	crypt32: Exclude unused headers.

	* dlls/dsound/mixer.c, dlls/dsound/sound3d.c:
	dsound: Constify some variables.

2007-04-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt_lmhash.c, dlls/advapi32/eventlog.c:
	advapi32: Exclude unused headers.

2007-04-27  Ken Thomases <ken@codeweavers.com>

	* programs/winebrowser/main.c:
	winebrowser: Don't put the default mailers or browsers into the registry.

2007-04-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for surface attachments.

2007-04-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/main.c, dlls/ddraw/surface.c:
	ddraw: Complex surfaces form a tree.

2007-04-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Move the additional surface creation into a seperate function.

	* dlls/ddraw/surface.c:
	ddraw: Do not access the surface connection structure directly in SetPalette.

	* dlls/ddraw/ddraw.c:
	ddraw: Search for d3d primary a bit differently.

2007-04-27  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/security.c:
	advapi: Improve SetEntriesInAclA stub.

2007-04-27  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix initial cleanup of the registry keys used for testing.

2007-04-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Fix offset in OnDataAvailable call.

2007-04-27  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Remove useless initialization of an [out] parameter.

2007-04-27  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Handle non System Exclusive messages.

2007-04-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.36.

----------------------------------------------------------------
2007-04-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Unset WAVECAPS_DIRECTSOUND properly for capture.

2007-04-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/Makefile.in, dlls/quartz/main.c, dlls/quartz/mpegsplit.c,
	  dlls/quartz/quartz_private.h, dlls/quartz/regsvr.c:
	quartz: Partially implement the MPEG 1 Stream Splitter filter.

2007-04-25  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for NeedCurrentDirectoryForExePath.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/path.c, include/winbase.h:
	kernel32: Add partial stub for NeedCurrentDirectoryForExePath.

2007-04-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Avoid sizeof in trace.

2007-04-26  Kevin Koltzau <kevin@plop.org>

	* dlls/user32/menu.c:
	user32: Draw menu item bitmaps in the correct location when the scroll arrows
	are active.

2007-04-26  Alexey Markachev <alexey@etersoft.ru>

	* dlls/ntdll/time.c:
	ntdll: Fix mistake in Novosibirsk time zone.

2007-04-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c:
	ddraw: Use EnumAttachedSurfaces for SetColorKey.

	* dlls/ddraw/ddraw.c:
	ddraw: Search for texture sublevels with GetAttachedSurface.

	* dlls/ddraw/ddraw.c:
	ddraw: Use EnumAttachedSurfaces to search for a render target.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for EnumSurfaces.

2007-04-25  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Add legacy 32-bit cursor support.

2007-04-25  Yuval Fledel <yuvalfl@gmail.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/schannel/tests/Makefile.in, dlls/schannel/tests/main.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	schannel: Tests for SpLsaModeInitialize, SpUserModeInitialize and GetInfo.

	* dlls/schannel/Makefile.in, dlls/schannel/schannel.spec,
	  dlls/schannel/usermode.c:
	schannel: Implement SpUserModeInitialize.

	* dlls/schannel/Makefile.in, dlls/schannel/lsamode.c,
	  dlls/schannel/schannel.spec:
	schannel: Implement SpLsaModeInitialize and GetInfo.

2007-04-26  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Prepare and MIDIIn_Unprepare.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_AddBuffer.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Reset.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Start and MIDIIn_Stop.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_GetNumDevs and MIDIIn_GetDevCaps.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIIn_Open and MIDIIn_Close.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Add MIDI In messages in MIDI_NotifyClient.

2007-04-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix the return value for IWineD3DDeviceImpl_ColorFill.

2007-04-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/dplayx_global.c,
	  dlls/dplayx/dplayx_global.h, dlls/dplayx/name_server.c,
	  dlls/dplayx/name_server.h:
	dplayx: Constify some variables.

2007-04-26  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/table.c:
	msi: Do not mark the tables const.

2007-04-26  Ben Taylor <sol11x86@comcast.net>

	* dlls/wineoss.drv/mixer.c:
	wineoss: Fix to compile on Solaris 10.

2007-04-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/user32/winpos.c:
	user32: Windows doesn't redraw a window if it is being just moved.

2007-04-26  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Rewrite get_funcdesc to avoid using the funcdesc's oVft member so
	that it works correctly for non-dual dispinterfaces.

2007-04-25  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Don't try to free the typeinfo if get_funcdesc fails.

2007-04-26  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, tools/make_makefiles:
	make_makefiles: Avoid duplicate .gitignore entries.

2007-04-25  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/server.c, dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add a testcase for RPCs with fixed-size arrays.

	* tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Declare fixed-size array args as pointers to arrays.

	* .gitignore, dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/server.c,
	  dlls/rpcrt4/tests/server.idl:
	rpcrt4: Add tests for RPC and widl generated code.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c, tools/widl/widl.c, tools/widl/widl.h:
	widl: Add --prefix-* options (take 3).

2007-04-26  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Initial MIDI In Mach message handling.

	* dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec:
	winecoreaudio: Initial MIDI In support on Mac OS X.

2007-04-25  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Remove fake nvidia card in GetAdapterIdentifier.

2007-04-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/ddraw/vertexbuffer.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d: Fix ProcessVertices.
	IDirect3DDevice9::ProcessVertices takes a vertex declaration, not a
	vertex buffer. The source for ProcessVertices is taken from the
	stateblock, not the vertex declaration.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/ddraw/main.c, dlls/ddraw/vertexbuffer.c:
	ddraw: Get rid of FVFs.
	Remove all IWineD3DDevice::SetFVF calls and instead create converted
	vertex declarations and use them. The idea is to remove the FVF paths
	from wined3d to simplify the code, and optimize the vertex declaration
	codepath.

2007-04-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Implement CreateVertexDeclarationFromFVF.

2007-04-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add a method to create a declaration from a fvf.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not allocate surfaces unless needed.

2007-04-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/fdi.c:
	cabinet: Make sure we don't try to close an invalid file handle.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/symbol.c:
	winedbg: Properly handle EOF on input.

2007-04-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/resource.c:
	kernel32/tests: Resource functions are not implemented on win98.

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: SetupCopyOEMInfA is not available on NT4.

2007-04-25  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: Set modify state when removing text.

2007-04-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix a typo.

	* dlls/dnsapi/query.c:
	dnsapi: Constify some variables.

2007-04-25  Hans Leidekker <hans@it.vu.nl>

	* programs/expand/Makefile.in, programs/expand/expand.c:
	expand.exe: Add support for cabinet files.

	* dlls/msi/msi.spec, dlls/msi/registry.c:
	msi: Add a stub implementation for MsiEnumProductsEx{A, W}.

	* dlls/shell32/iconcache.c, dlls/shell32/shell32.spec:
	shell32: Add a stub implementation for SHMapIDListToImageListIndexAsync.

2007-04-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/content.c:
	hhctrl.ocx: Don't insert content item that could not be merged.

2007-04-25  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: SetupDiCreateDeviceInfoListExW is not implemented on win98.

	* dlls/kernel32/tests/path.c:
	kernel32/tests: GetLongPathNameW is not implemented on win98.

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: GetComputerNameW is not implemented on win98.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: CreateRemoteThread is not implemented on win98.

2007-04-25  Emmanuel Maillard <mahanuu@free.fr>

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_Reset.

	* dlls/winecoreaudio.drv/coremidi.h, dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_GetVolume and MIDIOut_SetVolume.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_LongData.

	* dlls/winecoreaudio.drv/coremidi.h, dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_Data.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_Prepare and MIDIOut_Unprepare.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDIOut_GetDevCaps and MIDIOut_GetNumDevs.

	* dlls/winecoreaudio.drv/midi.c:
	winecoreaudio: Implement MIDI_NotifyClient, MIDIOut_Open and MIDIOut_Close.

	* configure, configure.ac, dlls/winecoreaudio.drv/Makefile.in,
	  dlls/winecoreaudio.drv/audiounit.c,
	  dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/coreaudio.h,
	  dlls/winecoreaudio.drv/coremidi.c, dlls/winecoreaudio.drv/coremidi.h,
	  dlls/winecoreaudio.drv/midi.c,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec:
	winecoreaudio: Initial MIDI support on Mac OS X.

2007-04-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/msipriv.h, dlls/msi/query.h,
	  dlls/msi/streams.c, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Implement special handling for the _Streams table.

2007-04-25  Rob Shearman <rob@codeweavers.com>

	* dlls/atl/atl_main.c:
	atl: AtlModuleGetClassObject should store an intermediate pointer in obj->pCF
	and then query this for the requested interface.
	Return CLASS_E_CLASSNOTAVAILABLE instead of E_FAIL.

	* dlls/atl/atl_main.c:
	atl: Use the first entry in the object map in AtlInternalQueryInterface when
	IUnknown is requested.

	* tools/winebuild/import.c:
	winebuild: Refer to strings used in generated stubs by symbol rather than by
	offset to avoid problems when the compiler aligns the strings by 2 or more bytes.

2007-04-25  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Add required parameter to CreateThread (for Win9x and WinME).

2007-04-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Do not check for non-NULL before HeapFree'ing a variable as the
	check is redundant.

	* dlls/dbghelp/module.c, dlls/gdi32/tests/font.c, dlls/imm32/imm.c,
	  dlls/msvfw32/msvideo_main.c, dlls/ntdll/tests/port.c,
	  dlls/ole32/storage32.c, dlls/winex11.drv/xfont.c, dlls/wininet/ftp.c,
	  dlls/wininet/internet.c, dlls/winspool.drv/info.c,
	  programs/oleview/tree.c, programs/oleview/typelib.c:
	janitorial: Pass HEAP_ZERO_MEMORY as flag to HeapAlloc() instead of zeroing
	out the allocated memory in a later call.

2007-04-25  Yuval Fledel <yuvalfl@gmail.com>

	* include/ntsecpkg.h:
	include: Introduce SECPKG_INTERFACE_VERSION and extend PSECPKG_FUNCTION_TABLE
	accordingly.

2007-04-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmband/dmutils.c:
	dmband: Constify some variables.

	* dlls/dmstyle/dmutils.c:
	dmstyle: Constify some variables.

	* dlls/dmime/dmutils.c:
	dmime: Constify some variables.

	* dlls/dmloader/debug.c, dlls/dmloader/debug.h:
	dmloader: Constify some variables.

	* dlls/dmscript/dmscript_main.c, dlls/dmscript/dmscript_private.h:
	dmscript: Constify a variable.

	* dlls/dmusic/dmusic_main.c, dlls/dmusic/dmusic_private.h:
	dmusic: Constify a variable.

	* dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/dmcompos_private.h:
	dmcompos: Constify a variable.

2007-04-24  Michał Wiernowolski <mihalw@gmail.com>

	* dlls/winealsa.drv/midi.c:
	winealsa: Improved handling of SysEx MIDI messages.

2007-04-24  Aric Stewart <aric@codeweavers.com>

	* dlls/usp10/usp10.c:
	usp10: Do not crash in ScriptPlace if pABC is null.

2007-04-24  Tom Spear <speeddymon@gmail.com>

	* programs/winecfg/driveui.c:
	winecfg: Change WINE_ERR to WINE_TRACE since there is no real error.

2007-04-24  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/module.c:
	kernel32: Add the directory the executable was loaded from to the module search
	path if the module file name doesn't contain a path.

	* dlls/msi/action.c:
	msi: Fix an off-by-one error when calculating the path and filename for the
	action data in the SelfRegModules action.
	The backslash is in p[0], not p[1].

	* dlls/msi/package.c:
	msi: Create the _Property table as a temporary table so that the properties
	aren't saved to the .msi file.

	* dlls/msi/table.c:
	msi: Set rec to NULL after calling msiobj_release on it in msi_create_table
	so that we don't call msiobj_release on it again.

2007-04-24  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement Get/SetControlDetails in mixer.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement GetLineControls in mixer.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement mixer controls, and add GetLineInfo.

	* dlls/winealsa.drv/mixer.c:
	winealsa: Implement opening/closing and caps of device.

	* dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/mixer.c,
	  dlls/winealsa.drv/winealsa.drv.spec:
	winealsa: Introduce mixer code.

2007-04-23  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/table.c:
	msi: Add a non-persistent string instead of a persistent one if the table or
	row is non-persistent.

	* dlls/msi/create.c, dlls/msi/query.h, dlls/msi/sql.y,
	  dlls/msi/tests/db.c:
	msi: All columns being temporary means the table is non-persistent.
	The HOLD keyword just means that the non-persistent data in the table
	should be kept around, not that the table is temporary.

2007-04-24  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Add a persistent flag to tables.
	Implement MSI_DatabaseIsTablePersistent.

2007-04-23  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Don't add info to the _Columns table for non-persistent tables.

	* dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/select.c,
	  dlls/msi/table.c:
	msi: Add support for adding temporary/non-persistent data to tables.

	* dlls/msi/database.c:
	msi: The HOLD keyword implies a temporary table, whereas database importing
	should lead to permanent tables, so remove the HOLD keyword.

	* dlls/msi/table.c:
	msi: Create the table directly in create_table instead of requiring it to be
	loaded after saving.

	* dlls/msi/create.c, dlls/msi/query.h, dlls/msi/table.c:
	msi: Move table creation to table.c.

	* dlls/msi/table.c:
	msi: Store the column info in the MSITABLE structure.
	Load the data on view creation for simplicity instead of view execution.

	* dlls/msi/table.c:
	msi: Remove the hash table for a column when one of its values is modified
	since it will now be invalid.

	* dlls/msi/msipriv.h, dlls/msi/string.c:
	msi: Cleanup unneeded string table functions.
	Make string table functions that aren't used outside of string.c static.

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/string.c,
	  dlls/msi/table.c:
	msi: Move string loading and saving to string.c.

	* dlls/msi/msipriv.h, dlls/msi/string.c, dlls/msi/table.c:
	msi: Add support for non-persistent strings.
	Store the loaded refcount in the string table.

2007-04-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c, dlls/comctl32/tests/imagelist.c:
	comctl32: Add more image list tests, fix one problem found.

2007-04-24  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Use A-version for registry functions.

2007-04-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c:
	dinput: Constify some variables.

2007-04-24  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Make service_start_process return the pid to the caller.

	* dlls/advapi32/service.c:
	advapi32: Make struct service_data_t have the new SERVICE_STATUS_PROCESS struct.

2007-04-23  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/README, programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support for DEL filename /s.

2007-04-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/localui.c, dlls/localui/localui.h:
	localui: Implement ConfigurePortUI for COMx.

	* dlls/localui/localui.c:
	localui: Avoid crash on NULL pointer.

2007-04-23  Lei Zhang <thestig@google.com>

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/tests/Makefile.in,
	  dlls/comdlg32/tests/filedlg.c:
	comdlg32: Initialize CommDlgExtendedError() return value for file dialogs.

2007-04-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  include/wine/wined3d_interface.h:
	wined3d: The second parameter to glTexImage3DEXT isn't a GLenum.

	* dlls/wined3d/volume.c:
	wined3d: Improve IWineD3DVolumeImpl_LoadTexture TRACE output.

	* dlls/wined3d/device.c:
	wined3d: Actually use the calculated mipmap surface sizes in
	IWineD3DDeviceImpl_CreateVolumeTexture.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Output pretty GL errors in checkGLcall and vcheckGLcall.

2007-04-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Fix the handling of overflows in PathCombine[AW].

	* dlls/comctl32/commctrl.c, dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: In CreateToolbarEx the default bitmap size is also 16x16.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't execute TB_GETBUTTONINFO if cbSize is invalid.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge TOOLBAR_GetButtonInfoA and TB_GetButtonInfoW.

2007-04-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

2007-04-23  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winecfg/Pl.rc, programs/winecfg/winecfg.rc:
	winecfg: Add Polish translation.

2007-04-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/wavein.c, dlls/winealsa.drv/waveout.c:
	winealsa: Remove disabled code.
	SND_PCM_ASYNC was needed to get asynchronous callbacks, but they are
	not used any more, so remove the code.

	* dlls/winealsa.drv/waveinit.c:
	winealsa: Clear WAVECAPS_DIRECTSOUND for capture.

2007-04-19  David Adam <David.Adam@math.cnrs.fr>

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMQuaternionSlerp.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMQuaternionFromRotation.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMMatrixFromQuaternion.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorRotate.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c:
	d3drm: Implement D3DRMQuaternionMultiply.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorReflect.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c:
	d3drm: Implement D3DRMVectorRandom.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorNormalize.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorscale.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorModulus.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorDotProduct.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DRMVectorCrossProduct.

	* dlls/d3drm/d3drm.spec, dlls/d3drm/math.c, dlls/d3drm/tests/vector.c:
	d3drm: Implement D3DVectorSubtract.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/d3drm/Makefile.in, dlls/d3drm/d3drm.spec, dlls/d3drm/math.c,
	  dlls/d3drm/tests/Makefile.in, dlls/d3drm/tests/vector.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	d3drm: Implement D3DRMVectorAdd.

	* include/Makefile.in, include/d3drmdef.h:
	include: Add d3drmdef.h header.

2007-04-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/amstream/amstream.c, dlls/amstream/main.c,
	  dlls/amstream/mediastream.c, dlls/amstream/regsvr.c:
	amstream: Exclude unused headers.

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/factory.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/icmstream.c,
	  dlls/avifil32/regsvr.c, dlls/avifil32/tmpfile.c:
	avifil32: Exclude unused headers.

	* dlls/avicap32/avicap32_main.c:
	avicap32: Exclude unused header.

	* dlls/advpack/advpack.c, dlls/advpack/install.c, dlls/advpack/reg.c:
	advpack: Exclude unused headers.

	* dlls/acledit/main.c:
	acledit: Exclude unused headers.

	* dlls/activeds/activeds_main.c:
	activeds: Exclude unused headers.

2007-04-22  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: More tests for RegDeleteTreeA.

2007-04-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Use AC_SEARCH_LIBS for the Solaris libs to avoid unused function
	checks.

2007-04-23  Ben Taylor <sol11x86@comcast.net>

	* configure, configure.ac:
	configure: Fix to properly recognize functions on Solaris.

2007-04-20  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Drop unplayed frames instead of waiting for them.

2007-04-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/msipriv.h, dlls/msi/record.c:
	msi: Abstract MSI_RecordSetStream.

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Add an internal MSI_ViewModify.

2007-04-21  Yuval Fledel <yuvalfl@gmail.com>

	* dlls/rsaenh/handle.c, dlls/rsaenh/handle.h, dlls/rsaenh/rsaenh.c:
	rsaenh: Convert handle type from unsigned int to HCRYPTKEY.

	* include/Makefile.in, include/ntsecpkg.h:
	include: Introduce ntsecpkg.h.

2007-04-19  EA Durbin <ead1234@hotmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/sxs/Makefile.in, dlls/sxs/sxs.c, dlls/sxs/sxs.spec:
	sxs: Add new dll stub.

2007-04-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/file.c,
	  server/protocol.def:
	server: Return a more correct fd type for anonymous files.

	* dlls/version/tests/info.c:
	version: Avoid size_t type in traces.

	* dlls/dbghelp/msc.c:
	dbghelp: Don't print garbage chars in ERR message.

2007-04-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/light.c, dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/utils.c, dlls/ddraw/viewport.c:
	ddraw: Constify some variables.

2007-04-22  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* dlls/advapi32/crypt_des.c:
	advapi32: Fix one byte array overflow during DES unhash.

2007-04-22  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/service.c:
	advapi32: Add EnumServicesStatusExA/W stub implementation.

	* dlls/advapi32/service.c, include/winsvc.h:
	advapi32: Make SERVICE_STATUS_PROCESS match the declaration in MSDN and PSDK.

2007-04-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/action.c, include/msidefs.h, include/odbcinst.h:
	msi: Install data sources in the InstallODBC custom action.

	* dlls/msi/action.c:
	msi: Install translators in the InstallODBC custom action.

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec, include/urlmon.idl:
	urlmon: Add an implementation for CreateURLMonikerEx based on existing code
	for CreateURLMoniker.

2007-04-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/capture.c:
	dsound: Don't deadlock in capture because of callback.

2007-04-20  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/dsound/primary.c:
	dsound: Make sure we're holding the lock on Drop And Stop.

2007-04-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/msipriv.h, dlls/msi/package.c, dlls/msi/tests/format.c,
	  dlls/msi/tests/package.c:
	msi: Add the _Property table back, with tests.

	* dlls/msi/msipriv.h, dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Return MSICONDITION_NONE in MsiDatabaseIsTablePersistent if the table
	doesn't exist.

2007-04-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-04-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c, dlls/comctl32/tests/imagelist.c:
	comctl32: Add an image list storage test, make it pass under Wine.

2007-04-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.h:
	comctl32: Use packing only for public ILHEAD structure, 2 bytes packing
	is enough.

2007-04-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix an off by one error in ImageList_Remove.

2007-04-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Thunk GetFileSecurityW to NtQuerySecurityObject.

2007-04-20  Lei Zhang <thestig@google.com>

	* tools/wineshelllink:
	wineshelllink: Fall back to $HOME if $HOME/Desktop does not exist.

2007-04-20  Yuval Fledel <yuvalfl@gmail.com>

	* dlls/userenv/userenv_main.c:
	userenv: Make GetProfileType report a normal (non-roaming) profile.

	* include/wincrypt.h:
	include: Fix a typo in wincrypt.h.

2007-04-20  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/state.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove usesFog flag from IWineD3DVertexShaderImpl.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Fix fog with shader test.

2007-04-20  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

	* dlls/winmm/winmm.c:
	winmm: Pass the right message to hwnd from mixer callback.

2007-04-20  Gerald Pfeifer <gerald@pfeifer.com>

	* server/fd.c:
	server: Silence compiler warning in fd_queue_async().

2007-04-20  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/xcopy/Ru.rc, programs/xcopy/rsrc.rc:
	xcopy: Add Russian resource.

2007-04-20  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* dlls/advapi32/service.c:
	advapi32: Make QueryServiceStatus use QueryServiceStatusEx.

	* dlls/advapi32/service.c, include/winsvc.h:
	advapi32: Implement QueryServiceStatusEx.
	Based on a patch by Anastasius Focht.

2007-04-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: The cursor texture doesn't have GL_APPLE_client_storage backing.

2007-04-19  Huw Davies <huw@codeweavers.com>

	* dlls/user32/edit.c:
	user32: Cache the text buffer length to avoid excessive calls to strlenW.

	* dlls/user32/edit.c:
	user32: Add a function to return the length of the text buffer.

	* dlls/user32/edit.c:
	user32: Keep track of whether the app has asked for the text buffer handle.

2007-04-19  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Make the comparison for system link font replacement not case sensitive.

2007-04-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/indexbuffer.c:
	wined3d: Do not upload to the vbo if there's nothing to do.

2007-04-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Constify some variables.

2007-04-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_De.rc, dlls/localspl/spl_En.rc,
	  dlls/localspl/spl_Fr.rc, dlls/localspl/spl_Ko.rc,
	  dlls/localspl/spl_No.rc, dlls/localspl/spl_Pl.rc:
	localspl: ConfigurePort is now in localui.dll.

	* dlls/localui/Makefile.in, dlls/localui/localui.c,
	  dlls/localui/localui.h, dlls/localui/localui.rc,
	  dlls/localui/ui_En.rc:
	localui: Implement ConfigurePortUI.

	* dlls/localspl/localmon.c:
	localspl: DeletePort is now in localui.dll.

2007-04-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/msc.c:
	dbghelp: Constify some variables.

2007-04-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Remove GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT from
	debug_fbostatus().

2007-04-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell32.spec, dlls/shell32/shlexec.c:
	shell32: Add a stub implementation for OpenAs_RunDLL.

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Correct the spec file entry for _makepath.

	* dlls/dnsapi/query.c, dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Only call res_init() once per process.

2007-04-18  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shell32_main.c:
	shell32: SHGFI_EXETYPE flag should have the files returning 0 if they are
	DLL images.

2007-04-18  Alexandre Julliard <julliard@winehq.org>

	* server/named_pipe.c:
	server: Don't give out read/write access to the named pipe device.

	* server/fd.c, server/named_pipe.c:
	server: Use the standard file descriptor wait queue for named pipe server
	async waits.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Moved the FSCTL_PIPE_LISTEN implementation to the server.

	* server/fd.c, server/file.h:
	server: Allow specifying the status code to return on file descriptors that
	don't have a Unix fd.

2007-04-17  Ken Thomases <ken@codeweavers.com>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Test that quoting file path prevents masking at space.

	* dlls/shell32/shlexec.c:
	shell32: Don't break file path at spaces in ShellExecuteEx if quoted.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Added to-do test showing a bug with file paths with spaces.
	If ShellExecuteEx is asked to execute a file which has a space in its path,
	and if there exists a "masking" file whose name matches the path truncated
	at a space, then ShellExecuteEx launches the masking file instead.

2007-04-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c:
	d3d9: Rework the converted vertex declaration management.
	Instead of creating a converted declaration each time SetFVF is
	called, exactly one declaration is created for each FVF(on demand) and
	stored for the lifetime of the device. This avoids memory leaks and
	makes keeping track of converted declarations easier. Wether a
	declaration is converted from a fvf or not is now a static information
	inside the declaration. Those declarations are not destroyed in
	VertexDeclaration::Release, they stay for the lifetime of the
	device. This keeps us free from tracking the declaration through
	stateblocks

2007-04-14  Bernd Buschinski <b.buschinski@web.de>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix drawStridedSlow typo.

2007-04-17  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Use memcmp() instead of strcmp() so that we can check
	'intrazeroed' strings.

2007-04-17  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* dlls/winspool.drv/Es.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Add Spanish resources.

2007-04-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/uxtheme/msstyles.h:
	uxtheme: Fix conflicting declarations.

2007-04-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/minidump.c, dlls/dbghelp/module.c:
	dbghelp: Constify some variables.

2007-04-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localui/Makefile.in, dlls/localui/localui.c:
	localui: Implement DeletePortUI.

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c:
	localspl: Implement XcvData_AddPort.

	* .gitignore, dlls/Makefile.in, dlls/spoolss/Makefile.in:
	spoolss: Build the import library.

2007-04-17  Aric Stewart <aric@codeweavers.com>

	* programs/taskmgr/Ja.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Add Japanese resource.

2007-04-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Move the FSCTL_PIPE_WAIT ioctl implementation to the server.

	* include/wine/server_protocol.h, server/fd.c, server/file.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c,
	  tools/make_requests:
	server: Add a specific data type for ioctl codes so they can be printed
	as symbols.

	* dlls/kernel32/sync.c, dlls/ntdll/file.c, dlls/ntdll/nt.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/process.c, dlls/ntdll/server.c,
	  dlls/ntdll/sync.c, dlls/ntdll/thread.c, dlls/ntdll/time.c,
	  dlls/user32/message.c, include/wine/server_protocol.h,
	  server/async.c, server/fd.c, server/file.h, server/mailslot.c,
	  server/main.c, server/named_pipe.c, server/object.h,
	  server/process.c, server/process.h, server/protocol.def,
	  server/queue.c, server/registry.c, server/request.c, server/serial.c,
	  server/thread.c, server/thread.h, server/timer.c, server/trace.c,
	  server/winstation.c, tools/make_requests:
	server: Change the timeout handling to use NT-style 64-bit timeouts everywhere.

2007-04-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/version/info.c, dlls/version/tests/info.c,
	  dlls/version/tests/version.rc:
	version: Add a VerQueryValue test, make it mostly pass under Wine.

2007-04-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c:
	d3d9: Do not allow Direct3D9::GetAdapterModeCount to be called with
	D3DFMT_UNKNOWN.

2007-04-16  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi32/dc.c, dlls/gdi32/gdi32.spec:
	gdi32: Add a stub for CancelDC.

2007-04-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Implement ColorFill using FBOs, if they're being used.

	* dlls/wined3d/swapchain.c:
	wined3d: Don't try to clear the depth stencil if there is none.

	* dlls/wined3d/device.c:
	wined3d: Properly handle the difference between GL_BACK and GL_FRONT for
	onscreen surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Use surface_get_gl_buffer where appropriate.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add a function to determine if a surface is the front or the backbuffer
	for a swapchain, and return the corresponding GLenum.

	* dlls/wined3d/device.c:
	wined3d: Set the FBO drawbuffer using glDrawBuffer when ARB_DRAW_BUFFERS is
	not supported.

	* dlls/wined3d/device.c:
	wined3d: Ignore SetTextureStageState on unsupported texture stages.

	* dlls/wined3d/utils.c:
	wined3d: Use GL_UNSIGNED_BYTE as data type for WINED3DFMT_A8.

	* dlls/wined3d/device.c:
	wined3d: Dump the FBO's attachments when its status is
	GL_FRAMEBUFFER_UNSUPPORTED_EXT.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a function for dumping FBO status codes.

2007-04-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/fd.c, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Move the server part of device unmounting to the ioctl processing.

	* dlls/kernel32/tests/pipe.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Implement the FSCTL_PIPE_DISCONNECT ioctl on the server side.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/change.c,
	  server/fd.c, server/file.c, server/file.h, server/mailslot.c,
	  server/named_pipe.c, server/process.c, server/protocol.def,
	  server/queue.c, server/request.c, server/request.h, server/serial.c,
	  server/signal.c, server/sock.c, server/thread.c, server/trace.c:
	server: Add infrastructure for ioctl server request.

	* dlls/kernel32/sync.c:
	kernel32: Use the correct access rights when opening named pipes.

2007-04-16  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c:
	wined3d: Remove resourceStoreCriticalSection.

	* dlls/user32/cursoricon.c:
	user32: Fix to succeed reliably in test where it works by accident.

2007-04-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/acledit/Makefile.in, dlls/acledit/acledit.spec,
	  dlls/acledit/main.c:
	acledit: Stubbed out acledit DLL, needed by SysInternals process explorer.

2007-04-16  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/mapi32/mapi32.spec, dlls/mapi32/mapi32_main.c:
	mapi32: MAPIAdminProfiles stub.

2007-04-15  Alban Browaeys <prahal@yahoo.com>

	* dlls/wininet/urlcache.c:
	wininet: Fix szCacheContent in URLCacheContainer_OpenIndex.

	* dlls/msi/action.c:
	msi: Move msi_free(msiFilePath) to enable ERR message to use it before it
	is freed.

2007-04-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/device.c, dlls/ddraw/ddraw.c, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/palette.c, dlls/wined3d/query.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	d3d: Remove dependency on ddraw.h header.

2007-04-16  Detlef Riekenberg <wine.dev@web.de>

	* include/winspool.h:
	include/winspool: Declare missing function.

2007-04-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/ordinal.c:
	slwapi: Make function definitions and declarations agree.

	* dlls/shlwapi/reg.c, dlls/shlwapi/thread.c:
	slwapi: Make function definitions and declarations agree.

	* dlls/user32/network.c, include/wine/winnet16.h,
	  include/wine/winuser16.h:
	user32: Make function definitions and declarations agree.

	* dlls/crypt32/sip.c, dlls/crypt32/store.c, dlls/crypt32/str.c:
	crypt32: Constify some variables.

	* dlls/crypt32/protectdata.c:
	crypt32: Constify some variables.

2007-04-13  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/directory.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Implement a basic 'more'.
	This implements a basic more, eg 'dir | more' or 'more file.c'
	but it does not support the flags or keys which can control it.
	Basically its not worth implementing those, as in some modes
	we cannot read a single key, we have to wait for <enter> anyway.

2007-04-13  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winmm/tests/mixer.c, dlls/winmm/winmm.c:
	winmm: Implement CALLBACK_WINDOW.

2007-04-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c, dlls/ddraw/ddraw.c, dlls/wined3d/directx.c:
	d3d: Enumerate palettized formats for ddraw.

2007-04-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-04-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c, dlls/msi/tests/install.c:
	msi: Add handling for the concurrent install custom action.

	* dlls/msi/action.c:
	msi: Run the InstallExecute sequence if the InstallUISequnce table is empty.

	* dlls/msi/custom.c:
	msi: Generalize the msi_custom_action_info struct so other custom actions can
	use it.

	* dlls/msi/tests/install.c:
	msi: Add tests for the concurrent installation custom action.

2007-04-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/base64_codec.c, dlls/secur32/dispatcher.c,
	  dlls/secur32/ntlm.c, dlls/secur32/util.c:
	secur32: Move NTLM debug output to a seperate "ntlm" channel.

2007-04-13  Francois Gouget <fgouget@codeweavers.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Fix and extend the RegQueryValueEx() tests.
	- Added tests for empty and zero-byte strings. Wine passes these tests, sort of.
	- Check that the returned string is correct.
	- All known Windows versions implement RegQueryValueExA(), so complain if it
	is not implemented.
	- Only allow the Win9x quirks for the Ansi version.
	- Query the name2A/W value for the string2A/W tests!
	- The test_hkey_main_Value_A/W() functions were doing a sizeof() on the string
	parameter to compute the string's full size!
	- We must reset GLE before each test, otherwise Win9x skips all but the
	first test.

2007-04-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Create DirectSound device and buffer at filter creation and connection
	respectively.

2007-04-13  Chia-I Wu <b90201047@ntu.edu.tw>

	* dlls/kernel32/locale.c:
	kernel32: Fix non-terminated separator string.

2007-04-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.35.

----------------------------------------------------------------
2007-04-13  Huw Davies <huw@codeweavers.com>

	* dlls/imagehlp/integrity.c:
	imagehlp: Add support for the indices array passed to ImageEnumerateCertificates.

2007-04-12  András Kovács <andras@debian.sth.sze.hu>

	* programs/winecfg/appdefaults.c:
	winecfg: Add Windows Vista version option.

	* dlls/ntdll/version.c:
	ntdll: Add Vista version option.

2007-04-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: Remove superfluous semicolons.

	* dlls/ole32/rpc.c, dlls/ole32/usrmarshal.c:
	ole32: Void functions should not return a value.

2007-04-12  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/baseshader.c:
	wined3d: Mark vertex shader 3.0 as foggy shaders if they write out the fog coord.

2007-04-12  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix some swizzles on scalars.

2007-04-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Hack to disable XInitThreads when an XIM is used.

2007-04-12  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal: GetMonthRange Tests.

2007-04-13  Rob Shearman <rob@codeweavers.com>

	* dlls/msi/files.c:
	msi: Provide UI action data for uncompressed files, not just compressed ones.

2007-04-12  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Add tests for RpcServerListen and friends.

2007-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Fix vertex decl test.

2007-04-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_COMPOSESETTINGS and IDM_HTMLEDITMODE stub implementation.

	* dlls/mshtml/persist.c:
	mshtml: Added IPersistFile::Save implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Correctly handle utf-16 encoded pages.

	* dlls/mshtml/htmlbody.c:
	mshtml: Added IHTMLBodyElement::get_background implementation.

	* dlls/mshtml/htmlbody.c:
	mshtml: Change TRACE to FIXME in stubs.

2007-04-12  Dan Kegel <dank@kegel.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: GetAsyncKeyState must check mouse buttons, too.

2007-04-12  Alexandre Julliard <julliard@winehq.org>

	* server/change.c, server/fd.c, server/file.h, server/process.c,
	  server/queue.c, server/request.c, server/signal.c, server/thread.c:
	server: Don't bother with default entry points for objects that don't even
	return an fd.

	* server/mailslot.c:
	server: Create a separate fd object for each mailslot writer. Make them
	first-class file handles.

2007-04-12  Marcus Meissner <meissner@suse.de>

	* configure, configure.ac:
	configure: Include <sys/types.h> before including <linux/joystick.h>.

2007-04-11  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/heap.c:
	ntdll: Take size of the arena from the current pointer before advancing.

2007-04-11  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Fix regression when launching a fully qualified program.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/wcmd.h:
	cmd.exe: Add prompting and COPYCMD plus /Y support to move.

	* programs/cmd/builtins.c:
	cmd.exe: Add move support for wildcards and directories.

	* programs/cmd/builtins.c:
	cmd.exe: Add support for move with simple wildcards.

2007-04-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/user32.spec, dlls/user32/winpos.c:
	user32: Add RealChildWindowFromPoint.

2007-04-12  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/advpack/tests/files.c:
	advpack/tests: Don't hardcode the windows directory.

2007-04-12  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Implement level 1 support for EnumPrinters.

2007-04-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/server.c:
	ntdll: Fix a compiler warning.

2007-04-12  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Do not crash in MsiGetUserInfo if org, user or serial are not present,
	instead return USERINFOSTATE_ABSENT.

2007-04-11  Lei Zhang <thestig@google.com>

	* dlls/user32/tests/msg.c:
	user32: WM_ACTIVATEAPP on minimize message test.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: More monthcal hit tests.

2007-04-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Reset the is_extracted flag when every cabinet is loaded.

2007-04-12  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* programs/winecfg/audio.c:
	winecfg: Close audio driver when not needed any more.

2007-04-11  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, dlls/localui/Makefile.in, dlls/localui/localui.rc:
	localui: Add version resource.

2007-04-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/exception.c, dlls/ntdll/relay.c, dlls/ntdll/signal_i386.c:
	ntdll: Remove superfluous semicolons.

	* dlls/ntdll/string.c:
	ntdll: Void functions should not return a value.

2007-04-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Fix RegQueryValueExA test for win9x and ME.

2007-04-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/oldconfig.c:
	kernel32: Allow any amount of whitespace between the words ANSI and SCSI in
	/proc/scsi/scsi.

2007-04-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Fix a couple of problems with negative lfWidth test.

2006-10-14  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for the converted vertex decl.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Break out two helper functions from test_fvf_to_decl.

2007-04-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/d3d9/tests/visual.c,
	  dlls/d3d9/vertexdeclaration.c:
	d3d9: Fix the circular converted vertex declaration reference.

2007-04-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: AddRef the device in IDirect3DVertexDeclaration9::AddRef.

2007-04-11  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Dirtify the shader and declaration states if the bound interface
	is destroyed.

2007-04-11  Kai Blin <kai.blin@gmail.com>

	* dlls/ntdll/time.c:
	ntdll: Don't use settimeofday() to attempt to set the timezone.

2007-04-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtermapper.c:
	quartz: Implement IAMFilterData interface for IFilterMapper.

2007-04-11  Francois Gouget <fgouget@free.fr>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems that don't support nameless structs
	or unions.

2007-04-10  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlfolder.c:
	shell32: Use _ILSimpleGetTextW instead of using _ILGetTextPointer
	to be able to make use of FileStructW and avoid W->A->W roundtrips if
	possible.

2007-04-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Have _ILCreateFromFindDataW also create a FileStructW type of pidl.
	Based on a patch by Aric Stewart.
	Also get rid of _ILCreateFromFindDataA and _ILCreateFromPatA.

2007-04-09  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/debughlp.c, dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Update the debug functions to handle Unicode value pidl.
	Add _ILIsUnicode as a simple pidl test.

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Avoid unneeded A->W conversions in _ILSimpleGetTextW.
	Implement _ILGetTextPointerW, though it does little now.
	Handle the LPWSTR from _ILGetTextPointerW in _ILSimpleGetText and
	_ILSimpleGetTextW.

2007-04-11  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/font.c:
	msi: Register fonts with full target paths as applications can and will install
	fonts to places other than the windows/fonts directory.

2007-04-11  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Use skip when OpenSCManagerA is not implemented.

2007-04-11  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Remove redundant NULL check before HeapFree().

2007-04-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/cpp.c:
	msvcrt: Remove superfluous semicolons.

2007-04-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ws2_32/socket.c, include/wine/server.h,
	  include/wine/server_protocol.h, server/fd.c, server/protocol.def,
	  server/trace.c:
	ntdll: Store the file access and options in the fd cache, and get rid of the
	dynamic flags.
	This avoids server round-trips for all file I/O.

	* server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/process.c,
	  server/queue.c, server/request.c, server/serial.c, server/signal.c,
	  server/sock.c, server/thread.c:
	server: Rename the get_file_info function to get_fd_type and get rid of
	the flags.

	* server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/process.c,
	  server/queue.c, server/request.c, server/serial.c, server/signal.c,
	  server/sock.c, server/thread.c:
	server: Store the opening options in the file descriptor instead of in the
	individual objects.
	Allows moving the FD_FLAG_OVERLAPPED support to the generic
	get_handle_fd request handling.

	* dlls/kernel32/sync.c:
	kernel32: Add SYNCHRONIZE access to mailslot handles.
	Don't bother to request write access.

2007-04-06  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Improve printing considerably.
	Make fonts and the other measurements the correct size in relation to
	the actual printer resolution instead of thinking it uses the same
	resolution as the display.  Before fixed sized (and for most printer
	resolutions way to small) margins where used and the font size was
	taken directly from the screen font independent of the actual printer
	resolution, resulting in a completely unreadable micro text on most
	printouts.

2007-04-10  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/tests/misc.c, include/setupapi.h:
	setupapi: Implement SetupGetFileCompressionInfo on top of
	SetupGetFileCompressionInfoEx.

2007-04-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Dirtify the sampler used by IWineD3DSurface_PreLoad in
	IWineD3DSurfaceImpl_BltOverride.

	* dlls/wined3d/drawprim.c:
	wined3d: Disable the scissor test for depth blits.

	* dlls/wined3d/device.c:
	wined3d: Disable the scissor test in stretch_rect_fbo.

	* dlls/wined3d/device.c:
	wined3d: Remove some redundant IWineD3DSurface_PreLoad calls from
	stretch_rect_fbo.

	* dlls/wined3d/device.c:
	wined3d: Add some traces to stretch_rect_fbo.

2007-04-10  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/ppd.c:
	wineps.drv: Add a heuristic to cope with resolution strings of the form
	"nnnmmmdpi" (ie without the 'x' separator).

2007-04-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, server/mailslot.c, server/named_pipe.c:
	server: Explicitly shutdown closed pipes to prevent access from file descriptors
	cached in the client.

	* dlls/ntdll/file.c:
	ntdll: Determine the async read avail_mode flag from the client side.

	* dlls/ntdll/file.c:
	ntdll: Simplify the async read/write code now that most of the work is done
	in the server.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/sync.c,
	  dlls/ws2_32/socket.c, include/wine/server_protocol.h, server/async.c,
	  server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/process.c,
	  server/protocol.def, server/queue.c, server/request.c,
	  server/serial.c, server/signal.c, server/sock.c, server/thread.c,
	  server/trace.c:
	server: Add support for restarting an async I/O when the client side couldn't
	finish it right away.

2007-04-10  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/setupapi/tests/misc.c:
	setupapi/tests: Run tests on win98 again.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Make sure NT4 and W2K tests don't fail.

2007-04-10  Rob Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_desktop.c, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_mycomp.c:
	shell32: Return Unicode strings from all of the IShellFolder::GetDisplayNameOf
	functions in not running in Win9x mode.

2007-04-09  Lei Zhang <thestig@google.com>

	* dlls/comctl32/monthcal.c:
	comctl32: Fix first day of the week in monthcal.

2007-04-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mshtml/task.c:
	mshtml: Void functions should not return a value.

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c:
	crypt32: Constify some variables.

2007-04-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/tests/misc.c:
	setupapi: Avoid using sizeof in traces.

2007-04-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Remove duplicate tests.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/localui/tests/Makefile.in, dlls/localui/tests/localui.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	localui/tests: Add initial test.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/localui/Makefile.in, dlls/localui/localui.c,
	  dlls/localui/localui.spec:
	localui: Add localui.dll with stubs.

2007-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/misc.c:
	setupapi: Remove debug traces from allocation routines.

	* dlls/setupapi/tests/misc.c:
	setupapi: Add tests for SetupDecompressOrCopyFile.

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Implement SetupDecompressOrCopyFile{A, W}.

	* dlls/setupapi/tests/misc.c:
	setupapi: Add tests for SetupGetFileCompressionInfoEx.

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Implement SetupGetFileCompressionInfoEx{A, W}.

2007-04-09  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Set the stream offset to 0 in DrawPrimitiveUP/DrawIndexedPrimitiveUP.

	* dlls/wined3d/device.c:
	wined3d: Display the stream offset in GetStreamSource/SetStreamSource traces.

	* dlls/wined3d/directx.c:
	wined3d: Don't report render target formats we don't support as supported.

	* dlls/wined3d/directx.c:
	wined3d: Add some StretchRectFilterCaps.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the framebuffer blit extension to implement StretchRect.

	* dlls/wined3d/device.c:
	wined3d: Separate attaching a surface to an FBO from set_render_target_fbo.

	* dlls/wined3d/device.c:
	wined3d: Make bind_fbo a bit more generic.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add a function to dump WINED3DTEXTUREFILTERTYPE values.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fixup FBO depth attachments when the depth attachment is larger than
	the render target.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Handle FBO attachments slightly more efficiently.

2007-04-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/file.c:
	ntdll: Remove superflous NULL checks.

2007-04-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/file.c:
	ntdll: Add some test cases for asynchronous I/O.

	* dlls/kernel32/tests/mailslot.c, dlls/ntdll/file.c:
	ntdll: Use send(2) instead of write(2) for zero-byte writes to sockets.

2007-04-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/imm32/imm32.spec, dlls/w32skrnl/Makefile.in,
	  tools/winebuild/import.c:
	winebuild: Check if a given forward does exist in one of the imported dlls,
	fix a couple of problems detected.

2007-04-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/prop.c:
	mapi32: Void functions should not return a value.

	* dlls/kernel32/heap.c, dlls/kernel32/thunk.c, dlls/kernel32/vxd.c:
	kernel32: Remove superfluous semicolons.

2007-04-08  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Set the event regardless of the queue state.

2007-04-08  Chris Robinson <chris.kcat@gmail.com>

	* programs/winedbg/info.c:
	winedbg: Align module addresses to 8 characters.

2007-04-08  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/surface.c:
	wined3d: Issue an error when the render target is read back without
	SFLAG_INDRAWABLE being set.

	* dlls/wined3d/context.c:
	wined3d: Preload target in ActivateContext() for ORM_BACKBUFFER/ORM_PBUFFER.

2007-04-07  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/surface.c:
	wined3d: Allow np2 textures to be loaded for SFLAG_INDRAWABLE.

2007-04-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volumetexture.c:
	d3d9: Void functions should not return a value.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/device.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/texture.c, dlls/d3d8/volumetexture.c:
	d3d8: Void functions should not return a value.

2007-04-07  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/transform.c,
	  dlls/quartz/transform.h:
	quartz: Pass the media sample to the individual transform filter callbacks.
	This is so the filters can pass on and use timing, discontinuity, and other
	information stored in the sample as needed.

	* dlls/quartz/memallocator.c:
	quartz: Fix error with operator precedence.

	* dlls/quartz/pin.c:
	quartz: Fix ALIGN macros.

2007-04-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Let the debug channels work again.
	While I was at it, simplified the symbol lookup for the debug options.

2007-04-06  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/avisplit.c, dlls/quartz/waveparser.c:
	quartz: Make sure cached media samples are released for parser filters.

	* dlls/quartz/avisplit.c, dlls/quartz/parser.c, dlls/quartz/parser.h,
	  dlls/quartz/waveparser.c:
	quartz: Add a cleanup callback for parser filters to call on release.

2007-04-07  Felix Nawothnig <flexo@holycrap.org>

	* dlls/d3d8/device.c:
	d3d8: Add missing relay trace.

	* dlls/comctl32/treeview.c:
	comctl32: Allow enabling TVS_CHECKBOXES on the fly.

2007-04-06  Lei Zhang <thestig@google.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/registry.c:
	advapi32: Spelling fixes.

2007-04-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Index buffer data is unsigned.

	* dlls/wined3d/directx.c:
	wined3d: Set WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD caps3 cap.

2007-04-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/ddraw/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
	This is to allow StretchRect to pass the texture filter to WineD3D.
	DirectDraw sets the texture filter to WINED3DTEXF_NONE, simmilar to all
	other functions which do not need filtering.

2007-04-06  Stefan Dösinger <stefan@codeweavers.com>

	* include/wine/wined3d_caps.h:
	wined3d: Add D3DDEVCAPS3_* to the wined3d caps header.

2007-04-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* include/setupapi.h:
	include: Remove superfluous semicolons.

2007-04-06  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Add partial implementation of IReferenceClock for DSoundRenderer.

	* dlls/quartz/dsoundrender.c:
	quartz: Use more precise positioning information for the DSound filter's
	reference clock.

2007-04-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Rely on the server to queue the final APC for asynchronous read/write.

	* dlls/ntdll/file.c:
	ntdll: Reimplement NtWriteFile.
	Always try a write() before queuing an async I/O.
	Handle timeout waits for synchronous I/O entirely on the client side.
	Queue the final APC as a proper user APC.

	* dlls/ntdll/file.c:
	ntdll: Reimplement NtReadFile.
	Always try a read() before queuing an async I/O.
	Handle timeout waits for synchronous I/O entirely on the client side.
	Queue the final APC as a proper user APC.

2007-04-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
	user32: Windows uses ptMaxTrackSize to set an initial window size not ptMaxSize.

2007-04-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/mailslot.c:
	kernel32: Add a bit of slack to the mailslot timeout test.

2007-04-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h:
	comdlg32: Remove inappropriate const qualifier.

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg16.c:
	comdlg32: Constify some variables.

	* dlls/comdlg32/cdlg.h, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c:
	comdlg32: Constify some variables.

	* dlls/comdlg32/finddlg16.c, dlls/comdlg32/finddlg32.c:
	comdlg32: Constify some variables.

2007-04-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Fix a forward to user32.PrivateExtractIconExW.

2007-04-05  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_EXT_framebuffer_blit to extension handler.

2007-04-05  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Partially fix 'dir *.' (ie files with no extension).

	* programs/cmd/directory.c:
	cmd.exe: Make dir a* b* or dir a* b* /s mirror windows.

	* programs/cmd/directory.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Make dir support multiple parameters.

	* programs/cmd/directory.c:
	cmd.exe: Fix dir filename /s and resolve many output differences.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Attempt to launch pgm even if fails to locate it.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Only search for supplied command as-is if it includes an extension.
	Files with no extensions cannot be run as-is. This enables a directory
	with 'fred' and 'fred.bat' to correctly run fred.bat if just fred is
	executed.

2007-04-06  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/toolbar.c:
	comctl32: Allow destruction of toolbar in BN_CLICKED handler.

2007-04-06  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* programs/notepad/En.rc:
	notepad: Fix text label.

2007-04-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Send a notification when the filter graph clock changes.

2007-04-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Avoid releasing NULL objects.

2007-04-06  Felix Nawothnig <flexo@holycrap.org>

	* programs/taskmgr/procpage.c:
	taskmgr: Use default font for proc listview.

	* dlls/comctl32/header.c:
	comctl32: Use appropriate font for header drag image.

2007-04-05  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c:
	comctl32: Fix item rect calculation.

2007-04-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Demangle a C++ mangled string that is only a name with it's template
	argument list.

	* dlls/msvcrt/undname.c:
	msvcrt: Move the code to demangle a name with its template argument list out
	of get_class() and into a separate function.

2007-04-05  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/stubmanager.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Fix a hack which depended on the IID of the interface being marshaled
	to determine whether we were marshaling the remote unknown for the
	apartment or not.

2007-04-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Improve a number of stubs.

2007-04-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Make test for heap boundaries more strict in HEAP_FindSubHeap.

2007-04-05  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/moniker.h:
	ole32: Move declaration for FileMonikerImpl_DecomposePath from compobj_private.h
	to moniker.h.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole2.c,
	  dlls/ole32/tests/dragdrop.c:
	ole32: Don't release the registered drop targets in OleUninitialize.
	Do it in DLL_PROCESS_DETACH instead.

	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
	ole32: Check the input hwnd is valid in RevokeDragDrop.

	* dlls/ole32/ole2.c, dlls/ole32/tests/dragdrop.c:
	ole32: Check for COM not being initialised and an invalid window handle being
	input to RegisterDragDrop.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/dragdrop.c:
	ole32: Add tests for drag and drop functions.

2007-04-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/menu.c:
	user32/tests: Don't run unicode tests if not supported.

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Use GetModuleHandle and skip.

2007-04-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps.drv/driver.c, dlls/winspool.drv/tests/info.c:
	winspool: Add a test for DeviceCapabilities, fix some bugs found.

2007-04-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't access the IO_STATUS_BLOCK until the I/O operation is finished.

	* dlls/ntdll/file.c:
	ntdll: Avoid relying on the IO_STATUS_BLOCK for storing the current transfer
	count.

	* dlls/ntdll/file.c:
	ntdll: Avoid setting status in IO_STATUS_BLOCK until the I/O operation is done.

2007-04-05  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix GLSL cnd instruction.
	According to MSDN the cnd instruction should translate:
	dst = src0 > 0.5 ? src1 : src2;

2007-03-31  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Fix UpdateSurface for sourceRect != sourceWidth.

2007-04-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: Constify some variables.

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h:
	comdlg32: Constify some variables.

	* dlls/comdlg32/cdlg.h, dlls/comdlg32/colordlg.c:
	comdlg32: Constify some variables.

2007-04-04  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Add some tests for RegDeleteTreeA.

2007-04-04  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/stg_bigblockfile.c:
	ole32: Storage optimization.
	We do not need to unmap and remap all the victim pages with every
	resize as they are simply a cache. Provides significant speedup for
	saving large storage files.

2007-04-04  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/tests/exception.c:
	ntdll: Remove one exception test.

	* include/dinput.h:
	dinput: Add missing definition to public header.

2007-04-04  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winearts.drv/Makefile.in, dlls/winearts.drv/arts.c,
	  dlls/winearts.drv/arts.h, dlls/winearts.drv/audio.c,
	  dlls/winearts.drv/winearts.drv.spec, include/config.h.in,
	  programs/winecfg/Bg.rc, programs/winecfg/Cs.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ro.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/audio.c,
	  programs/winecfg/libraries.c, programs/winecfg/resource.h,
	  tools/winapi/win32.api:
	winearts.drv: Kill off winearts.

2007-04-04  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib16.c:
	ole32: In 16-bit OLE, LPOLESTR uses multibyte, not Unicode characters so make
	LoadTypeLib16 take an LPSTR instead of LPOLESTR.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/tests/compobj.c:
	ole32: Keep a list of the loaded dlls for each apartment.
	Use it to make CoFreeUnusedLibraries per-apartment.

	* dlls/ole32/compobj.c:
	ole32: Cache the address for the library's DllGetClassObject and DllCanUnloadNow
	in the OpenDll list entry.

	* dlls/ole32/tests/compobj.c:
	ole32: Add a test that shows CoFreeUnusedLibraries only frees unused libraries
	from the current apartment.

	* dlls/ole32/compobj.c:
	ole32: Move the handling of loading a dll and getting an in-process object
	from it to an apartment-specific function.
	Use it to implement apartment_hostobject in a cleaner way so that it is
	guaranteed to not recurse.

	* dlls/ole32/compobj.c:
	ole32: Move the in-process module loading to COMPOBJ_DllList_Add.

	* dlls/ole32/compobj.c:
	ole32: Convert the OpenDll list to a standard Wine list.
	Store the library name and make it reference counted.

2007-03-29  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Add support for float texture formats back in.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix GLSL cnd instruction for INF and NAN arguments.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix GLSL cmp instruction for INF and NAN arguments.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Tell filters to stop sending data when the chain is broken.

2007-04-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/memallocator.c:
	quartz: Don't call ReleaseSemaphore on NULL semaphore handles.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Implement Get/SetSyncSource for the FilterGraph's IMediaFilter interface.

2007-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, server/change.c:
	server: Use the standard file descriptor signal mechanism for directory changes.

	* server/async.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/serial.c:
	server: Fix the handling of the signaled status for file descriptors.
	File handles are signaled when an I/O operation completes, and reset
	when another operation is queued.

	* dlls/user32/message.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Store the display file descriptor directly in the server message
	queue.
	Get rid of a few WaitForMultipleObjectsEx hacks.

	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/request.h, server/trace.c:
	server: Add support for associating a file descriptor to a message queue.

	* server/trace.c, tools/make_requests:
	make_requests: More aggressive grepping for status values.

2007-04-04  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c:
	odbccp32: Don't print *pcbPathOut as it can be NULL (Coverity).

2007-04-03  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/propsheet.c:
	comctl32: Propsheet exception fix.
	Do not attempt to draw a page during WM_PAINT if there is no active page.

2007-04-03  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/state.c:
	wined3d: Only issue state_patchsegments FIXME once.

	* dlls/wined3d/state.c:
	wined3d: Downgrade some ERRs to FIXMEs.

2007-04-03  Steven Edwards <winehacker@gmail.com>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Add a button for audio test.

2007-04-03  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/stg_bigblockfile.c:
	ole32/stg_bigblockfile: Check page before use (Coverity).

2007-04-03  Vit Hrachovy <vit.hrachovy@sandbox.cz>

	* programs/winecfg/Cs.rc, programs/winecfg/winecfg.rc:
	winecfg: Fix outdated Czech localization.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/acmwrapper.c:
	quartz: Break loop on error in ACMWrapper.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/transform.c,
	  dlls/quartz/transform.h:
	quartz: Add a QueryConnect method for transform filters.

2007-04-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/transform.c:
	quartz: Connect input when the pins connect, not when querying.
	And clean up when disconnecting input.

2007-04-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Hold a reference on the PullPin's filter while the processing thread
	is alive.
	Also removes dead code caused by the change.

2007-04-03  Rob Shearman <rob@codeweavers.com>

	* dlls/atl/atl_main.c:
	atl: AddRef the object being returned in AtlInternalQueryInterface,  not "this".

	* dlls/msi/custom.c:
	msi: Don't wait on closed handles in ACTION_FinishCustomActions.
	The handle will be closed by free_custom_action_data, so duplicate the
	handle before calling it.

	* dlls/ntdll/tests/om.c, dlls/ntdll/tests/reg.c:
	ntdll: Pass the correct value to NtClose in the tests.

2007-04-03  Alexandre Julliard <julliard@winehq.org>

	* server/async.c, server/fd.c, server/file.h, server/named_pipe.c,
	  server/sock.c:
	server: Hold a pointer to the queue from the async operations.

	* dlls/kernel32/tests/mailslot.c, server/async.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/serial.c:
	server: Make timeout status for async I/O specifiable. Fix mailslots timeout
	handling.

2007-03-30  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c, dlls/dplayx/dplay_global.h:
	dplayx: Implement proper interface locking for DP_EnumSession.

2007-03-30  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/regedit/Ko.rc:
	regedit: Update Korean resource.

2007-03-31  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/regedit/En.rc, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/resource.h:
	regedit: Support REG_MULTI_SZ creation and editing.

2007-04-03  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Correct WidenPath behaviour when working on an open path.

2007-04-02  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c, dlls/gdi32/tests/path.c:
	gdi32: Correction of WidenPath behaviour when pen width is 1.

2007-04-02  Jason Edmeades <us@edmeades.me.uk>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Convert to VT_DECIMAL fails with overflow (with test).

2007-04-01  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Use a second-long DSound buffer for playback.

2007-04-02  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: On NT4 FindExecutable() returns an extra backspace character
	in some tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: On Windows 98 FindExecutable() does not '\0' terminate the
	returned command which caused many tests to fail.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: End the lines with CR+LF otherwise the profile APIs are unable
	to read them back on Win >= 2000.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Fix some expected FindExecutable() error codes.
	Add comments indicating which Windows version returns a given error code.

2007-04-02  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/tab.c, dlls/kernel32/tests/profile.c,
	  dlls/localspl/tests/localmon.c, dlls/ole32/stg_bigblockfile.c,
	  dlls/rpcrt4/rpcss_np_client.c, dlls/wined3d/state.c:
	Assorted spelling and English fixes.

	* dlls/ole32/tests/moniker.c:
	ole32/tests: Spelling fix.

	* dlls/ole32/tests/moniker.c:
	ole32/tests: Spelling fix.

2007-04-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/avifil32/avifile.c, dlls/avifil32/avifile_private.h,
	  dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c:
	avifil32: Constify some variables.

	* dlls/comcat/information.c, dlls/comcat/register.c:
	comcat: Constify some variables.

	* dlls/advpack/install.c:
	advpack: Constify some variables.

	* dlls/atl/registrar.c:
	atl: Constify some variables.

	* dlls/advapi32/service.c:
	advapi32: Constify some variables.

	* dlls/comctl32/updown.c:
	comctl32: Constify some variables.

	* dlls/comctl32/treeview.c:
	comctl32: Constify some variables.

	* dlls/comctl32/trackbar.c:
	comctl32: Constify some variables.

	* dlls/comctl32/toolbar.c:
	comctl32: Constify some variables.

	* dlls/comctl32/theme_combo.c, dlls/comctl32/tooltips.c:
	comctl32: Constify some variables.

	* dlls/comctl32/tab.c:
	comctl32: Constify some variables.

	* dlls/comctl32/syslink.c:
	comctl32: Constify some variables.

2007-04-02  Alexandre Julliard <julliard@winehq.org>

	* server/async.c, server/change.c, server/fd.c, server/file.h,
	  server/mailslot.c, server/named_pipe.c, server/serial.c,
	  server/sock.c:
	server: Add a separate function to set the timeout of an async I/O operation.

	* dlls/kernel32/tests/mailslot.c:
	kernel32: Added some last error tests for mailslots.

	* server/fd.c, server/mailslot.c:
	server: Check file access in register_async before calling the object method.

	* server/async.c, server/change.c, server/fd.c, server/file.h,
	  server/named_pipe.c, server/serial.c, server/sock.c:
	server: Make async I/O queues into real objects.

	* server/change.c:
	server: Use the fd generic wait queue for directory change I/O operations.

	* server/serial.c:
	server: Take advantage of the fd generic wait queue to remove a lot of serial
	code.

	* server/fd.c, server/file.h, server/mailslot.c:
	server: Avoid redundant polling in fd_queue_async_timeout.
	Moved the file overlapped flag check to default_fd_queue_async.

	* server/fd.c, server/file.h:
	server: Add a generic wait queue to the file descriptor object.

	* tools/make_makefiles:
	make_makefiles: Add the .INIT/.BEGIN rules for the main makefile.

2007-03-30  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Unset active page while setting a new active page for a propsheet.
	Before calling the PSN_SETACTIVE in PROPSHEET_SetCurSel set the
	active_page to -1. This prevents crashes and corruption of the
	property sheet if the application makes any modifications during the
	PSN_SETACTIVE.

2007-04-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/tgt_minidump.c, tools/winedump/minidump.c:
	winedbg, winedump: Extended some info printed from system info directory in
	minidump about the CPU.

	* programs/winedbg/tgt_minidump.c:
	winedbg: When reloading real PE modules from a minidump, also look in the
	search path (as we do for ELF modules).

2007-03-31  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Remove DDBLT_WAIT fixme.

2007-03-31  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/xcopy.c:
	xcopy: Hack/workaround for filenames starting with a '.'.

	* programs/xcopy/xcopy.c:
	xcopy: /E implies recursive (fixes ActiveState Perl installer).

	* programs/xcopy/xcopy.c:
	xcopy: Make displayed names mirror windows.

2007-03-30  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/En.rc, programs/xcopy/xcopy.c, programs/xcopy/xcopy.h:
	xcopy: Add help.

	* programs/xcopy/xcopy.c:
	xcopy: Update comments with unsupported operations and current status.

	* .gitignore, programs/xcopy/En.rc, programs/xcopy/Makefile.in,
	  programs/xcopy/rsrc.rc, programs/xcopy/xcopy.c,
	  programs/xcopy/xcopy.h:
	xcopy: Move all messages into an English resource file.

	* programs/xcopy/xcopy.c:
	xcopy: Rearrange code to closely match windows ordering.
	Effectively work out if we are interested in a file before worrying
	about prompting for copy or overwrite.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /D and /D:m-d-y.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /EXCLUDELIST:file1+file2 etc.

2007-03-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/smoothscroll.c, dlls/comctl32/status.c,
	  dlls/comctl32/string.c:
	comctl32: Constify some variables.

	* dlls/comctl32/rebar.c:
	comctl32: Constify some variables.

	* dlls/comctl32/header.c, dlls/comctl32/pager.c, dlls/comctl32/progress.c,
	  dlls/comctl32/propsheet.c:
	comctl32: Constify some variables.

	* dlls/comctl32/animate.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c:
	comctl32: Constify some variables.

2007-04-01  Rolf Kalbermatter <r.kalbermatter@hccnet.nl>

	* programs/notepad/main.c:
	notepad: Fix a possible rounding error when storing the font point size to
	the registry.

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/En.rc,
	  programs/notepad/Eo.rc, programs/notepad/Es.rc,
	  programs/notepad/Fi.rc, programs/notepad/Fr.rc,
	  programs/notepad/Hu.rc, programs/notepad/It.rc,
	  programs/notepad/Ja.rc, programs/notepad/Ko.rc,
	  programs/notepad/Nl.rc, programs/notepad/No.rc,
	  programs/notepad/Pl.rc, programs/notepad/Pt.rc,
	  programs/notepad/Ru.rc, programs/notepad/Si.rc,
	  programs/notepad/Sk.rc, programs/notepad/Sw.rc,
	  programs/notepad/Th.rc, programs/notepad/Tr.rc,
	  programs/notepad/Wa.rc, programs/notepad/Zh.rc,
	  programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h, programs/notepad/notepad_res.h:
	notepad: Implement handling of page setup dialog parameters.

2007-04-01  Rob Shearman <rob@codeweavers.com>

	* dlls/advpack/install.c:
	advpack: Stop processing if there was an error registering an OCX.

	* dlls/advpack/Makefile.in, dlls/advpack/install.c:
	advpack: Call OleInitialize before registering OCXs, like native does.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Fix a reference count leak that would keep the module alive when
	it shouldn't.

2007-04-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Make GetKerningPairsA not fail for fonts with SYMBOL charset.

	* dlls/kernel32/tests/locale.c:
	kernel32: Add GetCPInfo test.

2007-03-31  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use GL_APPLE_client_storage if available.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_APPLE_client_storage to our extension list.

2007-03-31  Dan Kegel <dank@kegel.com>

	* dlls/imagehlp/modify.c:
	imagehlp: BindImageEx stub should report success.

2007-03-31  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/path.c:
	gdi32: Add two basic tests to check what WidenPath does.

2007-03-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Some cleanup.

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Reopen the main handle if needed.

2007-03-30  Felix Nawothnig <flexo@holycrap.org>

	* dlls/d3d8/tests/texture.c, dlls/d3d9/tests/texture.c,
	  dlls/wined3d/device.c:
	wined3d: Make CreateCubeTexture fail when not supported.

	* dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Properly handle negative font widths.

2007-03-31  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Use a safe APC to kill the PullPin thread when the PullPin is being
	released.

	* dlls/quartz/filesource.c, dlls/quartz/pin.c:
	quartz: Set the sample time based on the number of bytes read before sending
	it downstream.

2007-03-30  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/parser.c:
	quartz: Remove errant parser output pins on input connection failure.

	* dlls/quartz/dsoundrender.c:
	quartz: Don't fill the dsound buffer with small amounts.

2007-03-30  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.34.

----------------------------------------------------------------
2007-03-30  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: Try to force the makefile to be rebuilt with non-GNU make too.

	* dlls/kernel32/cpu.c:
	kernel32: Better default for dwActiveProcessorMask in GetSystemInfo.

	* libs/wine/loader.c:
	libwine: Hack to work around the Solaris dlopen() brain damage.

	* dlls/kernel32/except.c:
	kernel32: Make default behavior more consistent when AeDebug key is not present.

2007-03-29  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/baseshader.c, dlls/wined3d/context.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Use GL_TEXTURE_2D for dummy textures.

2007-03-28  Felix Nawothnig <flexo@holycrap.org>

	* dlls/wined3d/state.c:
	wined3d: Fix broken ERR() message.

	* dlls/wined3d/context.c, dlls/wined3d/state.c:
	wined3d: Only disable GL_TEXTURE_CUBE_MAP_ARB if supported.

2007-03-29  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/ntdll/ntdll.spec:
	ntdll: Add NtAreMappedFilesTheSame stub.

2007-03-29  Jason Edmeades <us@edmeades.me.uk>

	* programs/xcopy/xcopy.c:
	xcopy: Add support for xcopy /A and /M (archive copies).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /P (Prompt).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /C (Continue if errors).
	Also fix one place error reporting was missing.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /H (Hidden/System).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /R (Replace read only files).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /U (target must exist).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /N (shortname copy).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for COPYCMD override and fix /-y.

	* programs/xcopy/xcopy.c:
	xcopy: Prompt when overwriting files, add /Y and /-Y support.

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /T (no copy).

	* programs/xcopy/xcopy.c:
	xcopy: Add support for /W (pause).

2007-03-30  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Add filters using their names.

2007-03-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/listview.c:
	comctl32: Cast-qual warnings fix.

	* dlls/comctl32/monthcal.c:
	comctl32: Constify some variables.

2007-03-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Add check to see if SetEntriesInAclW is implemented.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Add check to see if ImpersonateSelf is implemented.

2007-03-29  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Implement support for projective textures in ps 2.0 and later.

2007-03-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Add check to see if LookupAccountNameA is implemented.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Move check for ERROR_CALL_NOT_IMPLEMENTED to the first call.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Use skip.

2007-03-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/listview.c:
	comctl32: Constify some variables.

2007-03-28  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/tests/editor.c:
	riched20: Fix text replacement with text limit.

2007-03-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: Ignore failure to open current directory, it's broken on Mac OS X.

2007-03-29  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool.drv: Do not cache the port names.

2007-03-29  Alexander Farber <Alexander.Farber@nokia.com>

	* programs/cmd/wcmdmain.c:
	cmd: Enlarge max. length of PATH variable.

2007-03-29  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Delete the tile pixmap whenever the drawable is changed.

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Rename a local variable to avoid confusion with a global.

2007-03-29  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/custom.c, dlls/msi/files.c,
	  dlls/msi/format.c, dlls/msi/helpers.c, dlls/msi/install.c,
	  dlls/msi/msipriv.h, dlls/msi/tests/install.c:
	msi: Load the folder property if available and requested.

2007-03-28  Jacek Caban <jacek@codeweavers.com>

	* include/winnt.h:
	winnt.h: Added activation context structures declarations.

	* dlls/mshtml/htmldoc.c:
	mshtml: Added DIID_DispHTMLDocument to QueryInterface.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added DispHTMLDocument dispinterface declaration.

2007-03-28  Andrew Riedi <andrewriedi@gmail.com>

	* dlls/dsound/dsound.c:
	dsound: Change a couple DPRINTF's to TRACE's

2007-03-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c:
	ddraw: When changing the back buffers also update the render target.

2007-03-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shlwapi/Makefile.in, dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c,
	  dlls/shlwapi/shlwapi.spec, dlls/shlwapi/shlwapi_main.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/thread.c:
	shlwapi: Match shlwapi wrappers to MSDN descriptions.

2007-03-26  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Change the default IME window to better reflect applications request.
	First part of this change was proposed by Byeong-Sik Jeon.
	Additionally respect parameters give to us by ImmSetCompositionWindow
	for placement of the composition window.

2007-03-28  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: SetLastError to ERROR_SUCCESS on success.

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: Correct the Inf output position.

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: The Inf file should be copied regardless of the destination buffer,
	with tests.

	* dlls/setupapi/misc.c, dlls/setupapi/tests/misc.c:
	setupapi: Don't allow relative paths in SetupCopyOEMInf.

	* dlls/setupapi/misc.c:
	setupapi: Handle the SP_COPY_NOOVERWRITE flag.

2007-03-26  Marcin Grześkowiak <mgrzeskowiak@tlen.pl>

	* dlls/user32/text.c:
	user32: Use charset of currently selected font in DrawTextExA.

2007-03-27  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/state.c:
	wined3d: Print lastpixel state fixme only once.

2007-03-28  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/crypt.c, dlls/advapi32/tests/crypt_md5.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c,
	  dlls/comctl32/tests/dpa.c, dlls/comctl32/tests/mru.c,
	  dlls/crypt32/tests/crl.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/refcount.c, dlls/kernel32/tests/locale.c,
	  dlls/localspl/tests/localmon.c, dlls/msi/tests/db.c,
	  dlls/ntdll/tests/change.c, dlls/ntdll/tests/file.c,
	  dlls/ntdll/tests/om.c, dlls/ole32/tests/stg_prop.c,
	  dlls/shell32/tests/shlfileop.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/tests/shreg.c, dlls/shlwapi/tests/string.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/monitor.c,
	  dlls/user32/tests/resource.c:
	Remove unneeded checks on the GetModuleHandle() return value for cases where
	we are linked with the dll.

	* programs/cmd/directory.c:
	cmd: Spelling fix.

	* dlls/gdi32/path.c:
	gdi32: Remove a space before '\n' in a trace.

	* dlls/netapi32/tests/access.c:
	netapi32/tests: Add a missing '\n' to a trace().

	* dlls/setupapi/misc.c:
	setupapi: Fix InstallCatalog()'s calling convention.

2007-03-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mpr/wnet.c, dlls/shell32/shellord.c, include/shlobj.h,
	  include/winnetwk.h:
	include: Add some API prototypes to appropriate header files, fix some
	prototypes.

2007-03-28  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fixing the using of the auth_len values the wrong way round - PKT_PRIVACY
	implies the packet will be encrypted, not just signed.

2007-03-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/classmoniker.c, dlls/ole32/compobj.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/moniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/tests/moniker.c:
	ole32: Implement MkParseDisplayName.

	* dlls/ole32/tests/moniker.c:
	ole32: Add some more tests for MkParseDisplayName.

	* dlls/ole32/tests/moniker.c:
	ole32: Display the testname for the test for display name in test_moniker.

	* dlls/ole32/tests/moniker.c:
	ole32: Do a case-insensitive comparison in the count_moniker_matches in the
	moniker tests as Win9x marshals an all upper-case file name for file monikers.

	* dlls/ole32/tests/marshal.c:
	ole32: Add tests for the standard marshaler's implementation of IClientSecurity.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c, dlls/ole32/rpc.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Pass the OXID info to RPC_CreateClientChannel and use this to pass the
	server process ID to channel hooks.

2007-03-27  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/profile.c:
	kernel32/profile: Some parameter tests for GetPrivateProfileSectionA.

	* dlls/kernel32/profile.c:
	kernel32/profile: Add a few NULL checks (Coverity).

	* dlls/kernel32/tests/profile.c:
	kernel32/profile: Move GetPrivateProfileSectionA to its own test.

	* dlls/kernel32/tests/profile.c:
	kernel32/profile: Rename a test.

2007-03-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/ipaddress.c:
	comctl32: Constify some variables.

2007-03-27  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winemp3.acm/mpegl3.c:
	winemp3: Clear stream buffers when the stream is reset.

	* dlls/quartz/dsoundrender.c:
	quartz: Protect DSound buffer creation with a critical section lock.

2007-03-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/enhmfdrv/dc.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/init.c:
	gdi32: Make the EMF driver return sane NUMCOLORS value.

2007-03-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: TB_HIDEBUTTON and TB_MOVEBUTTON shouldn't force a recalc.

2007-03-22  Andrew Riedi <andrewriedi@gmail.com>

	* configure, configure.ac, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/x11drv.h,
	  include/config.h.in:
	winex11.drv: Add Xcursor support for 32 bit cursors.
	Based on patch by Henri Verbeet.

2007-03-27  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: More portable invocation of ctags/etags.

	* server/fd.c, server/file.c, server/file.h, server/named_pipe.c,
	  server/serial.c:
	server: Remove the return value of the flush() method, it's not used.

	* dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/async.c, server/protocol.def,
	  server/trace.c:
	server: Add support for queuing a user APC upon async I/O completion.

2007-03-26  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/misc.c, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/misc.c:
	setupapi: Add several tests for SetupCopyOEMInf, with fixes so the tests
	don't crash.

	* include/setupapi.h:
	setupapi: Add missing SetupCopyOEMInf flags.

2007-03-26  Jacek Caban <jacek@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Code clean up.

2007-03-26  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/regsvr.c:
	ole32: Register the ProgID for the class and file monikers.

	* dlls/ole32/compobj.c, dlls/ole32/moniker.c, dlls/ole32/ole2.c:
	ole32: Move GetClassFile to moniker.c and move OleRun to ole2.c.

	* dlls/ole32/compobj.c:
	ole32: Add documentation for CoGetClassObject and GetClassFile.

	* dlls/ole32/bindctx.c, dlls/ole32/moniker.c:
	ole32: Add documentation for CreateBindCtx, BindMoniker, GetRunningObjectTable
	and OleRun.

	* dlls/ole32/usrmarshal.c:
	ole32: Handle NULL sub-objects correctly in the STGMEDIUM user marshaling
	functions so that no further data in marshaled or unmarshaled.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use the correct authorization trailer length using information from
	the security provider.
	Previously it was hardcoded to 16, so only the NTLM provider would work
	correctly.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Call CompleteAuthToken if InitializeSecurityContext returned a code
	that says it should be called.
	Currently, the only security provider that requires this is the Digest
	one, which we don't really care about, but is supported for completeness.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Call InitializeSecurityContext from only one function.
	This reduces the amount of code and ensures that the parameters passed
	to it stay the same, apart from the previous context and the output
	buffer description.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c:
	rpcrt4: Retrieve the maximum token length from the security provider rather
	than using a hardcoded and rather small limit.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole32: Generate OXID_INFO in the stub manager.
	Copy the OXID_INFO from the stub manager, if available, in
	proxy_manager_construct. Otherwise, attempt to resolve it.
	Use ipidRemUnknown from OXID_INFO in the proxy manager instead of
	magically generating the IPID for RemUnknown.

	* dlls/ole32/dcom.idl:
	ole32: Add the OXID_INFO structure to dcom.idl.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Add a stubbed out implementation of IClientSecurity to the proxy manager.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h:
	rpcrt4: Make some parameters of non-exported functions const.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Implement associations which are intermediary objects that track the
	relationship between the client and a given endpoint on the server.
	Use these to encapsulate the connection pool so that the lifetimes of
	connections are properly handled again.

2007-03-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/secur32.c, dlls/secur32/secur32_priv.h:
	secur32: Replace const pointer parameters with correct pointers to const.

	* loader/kthread.c:
	loader: Replace inline static with static inline.

	* include/wine/debug.h, include/wine/library.h, include/wine/list.h,
	  include/wine/server.h, libs/wine/config.c, libs/wine/loader.c,
	  libs/wine/utf8.c:
	winelib: Replace inline static with static inline.

	* dlls/comctl32/datetime.c, dlls/comctl32/header.c,
	  dlls/comctl32/hotkey.c:
	comctl32: Constify some variables.

2007-03-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/parser.c:
	quartz: Return proper CLSID for parser filters.

2007-03-26  Piotr Caban <piotr.caban@gmail.com>

	* dlls/comctl32/treeview.c:
	comctl32: Set label width after editting.

2007-03-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* tools/wrc/translation.c:
	wrc: Change the format of the output of "wrc --verify-translation".

	* tools/wrc/translation.c:
	wrc: Add HTML resources support to wrc --verify-translation.

	* dlls/user32/combo.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/combo.c:
	user32: combobox: The text area height should be font_height+4.
	The tests shows that CBGetTextAreaHeight was using a bad formula.

2007-03-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/autocomplete.c:
	shell32: autocomplete: Don't use sel uninitialized.

2007-03-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Disable texture coordinate arrays on the correct unit.

2007-03-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement bem shader instruction.

2007-03-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Handle input modifiers in texcrd with arb shaders.

2007-03-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c:
	kernel32: Don't use the reserved argument of the APC routine callback.

	* dlls/ntdll/file.c, dlls/ws2_32/socket.c, server/fd.c, server/serial.c,
	  server/sock.c:
	server: Always return STATUS_PENDING when an async I/O operation has been queued.

2007-03-25  Gabriel Gambetta <ggambett@adinet.com.uy>

	* dlls/ntdll/time.c:
	ntdll: Add Uruguayan Summer Time timezone.

2007-03-25  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Add -lXau to NASLIBS if applicable to obtain XauGetBestAuthByAddr
	and XauDisposeAuth.

2007-03-25  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c:
	dplayx: Fixes the order of GUID initialization and storage.

2007-03-24  Laurent Vromman <laurent@vromman.org>

	* dlls/gdi32/path.c:
	gdi32: WidenPath partial implementation.

2007-03-24  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/tests/access.c:
	netapi32/tests: Make NetGetUserInfo checks language independent.

	* dlls/netapi32/access.c, dlls/netapi32/tests/access.c:
	netapi32: Implement NetUserChangePassword.

	* dlls/netapi32/access.c, dlls/netapi32/tests/access.c:
	netapi32: Implement NetUserDel.

	* dlls/netapi32/access.c, dlls/netapi32/tests/access.c:
	netapi32: Implement NetUserAdd with a dummy user database.

	* dlls/netapi32/tests/access.c:
	netapi32/test: Test the username and password length limits.

2007-03-24  Piotr Caban <piotr.caban@gmail.com>

	* dlls/comctl32/treeview.c:
	comctl32: Fixed TreeView_EndEditLabelNow crash.

2007-03-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/gdi32.spec, include/wingdi.h:
	gdi32: Implement GdiGetCodePage.

2007-03-26  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/transform.c:
	quartz: Propogate transform filter errors upstream.

2007-03-25  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c, dlls/quartz/pin.h:
	quartz: Store the current reference time with the PullPin.

	* dlls/quartz/dsoundrender.c:
	quartz: Implement volume and pan control for DSoundRenderer.

2007-03-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Make DSoundRender_Run start the playback buffer.

2007-03-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell32.spec, dlls/shell32/shell32_main.c:
	shell32: Add a stub implementation for SHPathPrepareForWrite{A, W}.

	* dlls/ntdll/sec.c:
	ntdll: Fully initialize the security descriptor returned from
	RtlSelfRelativeToAbsoluteSD.
	Debugged by Anastasius Focht.

	* dlls/mpr/wnet.c:
	mpr: Add a stub implementation for WNetGetUniversalNameA.

	* dlls/mpr/wnet.c:
	mpr: Fix buffer size calculation in WNetGetUniversalNameW.

2007-03-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/oleaut32/tests/varformat.c:
	oleaut32/tests: Use skip.

2007-03-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shlwapi/path.c:
	shlwapi/path: Proper use of GetProcessHeap().

2007-03-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Replace inline static with static inline.

	* dlls/winmm/driver.c, dlls/winmm/mci.c:
	winmm: Replace inline static with static inline.

	* dlls/wininet/internet.h:
	wininet: Replace inline static with static inline.

	* dlls/wintab32/context.c:
	wintab32: Replace inline static with static inline.

	* dlls/shlwapi/clist.c, dlls/shlwapi/string.c:
	shlwapi: Replace inline static with static inline.

	* include/vfw.h, include/win.h, include/wincon.h, include/winsock.h,
	  include/winternl.h:
	include: Replace inline static with static inline.

2007-03-23  Alexandre Julliard <julliard@winehq.org>

	* server/named_pipe.c:
	server: A named pipe wait can be satisfied by an idle pipe server too.

	* dlls/ntdll/file.c:
	ntdll: Avoid overwriting the result of the async I/O callback in NtFsControlFile.

	* dlls/kernel32/sync.c:
	kernel32: Fixed timeout calculation in WaitNamedPipe.

2007-03-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/commctrl.c, include/commctrl.h:
	comctl32: Constify some variables.

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Constify some variables.

2007-03-22  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/console.c, dlls/kernel32/kernel32.spec:
	kernel32: Add stub for AttachConsole.

2007-03-23  Paul Vriens <Paul.Vriens.Wine@gmail.com>

	* dlls/netapi32/tests/access.c, dlls/netapi32/tests/apibuf.c,
	  dlls/netapi32/tests/ds.c, dlls/netapi32/tests/wksta.c:
	netapi32/tests: Use LoadLibrary where needed and skip.

2007-03-22  Fabian Bieler <der.fabe@gmx.net>

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Add test for texbem instruction.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Fix arb texbem instruction for projective textures.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix glsl texbem instruction for projective textures.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Implemented bump map transform for texbem in GLSL with native signed
	textures.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Add test for fog with shader.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c:
	wined3d: Remove fog coordinate clamping in the vertex shader.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c:
	wined3d: Implement linear fog with pixel shader.

2007-03-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Replace inline static with static inline.

	* dlls/oleaut32/vartype.c:
	oleaut32: Replace inline static with static inline.

	* dlls/ole32/marshal.c:
	ole32: Replace inline static with static inline.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt/tests: Replace inline static with static inline.

	* dlls/shell32/shell32_main.h, dlls/shell32/shelllink.c:
	shell32: Replace inline static with static inline.

	* dlls/msi/msipriv.h:
	msi: Replace inline static with static inline.

2007-03-22  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/name_server.c:
	dplayx: Corrected the way nameserver initializes the sessiondesc structure on
	broadcast request reply.

2007-03-23  Alexandre Julliard <julliard@winehq.org>

	* server/trace.c:
	server: Print the callback function in the APC_ASYNC_IO trace.

2007-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Implement the open_file method for named pipes.
	Get rid of the open_named_pipe request, we can now use a normal open_file_object.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/mailslot.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Implement the open_file method for mailslots.
	Get rid of the open_mailslot request, we can now use a normal open_file_object.

	* dlls/ntdll/directory.c:
	ntdll: Better support for NT path names in wine_nt_to_unix_file_name.
	Don't map NT namespace 1:1 to Unix, add a magic \??\unix device instead.
	More generic support for \??\ devices, with fallback to the wineserver
	for paths that don't exist.

2007-03-22  Aric Stewart <aric@codeweavers.com>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.c:
	Revert 7c35db07c35db0... msiexec: Use CommandLineToArgvW instead of process_args
	to reduce code duplication.
	The previous command line processing is not identical to
	CommandLineToArgvW and CommandLineToArgvW breaks msi command line
	processing for things such as Excel Viewer 2003.
	Specifically the command line created by the Excel Viewer 2003 and
	passed to msiexec.exe is "c:\windows\system32\msiexec.exe" /I
	C:\windows\temp\IXP000.TMP\XLVIEW.MSI CDCACHE="2"
	LAUNCHEDFROMSETUP="1" SETUPEXEPATH="C:\windows\temp\IXP000.TMP\"
	SETUPEXENAME="SETUP.EXE" /lpiwaeo "C:\windows\temp\Microsoft Office
	Excel Viewer 2003 Setup(0001)_Task(0001).txt" CDCACH"...

2007-03-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/string.c,
	  dlls/riched20/tests/editor.c:
	riched20: Split unicode and ansi window procs, handle messages depending on
	the unicode flag.
	Add a hack for WM_GETTEXT in RichEdit20W class when running in win9x emulation
	mode.

	* dlls/user32/winproc.c:
	user32: WM_GETTEXT message converters have to 0-terminate output buffer if
	there is enough space even if there is no text to convert.

2007-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, server/mailslot.c:
	server: Don't enforce mailslots path format in ntdll, only in the server.

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Don't enforce named pipes path format in ntdll, only in the server.

	* server/directory.c:
	server: Create the named pipe and mailslot devices under \Device.
	Add appropriate symlinks to them in the \?? directory.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/fd.c,
	  server/mailslot.c, server/named_pipe.c, server/protocol.def,
	  server/trace.c:
	server: Implemented the open_file method for named pipe and mailslot devices.

	* server/async.c, server/atom.c, server/change.c, server/clipboard.c,
	  server/console.c, server/debugger.c, server/directory.c,
	  server/event.c, server/fd.c, server/file.c, server/handle.c,
	  server/hook.c, server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/semaphore.c, server/serial.c,
	  server/signal.c, server/snapshot.c, server/sock.c, server/symlink.c,
	  server/thread.c, server/timer.c, server/token.c, server/winstation.c:
	server: Add an open_file() function to the object operations.

2007-03-19  Juan Lang <juan_lang@yahoo.com>

	* tools/wine.inf:
	wine.inf: Move fake rundll32 to the system directory.

2007-03-22  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define avi resource #163.

	* dlls/kernel32/actctx.c:
	kernel32: Print a fixme only once.

2007-03-22  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: WSASendTo should always re-enable the FD_WRITE event.

2007-03-21  Ken Thomases <ken@codeweavers.com>

	* dlls/gdi32/freetype.c:
	Revert "gdi32: Disable the freetype mmap sharing on Mac OS.".
	This reverts ae9f68dec91cd6ac66a99dc62d69dc53eaf910d0 commit.  Because
	of commit 4e6860433e72714ed1e500eb523710656e71ba02 which extracts the
	constituent fonts from Mac suitcase fonts, we can use mmap on font
	files on the Mac.

2007-03-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/comboex.c:
	comctl32: Constify some variables.

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Replace inline static with static inline.

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Replace inline static with static inline.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Replace inline static with static inline.

2007-03-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c:
	wininet/ftp: Fix potential memory leak.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded check.

2007-03-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c:
	wined3d: General signed format correction without native signed formats.
	Implement signed d3d formats for D3DFMT_V8U8 and D3DFMT_Q8W8V8U8 if no
	suitable opengl signed format is supported.

2007-03-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Store the pixel format in the texture.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c:
	wined3d: Support GL_ATI_envmap_bumpmap for D3DFMT_V8U8.

2007-03-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_ATI_envmap_bumpmap to our gl extension header.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/symbol.c:
	dbghelp: Replace inline static with static inline.

2007-03-21  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c:
	dplayx: Check for null pointer dereference in DP_FindPlayer.

2007-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/bitmap.c:
	winex11.drv: Relax the bitmap depth check in CreateBitmap to accept some
	compatible formats.

2007-03-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/tests/editor.c:
	riched20: Add a test that shows that under Win9x RichEdit20W windows are not
	unicode, but always expect to see unicode input.

2007-03-21  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj.spec, dlls/ole32/ole16.c:
	ole32: The 16-bit version of CoDisconnectObject is not compatible with the
	32-bit version, so create a separate stub for the former.

	* tools/winedump/output.c:
	winedump: Fix the output for Makefile.in with respect to the dependencies line
	to match that required by the build system.

	* dlls/atl/registrar.c:
	atl: Add support for the registrar parameter of
	AtlModuleUpdateRegistryFromResourceD.

	* dlls/atl/registrar.c:
	atl: Add support for the pMapEntries parameter to
	AtlModuleUpdateRegistryFromResourceD.

2007-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, include/wine/server_protocol.h, server/change.c,
	  server/protocol.def, server/trace.c:
	server: Use a standard async I/O event to signal directory changes.

	* dlls/ntdll/file.c, server/named_pipe.c:
	server: Move the signalling of the named pipe completion event to the server.

	* dlls/ws2_32/socket.c:
	ws2_32: Move the signalling of the completion event to the server.

	* dlls/ntdll/file.c:
	server: Move the signalling of the completion event for NtRead/WriteFile to
	the server.

	* server/async.c, server/file.h, server/thread.c:
	server: Notify the async object when the APC call completed.

	* include/wine/server_protocol.h, server/async.c, server/protocol.def,
	  server/trace.c:
	server: Add support for storing an event to signal upon async I/O completion.

	* dlls/setupapi/parser.c:
	setupapi: Add support for .inf files in utf-8 format.

2007-03-21  Vitaly Budovski <vbudovski@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Check for float texture formats correctly.
	Move the checks for float texture formats into the correct location.
	This allows some Direct3D sample applications which check for any of
	the float formats together with D3DUSAGE_RENDERTARGET to start.

2007-03-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Move the storage signatures to the appropriate file that uses them.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/animate.c:
	comctl32: Constify some variables.

2007-03-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: We shouldn't try to resize standard bitmaps.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test standard buttons size.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: The default button size is 16x16.

2007-03-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filesource.c:
	quartz: Fully disconnect the AsyncReader when released.

2007-03-20  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/context.c:
	wined3d: Ensure all states affected by a change in render_offscreen are marked
	dirty in ActivateContext.

2007-03-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/freetype.c, dlls/gdi32/gdiobj.c, dlls/gdi32/region.c:
	gdi32: Replace inline static with static inline.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/parser.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi_private.h:
	setupapi: Replace inline static with static inline.

2007-03-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Replace inline static with static inline.

2007-03-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/waveparser.c:
	quartz: Don't redundantly set waveparser output pin data before it's created.

2007-03-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Expose a problem with FtpGetFile.

	* dlls/wininet/ftp.c:
	wininet/ftp: Move a definition in FTP_FtpFindFirstFileW (Coverity).

	* dlls/wininet/ftp.c:
	wininet/ftp: Simplify FTP_FtpGetFileW a bit.

	* dlls/kernel32/tests/environ.c:
	kernel32/tests: Use skip.

2007-03-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ws2_32/socket.c,
	  include/wine/server_protocol.h, server/async.c, server/change.c,
	  server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/protocol.def, server/serial.c, server/sock.c, server/trace.c,
	  tools/make_requests:
	server: Add an async_data_t structure to store parameters for async I/O requests.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c:
	server: Return the status from an async I/O APC call to the server.

	* server/Makefile.in, server/async.c, server/fd.c, server/file.h:
	server: Make struct async into a real object, to keep it around while the APC
	is running.

	* server/thread.c:
	server: Grab the owner object of an APC while the APC is executing.

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/named_pipe.c,
	  server/protocol.def, server/trace.c:
	server: Use the common pattern for async I/O parameters in named pipe requests.

2007-03-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c:
	msvcrt: Replace inline static with static inline.

	* dlls/dsound/dsound_main.c:
	dsound: Replace inline static with static inline.

	* dlls/ddraw/main.c:
	ddraw: Replace inline static with static inline.

2007-03-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fix copy+paste bug.

2007-03-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/quartz/filtergraph.c:
	quartz: Fix typo that produced an empty if-statement.

2007-03-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/parser.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c:
	quartz: Don't delete critical sections before the filter's pins are done
	using them.

2007-03-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/class.c:
	user32: Avoid compiler specific code in the DefWindowProc test.

2007-03-19  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/tests/access.c, include/lmaccess.h:
	netapi32: Add test for adding/deleting users.

2007-03-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Add a test for StgStreamImpl_SetSize with a non-zero HighPart for
	the size.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Clear the input pvar structure in VARIANT_UserUnmarshal to free the
	data instead of just initializing.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Make the VARIANT_UserUnmarshal tests work on XP.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Add some tests for user marshaling a VT_UNKNOWN variant.

	* include/rpcndr.h:
	include: Fix the byte-order in the definition of the USER_MARSHAL_CB_SIGNATURE
	macro.

	* dlls/ole32/usrmarshal.c:
	ole32: Implement TYMED_FILE for STGMEDIUM marshaling and unmarshaling.

	* dlls/ole32/stg_stream.c:
	ole32: Add warnings for failures in the structured storage stream functions.

2007-03-19  Jacek Caban <jacek@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Register Spooler service.

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/spoolsv/Makefile.in, programs/spoolsv/main.c:
	spoolsv: Added spoolsv.exe.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi: Improve SetEntriesInAclW stub.

	* dlls/advapi32/service.c, include/winsvc.h:
	advapi: Constify argument of StartServiceCtrlDispatcher[AW] functions.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Added RevertToPrinterSelf stub implementation.

2007-03-19  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: In some cases send should block until the entire buffer is sent.

2007-03-16  Aric Stewart <aric@codeweavers.com>

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Rework storage with blockfiles to properly use ILockBytes interfaces.
	Rework storage to make all its interactions with the underlying data go
	though ReadAt and WriteAt to allow for an ILockBytes underlying layer.
	Implement ReadAt and WriteAt in stg_bigblockfile.c for blockfiles.

2007-03-06  Jason Edmeades <us@edmeades.me.uk>

	* .gitignore, Makefile.in, configure, configure.ac, programs/Makefile.in,
	  programs/xcopy/Makefile.in, programs/xcopy/xcopy.c:
	Basic implementation of xcopy.

2007-03-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Open the default Xcv-channel only once.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Rename hXcv for special tests.

2007-03-18  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Only write 'bytes free' message if a file was displayed during dir.

	* programs/cmd/directory.c:
	cmd.exe: Add errorlevel support for DIR command.

	* programs/cmd/directory.c:
	cmd.exe: Add support for dir /A filtering.

	* programs/cmd/directory.c:
	cmd.exe: Add support for DIRCMD and sequential qualifier processing.

	* programs/cmd/directory.c:
	cmd.exe: Add support for dir /-C.

	* programs/cmd/directory.c:
	cmd.exe: Add support for DIR /D.

2007-03-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c:
	userenv: Add stub implementations for {Register, Unregister}GPNotification.

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Add a stub implementation for InstallCatalog.

	* tools/wine.inf:
	wine.inf: Add cabinet.dll to the list of fake dlls.

2007-03-19  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/tests/access.c:
	netapi32/tests: Use skip when skipping tests.

	* dlls/netapi32/ds.c, dlls/netapi32/wksta.c:
	netapi32: Downgrade more ERRs to TRACEs.

	* dlls/netapi32/access.c, dlls/netapi32/local_group.c,
	  dlls/netapi32/netapi32_misc.h:
	netapi32: Remove another macro, replace by more readable functions.

2007-03-18  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/access.c:
	netapi32: Downgrade another WARN and ERR to a TRACE.

	* dlls/netapi32/access.c:
	netapi32: Get rid of an ugly macro definition only used once.

	* dlls/netapi32/access.c:
	netapi32: fix a comment.

2007-03-18  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/datetime.c, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Reject invalid flags in DTM_SETSYSTEMTIME.
	Reject invalid flags in DTM_SETSYSTEMTIME i.e. when the flag is neither
	GDT_VALID nor GDT_NONE when the style is set to DTS_SHOWNONE.  Corresponding
	setters and message sequence tests were also added.

2007-03-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/commctrl.c, dlls/comctl32/tests/toolbar.c:
	comctl32: CreateToolbarEx should send TB_SETBITMAPSIZE twice.

2007-03-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user32/tests/class.c:
	user32: tests: Using DefWindowProcA with RegisterClassW works under Windows.

	* include/shellapi.h:
	shell32: Add some more notify icon defines.

	* dlls/shell32/systray.c:
	shell32: Don't free user supplied data in Shell_NotifyIcon if GetIconInfo failed.
	We should free the nid and in such a case we were doing it.

	* dlls/shell32/systray.c, include/shellapi.h, programs/explorer/systray.c:
	shell32/explorer: Support different structure sizes in Shell_NotifyIcon.

2007-03-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/browseui/tests/autocomplete.c:
	browseui: Remove a test with a wrong pointer.

2007-03-14  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Release objects when they're no longer needed.

	* dlls/quartz/filtergraph.c:
	quartz: Disconnect pins when their filter is removed.

	* dlls/quartz/pin.c:
	quartz: Release objects when pins fail to connect.

	* dlls/quartz/pin.c:
	quartz: Hold a reference on a filter while sending data to it.

2007-03-18  Kai Blin <kai.blin@gmail.com>

	* dlls/netapi32/access.c:
	netapi32: Downgrade a FIXME and an ERR to a trace to not clutter test output
	on handled error conditions.

2007-03-17  A C Hurst <A.Hurst@sheffield.ac.uk>

	* dlls/ddraw/device.c:
	wined3d: Fix struct size calculation in EnumTextureFormats.

2007-03-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store an array of contexts in the swapchain.
	This is a preparation for using multiple contexts on one drawable to
	handle multithreading.

2007-03-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/basetexture.c, dlls/wined3d/context.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/utils.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Activate a context before doing opengl calls.

2007-03-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove some old stuff.

	* dlls/wined3d/state.c:
	wined3d: Fix client gl unit selection.
	I forgot that when re-enabling register combiners during the state
	management rewrite.

2007-03-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/directx.c, dlls/d3d9/directx.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_private_types.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d.

2007-03-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/except.c:
	msvcrt: Print FIXME on platforms where _except_handler3 is a stub.

	* dlls/gdi32/freetype.c, dlls/winex11.drv/xrender.c:
	winex11.drv: In the case requested glyphs do not present in the font fail
	gracefully instead of asserting.

2007-03-17  Hagop Hagopian <shaitani@gmail.com>

	* dlls/comctl32/tab.c, dlls/comctl32/tests/tab.c:
	comctl32: tab: Minor bug fixes in the curSel and curFocus getters and setters.

	* dlls/comctl32/tests/tab.c:
	comctl32: tab: Added message sequence tests for the tab control.

2007-03-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: Remove unnecessary pointers in fstab parsing on Solaris.

	* dlls/wldap32/option.c, dlls/wldap32/winldap_private.h:
	wldap32: Prefix option defines with WLDAP32 to avoid conflicts with system
	headers.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Avoid some warnings on Solaris.

2007-03-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/afm.c, dlls/wineps.drv/afm2c.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/builtin.c,
	  dlls/wineps.drv/glyphlist.c, dlls/wineps.drv/mkagl.c,
	  dlls/wineps.drv/truetype.c, dlls/wineps.drv/type1afm.c:
	wineps.drv: Replace inline static with static inline.

	* tools/winebuild/import.c, tools/winebuild/parser.c,
	  tools/winebuild/res16.c, tools/winebuild/res32.c:
	winebuild: Replace inline static with static inline.

	* server/fd.c, server/file.h, server/handle.c, server/hook.c,
	  server/mapping.c, server/process.h, server/ptrace.c, server/queue.c,
	  server/registry.c, server/request.h, server/sock.c, server/thread.c,
	  server/trace.c, server/user.c, server/window.c, server/winstation.c:
	server: Replace inline static with static inline.

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/event.c,
	  dlls/winex11.drv/keyboard.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/wintab.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/xfont.c:
	winex11.drv: Replace inline static with static inline.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Replace inline static with static inline.

	* dlls/user32/button.c, dlls/user32/class.c, dlls/user32/driver16.c,
	  dlls/user32/hook.c, dlls/user32/hook16.c, dlls/user32/listbox.c,
	  dlls/user32/menu.c, dlls/user32/message.c, dlls/user32/scroll.c,
	  dlls/user32/spy.c, dlls/user32/sysparams.c, dlls/user32/winproc.c,
	  dlls/user32/wnd16.c:
	user32: Replace inline static with static inline.

	* dlls/ntdll/critsection.c, dlls/ntdll/loader.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/threadpool.c:
	ntdll: Replace inline static with static inline.

	* dlls/kernel32/computername.c, dlls/kernel32/except.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c, dlls/kernel32/locale.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/path.c,
	  dlls/kernel32/process.c, dlls/kernel32/relay16.c,
	  dlls/kernel32/selector.c, dlls/kernel32/sync.c,
	  dlls/kernel32/thunk.c:
	kernel32: Replace inline static with static inline.

	* dlls/advapi32/registry.c:
	advapi32: Replace inline static with static inline.

	* dlls/comctl32/comboex.c, dlls/comctl32/header.c, dlls/comctl32/hotkey.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Replace inline static with static inline.

2007-03-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comcat/information.c, dlls/comcat/register.c:
	comcat: Declare some variables static and const.

2007-03-16  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/gdi32/mfdrv/init.c:
	gdi32: Don't write a metafile record for escapes that require output.

2007-03-17  Joris Huizer <joris_huizer@yahoo.com>

	* dlls/advpack/reg.c:
	advpack: sign-compare fix.

	* dlls/amstream/amstream.c, dlls/amstream/main.c:
	amstream: sign-compare fixes.

2007-03-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/advapi32/tests/security.c:
	advapi32/tests: DuplicateTokenEx is not present on all platforms.

	* dlls/kernel32/tests/pipe.c:
	kernel32/tests: DuplicateTokenEx is not present on all platforms.

2007-03-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/advapi32/registry.c:
	advapi32: Implement RegGetKeySecurity with NtQuerySecurityObject.

2007-03-12  Erich Hoover <ehoover@mediaserver>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/surface.c:
	wined3d: Fix LockRect memory location calculation for WINED3DFMT_DXT*.

2007-03-16  Huw Davies <huw@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Use a window's icon in preference to its class icon.

2007-03-16  Detlef Riekenberg <wine.dev@web.de>

	* libs/wine/config.c:
	libs/wine: Use xstrdup to avoid duplicate code.

2007-03-16  Hans Leidekker <hans@it.vu.nl>

	* tools/wine.inf:
	wine.inf: Open/print .rtf files with wordpad.

	* tools/wine.inf:
	wine.inf: Register an 'install' verb with the shell for .inf files.

2007-03-16  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.33.

----------------------------------------------------------------
2007-03-16  Alexandre Julliard <julliard@winehq.org>

	* programs/cmd/wcmdmain.c:
	cmd: Fix a compiler warning.

2007-03-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/netapi32/tests/ds.c:
	netapi32/tests: Use GetModuleHandle and skip.

2007-03-16  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winemine/Ro.rc, programs/winemine/rsrc.rc:
	winemine: Add Romanian translation.

2007-03-15  Keith Stevens <fozziethebeat@gmail.com>

	* dlls/comctl32/tests/trackbar.c, dlls/comctl32/trackbar.c:
	comctl32: trackbar: Return the correct number of tics for TBM_GETNUMTICS.

	* dlls/comctl32/tests/trackbar.c, dlls/comctl32/trackbar.c:
	comctl32: trackbar: Correctly set lSetMin and lSelMax.
	Modify the behavior when the messages TBM_SETSEL, TBM_SETSELSTART, and
	TBM_SETSELEND are sent and TBS_ENABLESELRANGE is not set.  When the
	style TBS_ENABLESELRANGE is not set, Windows observed behavior is to
	set the Selection Start and End values to 0, rather than leave them
	unchanged.

2007-03-16  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal: Correct the return value in MCM_SETFIRSTDAYOFWEEK.

2007-03-15  Alessandro Pignotti <alex.pigna@inventati.org>

	* dlls/dplayx/dplay.c:
	dplayx: DirectPlay should keep track of the user count.

2007-03-15  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/datetime.c:
	comctl32: datetime: Test for out of range dates in DTM_SETSYSTEMTIME only
	when flag=GDT_VALID.

2007-03-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c:
	localspl: Add a comment, why we do not implement AddPort for XcvDataPort.

2007-03-15  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Use elf load_offset passed to dwarf2_parse to relocate addresses.
	This is needed, because symbol addresses in dwarf2 debug info are already
	relocated.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix up load_offset to work in case the load offset is different for
	real binary and debug link file.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Initialize the elf_section_map in case of failures in elf_find_section.
	Make sidx signed so sidx < 0 comparisons work.
	(most of the patch written by Eric Pouech)

2007-03-16  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal message sequence test cases.

2007-03-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: RegQueryValueW is not always implemented.

2007-03-16  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix a failing test on Windows caused by the existence of one SID
	that always has no associated account.

	* dlls/kernel32/tests/environ.c:
	kernel32: Fix several failing GetComputerNameA/W tests on Windows.

2007-03-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/surface.c:
	d3d9: Add a LockRect test for DXTn formats.

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a cubemap wrapping test.

2007-03-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Check for Xcv-API only once.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_AddPort.

2007-03-15  Keith Stevens <fozziethebeat@gmail.com>

	* dlls/comctl32/tests/trackbar.c:
	comctl32/tests: trackbar: Test message sequences.

	* dlls/comctl32/tests/trackbar.c:
	comctl32/tests: trackbar: Reorganize the getter and setter tests into functions.

2007-03-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/cabinet/fdi.c:
	cabinet: Simplify code in fdi_decomp().

2007-03-15  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/datetime.c, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Return 1 in DTM_SETFORMAT when successful.

2007-03-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Restore erroneously removed chunk of code.

2007-03-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove no longer needed check for libsane.

2007-03-15  Fabian Bieler <der.fabe@gmx.net>

	* dlls/kernel32/heap.c:
	kernel32: GlobalMemoryStatusEx: always report at least 1 byte of virtual memory
	even if none is available.

	* dlls/kernel32/heap.c:
	kernel32: GlobalMemoryStatusEx: return the size of physical memory + swapsize
	in ullTotalPageFile/ullAvailPageFile.

	* dlls/kernel32/heap.c:
	kernel32: GlobalMemoryStatusEx: memory usage reported only reflects physical
	memory.

2007-03-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/tests/font.c:
	gdi32: Add a GetTextMetrics test, make it pass under Wine.

2007-03-15  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/msvcrt/tests/data.c:
	msvcrt: Remove unused variable.

2007-03-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c, dlls/cabinet/fci.c,
	  dlls/cabinet/fdi.c:
	cabinet: Constify some variables.

2007-03-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/state.c:
	direct3d: Add a fixed function fog test.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c:
	wined3d: Blitting to offscreen target.
	Fix the NULL deref that occured when blitting to offscreen targets and
	select the proper gl drawing buffer instead.

2007-03-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/commctrl.c:
	comctl32: Register all the controls in DllMain.

2007-03-14  Jeremy White <jwhite@codeweavers.com>

	* configure, configure.ac, dlls/sane.ds/Makefile.in,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/sane_i.h, dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  include/config.h.in:
	sane.ds: Dynamically load libsane.so.
	This change was triggered because of a bug in libsane-hpaio.so, namely
	that it relies on libsane.so being dlopen'd RTLD_GLOBAL so that
	sanei_init_debug can be resolved.

2007-03-14  Ken Thomases <ken@codeweavers.com>

	* dlls/shell32/clipboard.c:
	shell32: Avoid W->A conversion in RenderHDROP.

2007-03-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/base64.c:
	crypt32/tests: No need to check return value of GetModuleHandle.

	* dlls/advapi32/tests/crypt_md4.c:
	advapi32/tests: No need to check return value of GetModuleHandle.

2007-03-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Rewrote SymEnumerateModules with Unicode basis, and implemented
	SymEnumerateModulesW64.

2007-03-13  Leslie Choong <septikus@gmail.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: updown: Added message sequencing tests.

	* dlls/comctl32/tests/updown.c:
	comctl32: updown: Expect macro and spelling errors.

2007-03-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

	* programs/cmd/Ko.rc:
	cmd: Updated Korean Resource.

2007-03-14  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Print the contents of the IID input to OleLoad.

	* dlls/user32/tests/msg.c:
	user32: Add several more MsgWaitForMultipleObjects tests and split them out
	from the main message tests.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Unmarshal NULL OLE interfaces properly by handling the case of a 0
	stream size.

	* include/objbase.h:
	include: Add a definition for REGCLS_SURROGATE and add declarations for
	CoRegisterSurrogate and CoGetObjectContext.

2007-03-14  Huw Davies <huw@codeweavers.com>

	* dlls/kernel32/profile.c, dlls/kernel32/tests/profile.c:
	kernel32: Fix GetPrivateProfileSectionNamesA when the file does not exist.

2007-03-14  Aric Stewart <aric@codeweavers.com>

	* dlls/wineps.drv/driver.c:
	wineps.drv: Values for DC_MINEXTENT and DC_MAXEXTENT are returned, not placed
	in the data pointer.

2007-03-14  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/casemap.c, libs/wine/compose.c, libs/wine/wctype.c:
	libwine: Update the Unicode tables to version 5.0.1 of the standard.

	* libs/wine/utf8.c:
	libwine: Added support for Unicode surrogates in utf-8 conversions.
	Also make the conversions more strict against invalid input data.

	* dlls/kernel32/locale.c, dlls/ntdll/rtlstr.c, include/wine/unicode.h,
	  libs/wine/utf8.c, tools/wrc/utils.c:
	libwine: Pass flags to wine_utf8_wcstombs to allow supporting
	WC_ERR_INVALID_CHARS.

	* include/winnls.h:
	winnls.h: Added some defines for Unicode surrogates.

	* dlls/ntdll/thread.c:
	ntdll: Fixed typo in previous patch, spotted by Ken Thomases.

2007-03-12  Erich Hoover <ehoover@mines.edu>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Allow SetCursorProperties on existing cursor.

2007-03-12  Kanit Therdsteerasukdi <therdste@cs.ucla.edu>

	* dlls/comctl32/datetime.c, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Reject out of range dates in DTM_SETSYSTEMTIME.

2007-03-12  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/winex11.drv/dib_convert.c:
	winex11.drv: Small spelling fix.

2007-03-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/thread.c:
	ntdll: Add a wrapper to call the thread entry point for broken apps.

	* dlls/msvcrt/data.c, dlls/msvcrt/tests/data.c:
	msvcrt: _initterm doesn't return anything.

2007-03-14  Francois Gouget <fgouget@free.fr>

	* dlls/wined3d/drawprim.c:
	wined3d: Remove space before '\n' in trace.

	* dlls/comctl32/tests/listview.c, dlls/comctl32/tests/tab.c:
	comctl32/tests: Add missing '\n's in ok() calls.

2007-03-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h:
	avifil32: Constify some variables.

2007-03-13  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Add DIR /O ordering support.

	* programs/cmd/directory.c:
	cmd.exe: Add dir /X support (sort of...).

2007-03-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/exception.c:
	ntdll: Fixed some exception codes and parameters.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Mask reserved bits before testing dr7.
	Also some spelling fixes.

	* dlls/ntdll/signal_i386.c:
	ntdll: Changed some Solaris defines so that we can access the signal error code.

2007-03-12  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/treeview.c:
	comctl32: Fix visual glitches with TVS_HASLINES.

	* dlls/comctl32/tab.c:
	comctl32: Layout and redraw on TCM_SETIMAGELIST.

	* dlls/gdi32/tests/pen.c:
	gdi32: Add PS_ALTERNATE tests.

2007-03-12  George Gov <ggov@ucla.edu>

	* dlls/comctl32/tests/listview.c:
	comctl32: Add some listview message tests.

2007-03-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/memallocator.c:
	quartz: Avoid asserting from used samples on allocator release.

	* dlls/quartz/dsoundrender.c, dlls/quartz/parser.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c:
	quartz: Force disconnect when a filter is fully released.

	* dlls/quartz/acmwrapper.c:
	quartz: Cleanup properly around error conditions and avoid a potential
	infinite loop.

2007-03-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Pl.rc:
	localspl: Add Polish translation.

	* programs/wordpad/Pl.rc:
	wordpad: Update Polish translation.

	* dlls/comctl32/listview.c:
	comctl32: listview: Compute the state icon rect in GetItemMetrics.

2007-03-13  Alexandre Julliard <julliard@winehq.org>

	* programs/oleview/typelib.c:
	oleview: Use standard APIs in SaveIdl and avoid overflows.

2007-03-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wineps.drv/driver.c:
	wineps.drv: Check for correct value for end of list.

2007-03-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/crypt_sha.c:
	advapi32/tests: Use GetModuleHandle and skip.

	* dlls/advapi32/tests/crypt_md4.c:
	advapi32/tests: Use GetModuleHandle and skip.

	* dlls/crypt32/tests/base64.c:
	crypt32/tests: Use GetModuleHandle and skip.

2007-03-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/pe_module.c:
	dbghelp: Renamed pe_load_module (resp pe_load_module_from_pcs)
	to pe_load_native_module (resp pe_load_builtin_module) to better describe
	what those functions actually do.

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: Added a few more forward definitions to dbghelp.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/module.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c,
	  dlls/dbghelp/type.c:
	dbghelp: Get rid of module_name in all traces (using Unicode flavor).

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/pe_module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c:
	dbghelp: Cleanups for module loading (lookups on module name and image name
	are two different things)
	- split up module_find_by_name in two different functions:
	+ reused module_find_by_name which looks upon the module name
	+ added module_is_already_loaded which looks upon the image name
	- cleanup module loading using these functions (removed extra parameter
	to pe_load_module_from_pcs)

	* dlls/dbghelp/module.c:
	dbghelp: Rewrote module_is_elf_container_loaded so that it no longer
	uses the stored ModuleName (that the dbghelp's caller can override) but rather a
	combination of base address and filename for the module.

	* dlls/dbghelp/module.c:
	dbghelp: Added helper to get the basename + extension from full filename.

2007-03-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Added test of URLs with trailing slash.

	* dlls/itss/protocol.c:
	itss: Use object_name in FindMimeFromData.

	* dlls/itss/protocol.c:
	itss: Ignore trailing slash in ITSProtocol::Start.

	* dlls/itss/storage.c:
	itss: Ignore trailing slash in IStorage::OpenStream.

2007-03-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/credui/credui.rc, dlls/credui/credui_Pl.rc:
	credui: Add Polish translation.

	* dlls/credui/credui.rc, dlls/credui/credui_En.rc:
	credui: Move language-dependent resources to credui_En.rc.

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update Polish translation.

	* programs/start/Pl.rc, programs/start/rsrc.rc:
	start: Add Polish translation.

	* programs/cmd/Pl.rc:
	cmd: Update Polish translation.

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Fix Korean resource name.

	* dlls/kernel32/nls/winerr_kor.mc:
	kernel32: Fix LANGID for Korean resource.

2007-03-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: OleCreate isn't a semi-stub any more, as it is tested in a range of
	cases and has no todos.

	* dlls/ole32/ole2.c:
	ole32: OleCreate shouldn't pass CLSCTX_LOCAL_SERVER to CoCreateInstance.

	* dlls/ole32/bindctx.c:
	ole32: Don't allocate an initial table for bind contexts.
	Most users of bind contexts don't use bound objects or object params, so
	don't create an initial table. Instead, create it on demand and use an
	exponential algorithm for increasing the size of the table when full.

	* include/wincred.h:
	include: Add credential serialisation APIs to wincred.h.

2007-03-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/internet.c:
	wininet: Fix buffer size calculation in INTERNET_InternetOpenUrlW.
	Spotted by Ron Yorston.

	* dlls/mscms/mscms_priv.h:
	mscms: Fix compilation with the latest lcms header.

2007-03-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c:
	msvcrt: Improved _local_unwind2 implementation.
	Thanks to Dmitry Timoshkov for a test case.

2007-03-12  Stefan Huehner <stefan@huehner.org>

	* dlls/browseui/tests/autocomplete.c, dlls/comctl32/tests/datetime.c,
	  dlls/kernel32/tests/resource.c, dlls/msxml3/tests/schema.c,
	  dlls/ntdll/tests/om.c, dlls/opengl32/wgl.c, dlls/shell32/clipboard.c,
	  dlls/user32/tests/win.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wineesd.drv/audio.c, dlls/winex11.drv/opengl.c,
	  dlls/winspool.drv/info.c, programs/cmd/builtins.c,
	  programs/oleview/details.c, programs/oleview/interface.c,
	  programs/oleview/oleview.c, programs/oleview/pane.c,
	  programs/oleview/tree.c, programs/oleview/typelib.c,
	  programs/regedit/childwnd.c, tools/widl/header.c:
	Mark several functions as static.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Test the rebar style for RBBS_VARIABLEHEIGHT, not the passed
	in structure.

2007-03-11  Shanren Zhou <shanren@ucla.edu>

	* dlls/comctl32/tests/header.c:
	comctl32: Added header message sequence test cases.

	* dlls/comctl32/tests/header.c:
	comctl32: Header message sequence test cases.
	Added separate parent and child header controls for each test case and
	fixed a typo ('Data Modified' should be 'Date Modified').

2007-03-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/loader.c:
	ntdll: Catch the exceptions in the TLS callback like Windows does.

2007-03-12  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/main.c:
	crypt32: Set ppSignerSig to NULL in case caller doesn't check return value.

	* dlls/user32/sysparams.c:
	user32: Fix a comment.

2007-03-13  András Kovács <andras@debian.sth.sze.hu>

	* dlls/wined3d/directx.c:
	wined3d: Set WINED3DCAPS2_DYNAMICTEXTURES flag.

2007-03-13  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/directory.c:
	cmd.exe: Add DIR /X support.

	* programs/cmd/directory.c:
	cmd.exe: Add DIR /T support.

	* programs/cmd/directory.c:
	cmd.exe: Add dir /L support.

	* programs/cmd/builtins.c:
	cmd.exe: Make SET have correct errorlevel.

	* programs/cmd/builtins.c:
	cmd.exe: Add SET /P support.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add 2>&1 and 1>&2 support.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add TYPE multiple file support.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add support for stderr redirection to a file.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Save initial working directory.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for FTYPE.

2007-03-12  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Remove some redundant code in IWineD3DVertexBufferImpl_FindDecl().

	* dlls/wined3d/state.c:
	wined3d: Remove a redundant check in handleStreams().

	* dlls/wined3d/state.c:
	wined3d: Remove some redundant checks in the vertexdeclaration() state handler.

	* dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/state.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Disable vertex shaders when transformed vertices are used.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove FVF related fields from IWineD3DVertexDeclaration.

	* dlls/wined3d/drawprim.c:
	wined3d: 11 space indent is ugly.

	* dlls/wined3d/state.c, dlls/wined3d/stateblock.c:
	wined3d: Correct various texture limits checks.

2007-03-12  Dan Kegel <dank@kegel.com>

	* dlls/advapi32/registry.c:
	advapi32: RegGetKeySecurity needs to pass length of struct to caller.

2007-03-12  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Only retrieve posted and paint messages in an STA message loop.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Tests that show that the allocation rules for unmarshaling a conformant
	array are the same as those for a simple structure.

2007-03-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c, dlls/advpack/install.c, dlls/advpack/reg.c:
	advpack: Constify some variables.

	* dlls/advapi32/security.c:
	advapi32: Explicitly initialize nested array element.

2007-03-12  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c,
	  dlls/wined3d/utils.c:
	wined3d: Implemented signed texture formats via NV_TEXTURE_SHADER.

2007-03-10  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/basetexture.c:
	wined3d: Set wrapmode for cubemags to clamp regardless of the sampler state.

2007-03-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, server/mach.c:
	Fixed some compilation issues on Mac OS X Leopard.

2007-03-10  Fabian Bieler <der.fabe@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Height of rectangle is bottom - top, not vice versa.

2007-03-11  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/ole32/moniker.c, dlls/ole32/stg_prop.c:
	ole32: Add DebugInfo to critical sections.
	Also add missing DeleteCriticalSection.

2007-03-10  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/winenas.drv/audio.c:
	winenas.drv: Add DebugInfo to critical sections.

	* dlls/dmloader/loader.c:
	dmloader: Add DebugInfo to critical sections.

	* dlls/winmm/winmm.c:
	winmm: Add DebugInfo to critical sections.

	* dlls/winearts.drv/audio.c:
	winearts.drv: Add DebugInfo to critical sections.

	* dlls/wineoss.drv/audio.c:
	wineoss.drv: Add DebugInfo to critical sections.

	* dlls/wineaudioio.drv/audio.c:
	wineaudioio.drv: Add DebugInfo to critical sections.
	Also add missing DeleteCriticalSection.

	* dlls/wineesd.drv/audio.c:
	wineesd.drv: Add DebugInfo to critical sections.

	* dlls/winex11.drv/dib.c:
	winex11.drv: Add DebugInfo to critical sections.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c:
	dsound: Conform critical section DebugInfo names.

	* dlls/winealsa.drv/alsa.c:
	winealsa.drv: Conform critical section DebugInfo names.

	* dlls/rsaenh/handle.c:
	rsaenh: Add DebugInfo to critical sections.

	* dlls/urlmon/binding.c:
	urlmon: Add DebugInfo to critical sections.

	* dlls/wintab32/wintab32.c:
	wintab32: Add DebugInfo to critical sections.

	* dlls/secur32/secur32.c:
	secur32: Add DebugInfo to critical sections.

	* dlls/quartz/dsoundrender.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/memallocator.c,
	  dlls/quartz/parser.c, dlls/quartz/systemclock.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c:
	quartz: Add DebugInfo to critical sections.
	Also add missing DeleteCriticalSection.

	* dlls/qcap/capturegraph.c, dlls/qcap/v4l.c, dlls/qcap/vfwcapture.c:
	qcap: Add DebugInfo to critical sections.

	* dlls/riched20/txtsrv.c:
	riched20: Add DebugInfo to critical sections.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add DebugInfo to critical sections.

	* dlls/mciavi32/mciavi.c:
	mciavi32: Add DebugInfo to critical sections.

	* dlls/netapi32/nbcmdqueue.c, dlls/netapi32/nbnamecache.c,
	  dlls/netapi32/nbt.c, dlls/netapi32/netbios.c:
	netapi32: Add DebugInfo to critical sections.

	* dlls/ntdll/heap.c, dlls/ntdll/rtl.c:
	ntdll: Add DebugInfo to critical sections.

	* dlls/msvcrt/file.c, dlls/msvcrt/lock.c:
	msvcrt: Add DebugInfo to critical sections.

	* dlls/mapi32/prop.c:
	mapi32: Add DebugInfo to critical sections.

	* dlls/crypt32/context.c, dlls/crypt32/oid.c, dlls/crypt32/proplist.c,
	  dlls/crypt32/store.c:
	crypt32: Add DebugInfo to critical sections.

	* dlls/itss/chm_lib.c:
	itss: Add DebugInfo to critical sections.

	* dlls/kernel32/file.c:
	kernel32: Add DebugInfo to critical sections.

2007-03-11  Hagop Hagopian <shaitani@gmail.com>

	* dlls/comctl32/tests/tab.c:
	comctl32: Adding getter-setter tests for tab control.

2007-03-10  Stefan Huehner <stefan@huehner.org>

	* dlls/advpack/tests/advpack.c, dlls/advpack/tests/install.c,
	  dlls/browseui/tests/autocomplete.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/rebar.c, dlls/comctl32/tests/updown.c,
	  dlls/ddraw/tests/visual.c, dlls/devenum/createdevenum.c,
	  dlls/devenum/devenum_main.c, dlls/devenum/mediacatenum.c,
	  dlls/dsound/tests/ds3d.c, dlls/gdi32/opengl.c,
	  dlls/gdi32/tests/font.c, dlls/kernel32/tests/change.c,
	  dlls/mscoree/mscoree_main.c, dlls/mshtml/nsembed.c,
	  dlls/oleaut32/tests/olefont.c, dlls/secur32/tests/ntlm.c,
	  dlls/shell32/pidl.c, dlls/shlwapi/tests/string.c,
	  dlls/wineps.drv/glyphlist.c, dlls/winex11.drv/clipboard.c,
	  dlls/wnaspi32/aspi.c, include/msiquery.h, programs/progman/group.c,
	  programs/progman/main.c, programs/progman/program.c,
	  programs/regedit/hexedit.c, programs/winecfg/drive.c,
	  programs/winecfg/drivedetect.c, programs/winecfg/theme.c,
	  programs/wineconsole/wineconsole.c, programs/wordpad/wordpad.c:
	Change some functions arguments from () -> (void).

2007-03-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Prepare for more tests and use skip.

2007-03-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/version.c:
	kernel32/tests: Use skip.

	* dlls/d3d9/tests/visual.c:
	d3d9/tests: Use skip as is done in the other tests.

	* dlls/d3d8/tests/visual.c:
	d3d8/tests: Use skip as is done in the other tests.

	* dlls/dnsapi/tests/Makefile.in, dlls/dnsapi/tests/name.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi/tests: Load dnsapi dynamically and use skip.

2007-03-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/tests/error.c:
	ntdll: Make the error test pass under XP.

2007-03-12  Francois Gouget <fgouget@free.fr>

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd: Fix compilation on systems that don't support nameless unions.

2007-03-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Stop DSound buffer playback when the filter is paused or stopped,
	not the next time it's processed.

2007-03-10  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c:
	comctl32: Implement LVS_EX_DOUBLEBUFFER.

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	comctl32: Fix a typo.

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Fix my last patch.
	My last patch was wrong and caused some nasty regressions. Mapping
	CLR_DEFAULT to the global defaults seem to be what native does.

2007-03-07  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Account for offscreen rendering when setting up the clearing scissor
	rectangle.

2007-03-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Blit the offscreen texture into the drawable if needed.
	When using pbuffer or back buffer offscreen rendering the content of
	the drawable will have been overwritten. Thus the texture has to be
	written into the drawable. An exception is the (pretty common) case
	that the whole render target is cleared before rendering to it.

	* dlls/wined3d/device.c:
	wined3d: Restore the index buffer when switching from UP to buffer drawing.
	The state handler binds index buffer 0 when a user pointer is used. Likewise
	the real index
	buffer has to be restored when switching back to drawing from index buffers.

2007-03-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/service.c:
	advapi32: Constify some variables.

	* dlls/advapi32/lsa.c:
	advapi32: Constify some variables.

	* dlls/advapi32/crypt_md4.c, dlls/advapi32/tests/crypt_md4.c:
	advapi32: Constify some variables.

2007-03-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Replace const pointer parameters with correct non-const pointers.

2007-03-09  Chris Peterson <Chrisp@ucla.edu>

	* dlls/comctl32/tests/treeview.c:
	comctl32: treeview: Message sequencing tests.

2007-03-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/string.c:
	ntdll: Fixed a compiler warning for size_t/unsigned int mismatch.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Avoid a printf format warning.

2007-03-09  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Check allocation failure and clear memory in DSound Renderer.

2007-03-09  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Remove clrTextBkDefault member from LISTVIEW_INFO and fix (clrTextBk
	== CLR_DEFAULT) handling for custom drawing.

	* dlls/comctl32/tests/listview.c:
	comctl32: Add a failing custom draw related test.

2007-03-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Implement CoAddRefServerProcess and CoReleaseServerProcess.

	* dlls/ole32/compobj.c:
	ole32: Make RegisteredClass list into a standard Wine list.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Don't keep the local server named pipe open for a single-use object.

	* dlls/ole32/tests/compobj.c:
	ole32: Add some tests for the flags input to CoRegisterClassObject.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Close the named pipe after revoking local server objects.

	* dlls/ole32/tests/marshal.c:
	ole32: Enable local server test and make it work with Win9x COM implementation.

	* dlls/ole32/compobj.c:
	ole32: REGCLS_MULTIPLEUSE implies CLSCTX_INPROC_SERVER in CoRegisterClassObject.

2007-03-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c:
	mshtml: Use get_client_disp_property in SetClientSite to get silent property.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added Navigate2 test.

	* dlls/shdocvw/navigate.c:
	shdocvw: Call EnableModeless and SetStatusText in navigate.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Move frame variable to DocHost.

	* dlls/shdocvw/navigate.c:
	shdocvw: Release callback and bindctx in bind_url_to_object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Added mode dispids implementation in DocHost::Invoke.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Always set hostui to NULL in SetClientsite.

	* dlls/shdocvw/client.c:
	shdocvw: Added DISPID_AMBIENT_OFFLINEIFNOTCONNECTED and DISPID_AMBIENT_SILENT
	implementation in DocHost::Invoke.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move offline and silent variables to DocHost.

2007-03-03  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/wineconsole_Ru.rc:
	wineconsole: Update Russian resources.

	* programs/cmd/Ru.rc:
	cmd: Update translation and synchronize Russian resource.

	* dlls/comdlg32/cdlg_Ru.rc, dlls/comdlg32/cdlg_Uk.rc:
	comctl32: Update Russian and Ukrainian resourses.

2007-03-03  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* dlls/kernel32/computername.c, dlls/kernel32/tests/environ.c:
	kernel32: Fix GetComputerNameA to not count trailing NULL, with test.

2007-03-09  Alexandre Julliard <julliard@winehq.org>

	* server/Makefile.in, server/process.h, server/procfs.c:
	server: Added process control support using /proc on Solaris.

2007-03-08  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/signal_i386.c:
	ntdll: Handle SIMD exceptions.

	* dlls/ntdll/tests/exception.c:
	ntdll: Testcase for handling SIMD exceptions.

2007-03-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Fix return codes returned by IBindCtx::RegisterObjectBound and
	IBindCtx::RevokeObjectBound when used on NULL objects.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Fix cbStruct handling in IBindCtx:GetBindOptions.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Add more tests of IBindCtx functions.
	Add tests for IBindCtx::GetObjectParam, IBindCtx::RevokeObjectParam and
	IBindCtx::RevokeObjectBound.

2007-03-08  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: monthcal: Reject out of range dates in MCM_SETCURSEL.

2007-03-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winedos/int2f.c:
	winedos: Check a file handle against INVALID_HANDLE_VALUE, not 0.

2007-03-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/serialui/confdlg.c:
	serialui: Replace const pointer type with correct pointer to const.

2007-03-09  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/winecfg/Ko.rc:
	winecfg: Fix typo.

2007-03-08  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winecfg/Ro.rc, programs/winecfg/winecfg.rc:
	winecfg: Initial Romanian translation.

2007-03-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/cpu.c:
	kernel32: Implemented GetSystemInfo() for Solaris.

2007-03-08  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c:
	dplayx: Add DebugInfo to critical sections.

	* dlls/dmime/performance.c:
	dmime: Add DebugInfo to critical sections.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Add DebugInfo to critical sections.

2007-03-08  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/ppd.c:
	wineps.drv: Remove paper sizes that lack either a PageSize or a PaperDimension
	entry in the PPD.

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/init.c, dlls/wineps.drv/ppd.c,
	  dlls/wineps.drv/ps.c, dlls/wineps.drv/psdrv.h:
	wineps.drv: Convert the page size list to a standard Wine list.

2007-03-08  Francois Gouget <fgouget@free.fr>

	* programs/rpcss/np_server.c:
	rpcss: Fix a file handle leak in RPCSS_BecomePipeServer().
	Also, RPCSS_NPConnect() returns a file handle so treat it as such by
	checking it against INVALID_HANDLE_VALUE and not NULL.

	* dlls/ws2_32/socket.c:
	ws2_32: Fix an int/long mismatch in a trace.

	* dlls/ws2_32/socket.c:
	ws2_32: Replace a few -1 literals with SOCKET_ERROR.
	Do a small tweak in WS2_send() so it looks more like WS2_recv().

2007-03-08  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wininet/ftp.c:
	wininet: Fix a couple of reversed checks that could result in leaked socket
	handles.

2007-03-08  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet: Check file handles against INVALID_HANDLE_VALUE, not NULL.
	Simplify the file handle handling in FTP_FtpPutFileW().

2007-03-08  Francois Gouget <fgouget@codeweavers.com>

	* dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Fix a file handle leak in RPCRT4_RPCSSOnDemandCall().
	Also, RPCRT4_RpcssNPConnect() returns a file handle so treat it as
	such by checking it against INVALID_HANDLE_VALUE and not NULL.

2007-03-08  Francois Gouget <fgouget@free.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c:
	dbghelp: Check file handles against INVALID_HANDLE_VALUE, not NULL.

2007-03-08  Tomas Carnecky <tom@dbservice.com>

	* dlls/dsound/buffer.c, dlls/dsound/primary.c, dlls/quartz/dsoundrender.c,
	  dlls/winedos/soundblaster.c, include/dsound.h:
	dsound: Update prototypes for IDirectSoundBuffer::Lock/Unlock.

2007-03-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/time.c:
	kernel32: Fixed DosDateTimeToFileTime behavior when timegm() is missing.
	The tm_isdst field needs to be initialized for mktime to do the right thing.

	* dlls/advapi32/tests/registry.c:
	advapi32: Fixed registry test that failed because of a buffer overflow.

2007-03-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c:
	mshtml: Release IOleCommandTarget in IPersistMoniker::Load.

2007-03-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/main.c:
	secur32: Check for actual return value on invalid QuerySecurityPackageInfo call.

2007-03-08  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/filtergraph.c,
	  dlls/quartz/main.c, dlls/quartz/memallocator.c, dlls/quartz/parser.c,
	  dlls/quartz/systemclock.c, dlls/quartz/transform.c,
	  dlls/quartz/videorenderer.c:
	quartz: Use proper alloc/free functions for COM objects.

2007-03-08  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: TKIND_COCLASS parameters to Invoke'd functions should be converted
	into VT_DISPATCH instead of VT_UNKNOWN.
	Add a test for this.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Set output param to NULL in BindCtxImpl_EnumObjectParam.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: Fix BindCtxImpl_GetBindOptions to return the correct locale and to not
	fail if the input size is too large.

	* dlls/ole32/bindctx.c, dlls/ole32/tests/moniker.c:
	ole32: CreateBindCtx should fail if reserved parameter is not zero.

2007-03-08  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Support SHIFT /n option.

	* programs/cmd/builtins.c:
	cmd.exe: Add support for CD /D.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: setlocal and endlocal should preserve drive and directory.

	* programs/cmd/builtins.c:
	cmd.exe: Hide new internal vars during SET.

	* programs/cmd/builtins.c, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for working directories per drive.

	* programs/cmd/builtins.c:
	cmd.exe: Support TIME /T option.

	* programs/cmd/builtins.c:
	cmd.exe: Support DATE /T option.

	* programs/cmd/builtins.c:
	cmd.exe: Prevent options to pushd.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support PUSHD with wildcards.

	* programs/cmd/builtins.c:
	cmd.exe: Set errorlevel if CD fails.

	* programs/cmd/builtins.c:
	cmd.exe: Wildcards in directory names for CD.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support unquoted directories in CD command.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Support default colours for wineconsole.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add cmd.exe /T option.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add COLOR command.

2007-03-08  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fixed default dependencies to work properly in test dirs too.

	* Make.rules.in, configure, configure.ac, include/config.h.in,
	  tools/widl/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	configure: Get rid of lex compatibility support, we require flex anyway.

	* dlls/kernel32/heap.c:
	kernel32: Add missing limits.h include.

2007-03-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/tests/device.c:
	d3d8: Add tests for GetVertexShaderDeclaration, GetVertexShaderFunction and
	GetPixelShaderFunction.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix IWineD3DPixelShader_GetFunction / IWineD3DVertexShader_GetFunction.

	* dlls/d3d8/device.c:
	d3d8: Implement IDirect3DDevice8_GetVertexShaderDeclaration.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c:
	d3d8: Save the d3d8 vertex declaration.

2007-03-07  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/symbol.c:
	winedbg: Do not write over const char * parameter.
	Also pass the right string to SymEnumSymbols and check for _ in symbol
	name, instead of beginning of string.

2007-03-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/shell32/pidl.c, dlls/wined3d/device.c:
	janitorial: Remove two redundant checks for NULL.

	* dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/header.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/string.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/updown.c:
	comctl32: Remove redundant NULL checks before Free() (found by Smatch).

2007-03-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/mmsystem.c, include/wine/mmsystem16.h:
	winmm: Replace const pointer parameters with correct pointers to const.

	* dlls/mpr/wnet.c:
	mpr: Replace const pointer parameters with correct pointers to const.

2007-03-07  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/kernel32/process.c:
	kernel32: Allow to execute .cmd files.

2007-03-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

2007-03-06  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

2007-03-07  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c:
	winedump: Fixed formatting of timestamps.

	* include/wine/wine_common_ver.rc:
	wine_common_ver: Set company name to Microsoft, some apps check for that.

	* .gitignore, dlls/advapi32/Makefile.in, dlls/advapi32/version.rc,
	  dlls/imm32/Makefile.in, dlls/imm32/version.rc,
	  dlls/iphlpapi/Makefile.in, dlls/iphlpapi/version.rc,
	  dlls/lz32/Makefile.in, dlls/lz32/version.rc, dlls/ntdll/Makefile.in,
	  dlls/ntdll/version.rc, dlls/rpcrt4/Makefile.in,
	  dlls/rpcrt4/version.rc, dlls/rsaenh/Makefile.in,
	  dlls/rsaenh/version.rc, dlls/version/Makefile.in,
	  dlls/version/version.rc, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/version.rc:
	Added version information for a number of dlls.

2007-03-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Use unicode Win32 APIs when possible.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Use unicode Win32 APIs when possible.

2007-03-07  Rob Shearman <rob@codeweavers.com>

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Implement writing of SAFEARRAY type descriptions in typelibs.

	* dlls/Maketest.rules.in:
	Maketest.rules.in: Make CROSSOBJS consistent with the equivalent OBJS rule in
	the toplevel Make.rules.in.

2007-03-06  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/pipe.c:
	kernel32: Add tests for ImpersonateNamedPipeClient.

2007-03-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/netapi32/wksta.c:
	netapi32: Added support for more info levels in NetWkstaGetInfo.

2007-03-07  Luis Carlos Busquets Pérez <luis.busquets@ilidium.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dpnaddr/Makefile.in, dlls/dpnaddr/dpnaddr.spec,
	  dlls/dpnaddr/version.rc:
	dpnaddr: Added dll that just forwards to dpnet.

2007-03-07  Alexandre Julliard <julliard@winehq.org>

	* server/token.c:
	server: Use internal luid_t type where appropriate.

2007-03-06  Juan Lang <juan_lang@yahoo.com>

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c,
	  tools/make_requests:
	ntdll: Implement NtAllocateLocallyUniqueId with server call.

2007-03-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Rework surface dirtification.
	Previously the surfaces stored a flag if the system memory copy was
	ahead of the gl copy(SFLAG_DIRTY) or the gl copy is
	ahead(SFLAG_GLDIRTY). The pbuffer copy was 'managed' differently using
	SFLAG_INPBUFFER and SFLAG_INTEXTURE.
	This patch replaces them with 3 flags, INSYSMEM, INPBUFFER and
	INTEXTURE which specify which copy contains the most up to date
	copy. It is perfectly valid to have more than one of those flags
	set. One must be set at least (except at init, when no content is in
	the surface yet). When one copy is modified, the flags for the others
	are removed.

2007-03-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DSurface::SetPBufferState.
	The method is removed because it does not really help with
	anything. It should not be exported from wined3d, there is no need for
	the other libs to call it. It does not help abstraction and code
	simplification in any way because it is very specific and the code
	calling it has to know what is happening in the surface to use this
	method.

2007-03-07  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Search SystemLinked fonts when looking for a valid replacement.

	* dlls/user32/painting.c:
	user32: Don't delete hrgnClip until we are done using it.
	Thanks to Peter Oberndorfer for noticing this.

2007-03-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_DeletePort.

	* dlls/localspl/localmon.c:
	localspl: Implement DeletePort for XcvDataPort.

2007-03-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Remove false FIXME.

	* dlls/mshtml/navigate.c:
	mshtml: Improve ReadSegments implementation.

	* dlls/atl/registrar.c:
	atl: Compare file handle to INVALID_HANDLE_VALUE to handle errors.

2007-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/visual.c:
	d3d9: Add a mova rounding test.

	* dlls/wined3d/directx.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h, programs/winecfg/Bg.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/x11drvdlg.c:
	wined3d: Remove broken software shaders.

	* dlls/wined3d/directx.c:
	wined3d: Fix a typo.

2007-03-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/mdi.c, dlls/user32/painting.c, include/winuser.h:
	user32: Replace const pointer parameters with correct pointers to const.

	* dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h,
	  dlls/comdlg32/fontdlg16.c:
	comdlg32: Replace const pointer parameters with correct pointers to const.

2007-03-06  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add some tests for IBindCtx.

	* dlls/ole32/tests/marshal.c:
	ole32: Remove some unnecessary traces from the HeapUnknown implementation.

	* dlls/ole32/tests/compobj.c:
	ole32: Fix a failing CoUnmarshalInterface test on Windows.

	* dlls/ole32/tests/moniker.c:
	ole32: Fix a use-after-free of the file moniker in the running object table
	tests.

	* server/registry.c, server/token.c:
	server: A general solution for handling MAXIMUM_ALLOWED access right has been
	implemented so remove the workarounds.

2007-03-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Do not specify the viewport origin upside down when doing offscreen
	rendering.
	The gl viewport origin is the lower left corner of the window, in d3d
	it is the upper right corner. This is corrected when setting the
	viewport. However, when we are doing offscreen rendering, this is
	reversed. So do not flip the viewport origin when rendering offscreen.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Disable depth stencil related states without a depth stencil buffer.
	Except with fbos, it is not possible to remove the depth stencil
	buffer from the opengl frame buffer, so when the d3d app sets a NULL
	depth stencil disable all states that work with the depth stencil
	buffer.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Clearing the depth stencil buffer fails without a depth stencil buffer.

2007-03-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Use an aux buffer as blitting helper if available.
	This helps performance a bit because the function does not have to
	wait for the 2nd read to finish before returning. Only do that if we
	have an aux buffer to mess with for free though.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Store the number of aux buffers in the gl limits structure.

2007-03-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/surface.c:
	wined3d: WINED3DFMT_U8V8 is signed.
	Plain OpenGL does not provide any signed pixel formats, so the
	unsigned GL_RGB is used for loading perturbation data into pixel
	shaders that use texbem. For correct loading, the signedness has to be
	considered.

2007-03-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Adjust the rhw transformation for offscreen rendering.

2007-03-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msvcrt/tests/dir.c:
	msvcrt/tests: Properly remove temporary directory.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Remove tempfile after running the tests.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Remove tempfile after running the tests.

2007-03-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/snmpapi/main.c:
	snmpapi: Fix printf format warnings.

2007-03-06  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: NTLM's AcquireCredentialHandleA/W should accept domains and usernames
	with lengths of 0.
	Add tests for these cases.

	* dlls/secur32/ntlm.c:
	secur32: NTLM - don't bother nul terminating the password string as nothing
	relies on it being nul terminated.

	* dlls/secur32/ntlm.c:
	secur32: NTLM - don't copy more data from User, Domain and Password
	pointers in the SEC_WINNT_AUTH_IDENTITY structure than the
	corresponding Length fields say the pointers hold.

2007-03-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Add an extensive EnumFontFamilies test, fix some failures when running
	under Wine.

2007-03-06  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/tests/htmldoc.c, dlls/msi/tests/install.c,
	  dlls/wineps.drv/psdrv.h, programs/cmd/batch.c,
	  programs/cmd/builtins.c:
	Assorted spelling fixes.

	* dlls/dplayx/tests/dplayx.c:
	dplayx/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/dplayx/tests/dplayx.c:
	dplayx/tests: Add missing '\n' to ok() call.

2007-03-06  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi32/freetype.c:
	gdi32: Fix FontSubstitute values for Korean locale.

	* dlls/gdi32/freetype.c:
	gdi32: Add missing pFT_Done_Face().

2007-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/init.c:
	wineps.drv: Return correct values for DESKTOPHORZ/VERTRES since they are used
	to setup the visible region.

	* tools/wine.inf:
	wine.inf: dwReserved values for DirectPlay providers should be dwords
	(spotted by Alessandro Pignotti).

2007-03-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Do not ignore the keysyms assigned to a group switch, it leads
	to side effects like missing KeyRelease events.

	* dlls/user32/tests/win.c:
	user32: Make the excessive scroll test pass under Windows.

2007-03-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/serialui/tests/confdlg.c:
	serialui/tests: Add some tests for CommConfigDialog.

	* dlls/kernel32/comm.c, dlls/serialui/confdlg.c:
	serialui: Fix return type for CommConfigDialog.

	* dlls/localspl/localmon.c:
	localspl: Do not crash when Xcv was opened without a space in the name.

2007-03-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Vista returns a different status.

2007-03-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/tgt_active.c:
	winedbg: Forward the wShowWindow option from winedbg to the debuggee.

	* programs/winedbg/tgt_minidump.c:
	winedbg: We no longer need to force for ELF modules in minidumps as we do it
	automatically now.

2007-03-05  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Compare the class contexts in COM_GetRegisteredClassObject.
	Only objects that have been registered for a class context that matches
	the requested class context should be returned.

	* dlls/ole32/ole2.c:
	ole32: OleLoad should call CoCreateInstance with CLSCTX_INPROC_SERVER as well
	as CLSCTX_INPROC_HANDLER.

	* dlls/credui/credui.rc:
	credui: Fix a missing ":" in the credential dialog domain name text box.

2007-03-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvfw32/drawdib.c:
	msvfw32: Replace const pointer parameter with correct pointer to const.

	* dlls/comctl32/rebar.c:
	comctl32: Replace const pointer parameter with correct pointer to const.

	* dlls/msi/custom.c:
	msi: Replace const pointer parameters with correct pointers to const.

2007-03-05  Mike Schaadt <mschaadt@gmail.com>

	* dlls/snmpapi/main.c:
	snmpapi: Changed %llu to %x%08lx.

2007-03-05  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c, tools/wine.inf:
	gdi32: Set FontSubstitute values by locale.

2007-03-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Use skip where appropriate.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Make sure we can run on win9x and NT again.

2007-03-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c, dlls/quartz/enumpins.c,
	  dlls/quartz/filesource.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/parser.c:
	quartz: Improve reference traces.

2007-03-05  Alexandre Julliard <julliard@winehq.org>

	* server/mach.c:
	server: Replace use of internal __pthread_kill() function by a system call.

	* dlls/user32/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	server: Expose areas revealed by changes to the window region.

	* programs/clock/main.c, programs/clock/winclock.c,
	  programs/clock/winclock.h:
	clock: Make the window round in no title bar mode, to exercise SetWindowRgn.

2007-03-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/lsa.c:
	advapi32/tests: Move skip to a more appropriate place.

	* dlls/advapi32/tests/crypt_md5.c:
	advapi32/tests: Don't use FreeLibrary with GetModuleHandle.

2007-03-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Fix a format warning.

2007-03-05  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/sync.c:
	kernel32: Implement CallNamedPipeW.

	* dlls/wininet/tests/http.c, dlls/wininet/utility.c:
	wininet: Always make copies of strings passed to INTERNET_SendCallback.
	This ensures that applications that change the strings received in
	status callbacks don't affect the data needed to successfully connect to
	the correct server.

	* dlls/credui/credui_main.c:
	credui: The pfSave parameter of CredUIPromptForCredentials is optional.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the PackageCode property based on the "revision number" data in the
	summary information.
	Add a test to show that PackageCode is set by MSI.

	* dlls/msi/custom.c:
	msi: Rewrite the second loop in ACTION_FinishCustomActions so that it always
	terminates.
	Create an array of handles to wait on so that we can wait without
	holding a critical section.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the Date, Time and VersionDatabase properties.
	Add tests for these properties.
	Update the todo list of properties to set.

2007-03-03  Joris Huizer <joris_huizer@yahoo.com>

	* tools/winedump/minidump.c, tools/winedump/msc.c:
	winedump: sign-compare fixes.

	* loader/preloader.c:
	preloader: sign-compare fix.

	* tools/winebuild/import.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: sign-compare fixes.

2007-03-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Adjust the rhw transformation for offscreen rendering.
	When drawing processed vertices with the fixed function pipeline the
	projection matrix is set up to map y values from 0 to height to 1.0;
	-1.0(gl and d3d coord systems are flipped). This moves the y axis to
	the bottom of the drawing area. When later on the y inversion matrix
	is applied for offscreen rendering, the coordinate system will get
	flipped out of the viewport.
	This patch sets the Y range up upside down when using offscreen
	rendering, so the invymat will flip it to the correct position. This
	has to happen before the 0.375 pixel correction.

2007-03-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Use the scissor test when clearing the full surface too.
	It was incorrect to disable the scissor test for full surfaces in my
	clear patch. With back buffer offscreen rendering the viewport does
	not seem to restrict clearing, and with different sizes of depth
	stencil and color buffer the final fantasy XI demo seems to expect the
	clear to be restricted.

2007-03-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filesource.c:
	quartz: Don't AddRef an object we just created and are handing back to the
	caller.

2007-03-04  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/pin.c:
	quartz: Report the previous refcount of a PullPin object.

2007-03-04  Jason Edmeades <us@edmeades.me.uk>

	* dlls/kernel32/tests/file.c:
	kernel32/tests: Show wrong behaviour with current directory.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Fix stdio redirects.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for del file1 file2.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Makefile.in, programs/cmd/Nl.rc,
	  programs/cmd/No.rc, programs/cmd/Pl.rc, programs/cmd/Pt.rc,
	  programs/cmd/Ru.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc,
	  programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Add ASSOC command.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: PROMPT option to show pushd levels.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Additional PROMPT options.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Support rd dir1 dir2.

2007-03-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/tgt_module.c:
	dbghelp: module target: Better error handling when init fails and creates a
	dummy thread.

	* dlls/dbghelp/msc.c:
	dbghelp: Fixes for loading circular references on function signature.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, include/dbghelp.h:
	dbghelp: Implemented SymEnumTypesW.

	* programs/winedbg/tgt_minidump.c:
	winedbg: When reloading a minidump, recreate all threads from the thread record
	(and not just the first one).

	* programs/winedbg/types.c:
	winedbg: Fix printing function signature type for circular references on
	return type.

	* programs/winedbg/types.c:
	winedbg: Fix maint type when no process is active.

2007-03-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Use the right vtable offset for the IMediaFilter functions.

2007-03-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c:
	mapi32/tests: Don't run tests if functions are not implemented.

2007-03-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Avoid a needless goto.

2007-03-05  Francois Gouget <fgouget@free.fr>

	* programs/cmd/directory.c:
	cmd: Remove unneeded NONAMELESS* defines and ifdefs.

2007-03-04  Francois Gouget <fgouget@free.fr>

	* programs/oleview/typelib.c:
	oleview: Fix compilation on systems that don't support nameless unions.

	* programs/cmd/batch.c:
	cmd: Fix compilation on systems that don't support nameless unions.

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

2007-03-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt_lmhash.c, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Replace const pointer parameters with correct pointers to const.

	* dlls/advapi32/crypt.c:
	advapi32: Constify a variable.

	* dlls/version/info.c:
	version: Constify some variables.

2007-03-03  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean resource.

2007-03-03  Kai Blin <kai.blin@gmail.com>

	* dlls/dplayx/tests/dplayx.c:
	dplayx: Remove unneeded test, fix compilation on msvc++.

	* dlls/dplayx/tests/dplayx.c:
	dplayx: Use skip and fix indentation.

	* dlls/secur32/tests/ntlm.c:
	secur32: Use skip for skipped tests, reduce indentation.

2007-03-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Use the proper CLSID when creating the IFilterMapper2 interface.

	* dlls/quartz/filtermapper.c, dlls/quartz/main.c,
	  dlls/quartz/quartz_private.h:
	quartz: Return the proper interface for IFilterMapper.

2007-03-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c:
	user32: win2k and XP return broken border info in GetWindowInfo most of the
	time, so there is no point in testing it.

	* dlls/user32/tests/msg.c:
	user32: Fix most of test failures when running message test under win2k and XP.

2007-03-02  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Tests for events for date and time picker added.

2007-03-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Try to build URL with full path if navigation to URL fails.

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Correctly handle URLs in SetChmPath.

2007-03-02  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Make exception test not hang when creating process fails.

2007-03-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: gl_FogFragCoord is a scalar.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: The texldl instruction takes 3 arguments.

	* dlls/wined3d/state.c:
	wined3d: Properly check the clipplane index against the limit.

2007-03-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	programs/winetest: Raise fileversion.

	* dlls/msi/tests/install.c:
	msi/tests: Properly cleanup after each test.

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Rewording and cleanup.

	* dlls/advapi32/tests/lsa.c:
	advapi32/tests: Make use of skip.

2007-03-02  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.32.

----------------------------------------------------------------
2007-03-02  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Don't fail replacement on no localized family name.

2007-03-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/netapi32/netbios.c:
	netapi32: Fixed array overflow (spotted by Coverity).

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Protect from 1 byte static buffer overflow.

	* dlls/uxtheme/draw.c:
	uxtheme: Fixed wrong index in draw.c.

2007-03-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advapi32/tests/crypt_md5.c:
	advapi32/tests: Make use of skip.

2007-03-01  Lei Zhang <thestig@google.com>

	* programs/regedit/regproc.c:
	regedit: Correctly parse key name containing ']' when deleting/exporting.

	* programs/regedit/regproc.c:
	regedit: Allow entering - for a key in a .reg file to delete that key.

	* programs/regedit/regproc.c, programs/regedit/regproc.h:
	regedit: Removed dead code from regproc.c.

	* programs/regedit/En.rc:
	regedit: Updated English resources to remove shortcut conflicts.

2007-03-01  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/win.c:
	user32: Add another test for GetUpdateRect().

2007-03-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more tests.

	* dlls/mshtml/navigate.c:
	mshtml: Always read data in OnDataAvailable.

2007-03-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Fix FindMimeFromData tests on IE7.

2007-03-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi32/font.c, dlls/gdi32/freetype.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/tests/font.c:
	gdi32: Implement GetFontUnicodeRanges.

2007-03-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/chm.c,
	  dlls/hhctrl.ocx/content.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Store full chm paths to solve problems with relative paths.

2007-03-01  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use IPPROTO_TCP for SOL_TCP if SOL_TCP isn't defined.
	Fixes compilation on *BSD systems.

2007-03-01  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/color.c, dlls/wineps.drv/driver.c,
	  dlls/wineps.drv/init.c, dlls/wineps.drv/ppd.c,
	  dlls/wineps.drv/psdrv.h:
	wineps.drv: Many MacOSX generated ppd files don't include a *ColorDevice
	line. Treat these as if they were colour.

2007-03-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: header tests: Support different window border width.

	* dlls/comctl32/tests/rebar.c:
	comctl32: rebar tests: Support different window border width.

2007-03-01  Rob Shearman <rob@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/schannel/Makefile.in, dlls/schannel/schannel.spec,
	  dlls/schannel/schannel_main.c:
	schannel: Add new schannel dll that mostly forwards to secur32.

	* dlls/secur32/secur32.spec:
	secur32: SealMessage and UnsealMessage are aliases of EncryptMessage and
	DecryptMessage respectively.

2007-03-01  Alexandre Julliard <julliard@winehq.org>

	* tools/makedep.c:
	makedep: Fixed string comparison against the source tree path
	(reported by Kai Blin).

2007-02-27  Alessandro Pignotti <alex.pigna@inventati.org>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/dplayx/dplay.c, dlls/dplayx/tests/Makefile.in,
	  dlls/dplayx/tests/dplayx.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	dplay: Directplay should initialize session Guid, with conformance tests.

2007-02-27  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	wordpad: Add text alignment buttons.

2007-02-27  Bang Jun-Young <junyoung@mogua.com>

	* programs/notepad/Ko.rc:
	notepad: Fully revise Korean translation.

2007-03-01  Alexandre Julliard <julliard@winehq.org>

	* include/wine/test.h:
	wine/test: Print the official name of the test in summary.

2007-02-27  Aric Stewart <aric@codeweavers.com>

	* dlls/winex11.drv/keyboard.c, dlls/winex11.drv/x11drv.h:
	winex11.drv: Make sure keyboard state is up to date before processing
	GetAsyncKeyState.

2007-03-01  Alexandre Julliard <julliard@winehq.org>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/directory.c,
	  programs/cmd/wcmdmain.c:
	cmd: Fix silly local variables indentation that breaks diff -p.

2007-02-28  Alexander Farber <afarber@h754814.serverkompetenz.net>

	* programs/cmd/builtins.c:
	cmd: Support /-Y and COPYCMD environment variable in the "copy" builtin.

2007-02-28  Alexander Farber <Alexander.Farber@nokia.com>

	* programs/cmd/wcmdmain.c:
	cmd: Fixed 3 buffer overflows when fetching environment variables.

2007-03-01  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp: Let CreateFile deal with last error.

2007-03-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Spring cleanup in X11DRV_setup_opengl_visual, and added one new
	visual config (with aux buffers).

2007-03-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/query.c,
	  include/wine/wined3d_gl.h:
	wined3d: Support GL_APPLE_fence for event queries.

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support event queries using GL_NV_fence.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add GL_NV_fence defines and functions.

	* dlls/wined3d/surface.c:
	wined3d: Use the source surface's texture for writing the backup.
	The hwstretch blit code creates a new texture each time it is called
	to back up the back buffer and releases it afterwards. It is more
	efficient to keep the texture and release it with the surface.

	* dlls/wined3d/context.c:
	wined3d: Prepare only fixed function samplers for blit.

2007-03-01  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/winex11.drv/desktop.c:
	winex11.drv: Change virtual desktop refresh rate from 0 to 60.

2007-02-28  Lei Zhang <thestig@google.com>

	* programs/regedit/regproc.c:
	regedit: Correctly parse key name containing ']'.

2007-02-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Remove the not needed BANDS_NEED_LAYOUT flag.

2007-02-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: WM_SETFONT should send a RBN_HEIGHTCHANGE if necessary.

2007-02-28  Ken Thomases <ken@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: Use "ping -c 1" instead of "ping -w 1" for InternetCheckConnection.

	* dlls/gdi32/printdrv.c:
	gdi32: Use exec() and _exit() instead of system() and exit().

	* dlls/winspool.drv/info.c:
	winspool.drv: Use exec() and _exit() instead of system() and exit().

2007-02-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Bg.rc, dlls/shdocvw/De.rc, dlls/shdocvw/En.rc,
	  dlls/shdocvw/Es.rc, dlls/shdocvw/Fi.rc, dlls/shdocvw/Fr.rc,
	  dlls/shdocvw/Hu.rc, dlls/shdocvw/Ko.rc, dlls/shdocvw/Nl.rc,
	  dlls/shdocvw/No.rc, dlls/shdocvw/Pt.rc, dlls/shdocvw/Tr.rc,
	  dlls/shdocvw/shdocvw.rc:
	shdocvw: Remove no longer used resources.

2007-02-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Clip planes with vertex shaders.

2007-02-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move clip planes to the state table.

2007-02-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Leave the fog state handler after disabling fog.

	* dlls/wined3d/device.c:
	wined3d: Use GL_STATIC_DRAW_ARB instead of GL_STATIC_DRAW.

2007-02-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support for using auxilliary buffers for offscreen rendering.
	OpenGL AUX buffers provide a way for offscreen rendering which is very
	similar to our back buffer "offscreen" rendering emulation. Not all
	card support aux buffers, but if they are available they are a nice
	present which is easy to use.

2007-02-28  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Update header window in listview WM_PAINT handler.

	* dlls/comctl32/tests/listview.c:
	comctl32: Add listview WM_PAINT message sequence tests.

2007-02-28  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/tests/msg.c, dlls/comctl32/tests/msg.h:
	comctl32: Add message ids to allow multi-window test sequences.

2007-02-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c:
	advapi32: Create the service manager registry key if needed.

	* dlls/advapi32/service.c:
	advapi32: Reimplement QueryServiceConfigA on top of QueryServiceConfigW.

	* tools/widl/typegen.c:
	widl: Add missing '\n' on error message.

	* dlls/advapi32/advapi.c:
	advapi32: Avoid slashes and backslashes in user names.

2007-02-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Fix a test failure when running under Windows 2003.

	* programs/winetest/main.c:
	winetest: Set correct WINETEST_PLATFORM when running under Wine.

2007-02-27  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/batch.c:
	cmd.exe: Fix parameter parsing returns.
	Only return valid values for the location of the parameter if it is
	the one requested. Currently returns address when ANY quoted or
	bracketed parameter found.

	* programs/cmd/builtins.c:
	cmd.exe: Support del /a[:].

	* programs/cmd/builtins.c:
	cmd.exe: Support del /f.

	* programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: Support del /p.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h:
	cmd.exe: Prompt during del *.* and del *.

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/En.rc,
	  programs/cmd/Es.rc, programs/cmd/Fr.rc, programs/cmd/Ja.rc,
	  programs/cmd/Ko.rc, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/Ru.rc,
	  programs/cmd/Si.rc, programs/cmd/Tr.rc, programs/cmd/builtins.c,
	  programs/cmd/wcmd.h:
	cmd.exe: Add prompt for rd /s.

2007-02-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Added handling of topic selection.

	* dlls/hhctrl.ocx/content.c:
	hhctrl.ocx: Fill content tree.

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/chm.c,
	  dlls/hhctrl.ocx/content.c, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Added hhc parser.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Added content tab window.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Added code for handling tabs.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Resize tab control in Child's WM_SIZE handler.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Added HH_HELP_CONTEXT implementation.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Use HtmlHelpA in doWinMain.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Call PostQuitMessage only in hh.exe process.

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Don't use doWinMain in HtmlHelpW.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Release HHInfo on WM_CLOSE message.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Clean up Help_WndProc.

	* dlls/hhctrl.ocx/hhctrl.c, dlls/hhctrl.ocx/hhctrl.ocx.spec:
	hhctrl.ocx: Added DllGetClassObject stub implementation.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Remove redundant casts.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Move doWinMain to hhctrl.c.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Move more code from doWinMain.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Fixed releasing web browser object.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h,
	  dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Merge WBInfo to HHInfo.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Store whole HH_WINTYPEW struct in HHInfo, not its pointer.

	* dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Move hhctrl_hinstance to hhctrl.h.

2007-02-27  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Mimick native treeview display of enumerations.

2007-02-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Eliminate some W-to-A cross calls.

2007-02-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store multiple constant indices per list entry.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Store GLSL programs in a hash table rather than a linked list.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add some hash table code.

	* dlls/wined3d/directx.c:
	wined3d: Boolean constants use up only a single uniform each.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix matching WINED3DDECLUSAGE_POSITION against
	WINED3DDECLUSAGE_POSITIONT.

2007-02-27  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/file.c, dlls/ntdll/tests/file.c:
	ntdll: Test object attributes in NtCreateMailslotFile.

	* dlls/ntdll/file.c, dlls/ntdll/tests/file.c:
	ntdll: Set default timeout in NtCreateMailslotFile if parameter is NULL.

	* dlls/ntdll/file.c, dlls/ntdll/tests/file.c:
	ntdll: Check for passing a NULL handle to NtCreateMailslotFile and add a test.

	* dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/file.c:
	ntdll: Framework for NtCreateMailslotFile tests.

2007-02-27  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set TCP_NODELAY on the socket for the ncacn_ip_tcp transport to
	reduce latency.

2007-02-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/advapi32/tests/security.c, dlls/ntdll/sec.c:
	ntdll: More error checking. Properly handle NULL ACLs.

2007-02-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/schema.c, dlls/msxml3/tests/schema.c:
	msxml3: Implement {get,putref}_schemas.

	* dlls/msxml3/Makefile.in, dlls/msxml3/factory.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/schema.c,
	  dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/schema.c:
	msxml3: Add a schema cache object.

2007-02-26  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Extend debugger tests.
	Shows that second chance handler gets the same modified context as the
	exception handlers.

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Add a debugger around the exceptions.
	Shows that the first chance handler gets a unmodified context.
	Shows that changing the context has no effect when exception is not handled
	by debugger.

2007-02-27  Aric Stewart <aric@codeweavers.com>

	* dlls/kernel32/profile.c:
	kernel32: Allow for non base-10 int values in ini file.

2007-02-26  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/builtins.c:
	cmd.exe: Make 'set t' show all vars starting with 't'.

	* programs/cmd/builtins.c:
	cmd.exe: Add rd /s support.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Locate programs more correctly.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Allow special named env vars to be modified.

2007-02-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Simplify height calculation.

	* dlls/imm32/imm.c:
	imm32: Simplify ImmInternalSendIMENotify.

2007-02-27  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, tools/make_makefiles:
	configure: Generate stand alone AC_CONFIG_FILES() lines.

2007-02-27  Rob Shearman <rob@codeweavers.com>

	* dlls/user32/nonclient.c:
	user32: Send WM_GETTEXT to get the window caption when drawing the nonclient
	caption bar.

2007-02-27  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Small cosmetic fixes.
	- Clear title bar when creating new document.
	- Remove newline from statusbar.
	- Add horizontal line to toolbar.

2007-02-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/comm.c:
	kernel32: Remove duplicate code (use serialui instead).

	* dlls/serialui/confdlg.c:
	serialui: Use RS232 as default ProviderSubType.

2007-02-26  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Add another test.

2007-02-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/device.c:
	wined3d: More Clear fixes.
	Test for rectangles with x1 > x2 and y1 > y2. Empire earth passes such rects.

	* dlls/winex11.drv/desktop.c:
	winex11.drv: Ignore depth mismatch when using a virtual desktop.

	* dlls/wined3d/device.c:
	wined3d: Index buffer creation adjustments.
	Index buffer creation changes the bound gl buffer, thus the state has to
	be dirtified, similar to locking.
	In an error case the function returned without calling LEAVE_GL().

2007-02-26  Aric Stewart <aric@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Select correct replacement from ttc file.
	Some font files, especially Asian ttc files, can have several
	different families in the same file. So just using the file is not
	unique enough for identifying a replacement family.

	* dlls/gdi32/freetype.c:
	gdi32: Allow for loading of multibyte font name replacements.
	Change a number of A function to W functions in LoadReplaceList to
	allow for replacements of fonts with multibyte family names.

2007-02-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/wordpad.c:
	wordpad: Set default font to 'Times New Roman', like native does.

2007-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/regsvr.c:
	msxml3: Register schema cache classes.

2007-02-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/dc.c:
	gdi32: Make DC creation fail if we cannot allocate the visible region.

2007-02-25  Alex Arazi <alexarazi@gmail.com>

	* dlls/comctl32/tests/status.c:
	comctl32: More status bar tests.

2007-02-26  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/visual.c:
	ddraw/tests: Fix compilation on systems that don't support nameless unions.

	* dlls/ddraw/tests/d3d.c:
	ddraw/tests: There is no unnamed union in D3DLIGHT7.

2007-02-26  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Remove usage of uninitialised variable.

2007-02-26  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Convert the domdoc object to use the IXMLDOMDocument2 interface.

2007-02-26  Rob Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/typegen.c:
	widl: Print EXPR_NUM expresssions as unsigned to avoid printing an extra
	negative sign when lval is large.

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/tests/storage32.c:
	ole32: The stream returned by StgStreamImpl_Clone should have one reference,
	so call AddRef before returning.
	Move the call to StorageBaseImpl_AddStream to StgStreamImpl_Construct to
	fix StgStreamImpl_Clone, which forgets to call it.
	Add tests for OLE structured storage tests for IStream::Clone.

2007-02-25  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Add safearray type.

	* programs/oleview/typelib.c:
	oleview: Make optional flag "optional" not "opt.".

	* programs/oleview/typelib.c:
	oleview: Add forgotten newlines to forward declarations.

	* programs/oleview/typelib.c:
	oleview: Properly support enumerations.

	* programs/oleview/typelib.c:
	oleview: Report default values.

2007-02-23  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Check the valid rects after the set_window_pos wineserver call.

2007-02-26  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Properly send WM_IME_NOTIFY using SendMessage.

2007-02-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Handle the .gnu_debuglink files with the newly added alternate
	mechanism.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Allow to add an alternate file_map for an ELF file (where to look
	for its debug information).

	* dlls/dbghelp/elf_module.c:
	dbghelp: Rewrote the ELF section mapper for better data encapsulation.

2007-02-23  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/comctl32/comboex.c:
	comctl32: Use mask value in COMBOEX_GetItemA too.

2007-02-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Test the RBN_HEIGHTCHANGE notify and do some fixes.

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Set the style in WM_CREATE.

2007-02-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/cdlg_Bg.rc, dlls/comdlg32/cdlg_Ca.rc,
	  dlls/comdlg32/cdlg_Da.rc, dlls/comdlg32/cdlg_De.rc,
	  dlls/comdlg32/cdlg_Fi.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/comdlg32/cdlg_Hu.rc, dlls/comdlg32/cdlg_It.rc,
	  dlls/comdlg32/cdlg_Ja.rc, dlls/comdlg32/cdlg_Nl.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/comdlg32/cdlg_Sv.rc, dlls/comdlg32/cdlg_Uk.rc,
	  dlls/comdlg32/cdlg_Wa.rc:
	comdlg32: Synchronize ChooseColor dialog templates with the English one.

2007-02-25  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/wined3d/state.c:
	wined3d: Use application provided fog range when fog is enabled.

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: Forward already implemented functions to dbghelp.

2007-02-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Free the vertex declaration elements.

2007-02-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Overwrite an existing read-only file when copying the install file.

2007-02-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for using markers in SELECT clauses.

2007-02-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Check for a NULL text entry, as it can be blank in the VolumeCostList
	control.

	* dlls/msi/custom.c:
	msi: Free the custom action data after the thread function executes.

2007-02-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* tools/wineshelllink:
	wineshelllink: Fix menu entries with double spaces in their names.

2007-02-23  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add special SET modifiers.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Add %random% special name support.

	* programs/cmd/batch.c, programs/cmd/wcmd.h, programs/cmd/wcmdmain.c:
	cmd.exe: Unify parsing and expansion.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Add support for call :label and goto :label.

	* programs/cmd/En.rc, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Add pushd and popd.

2007-02-25  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/En.rc, programs/wordpad/No.rc,
	  programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add open file dialogue.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Nl.rc,
	  programs/wordpad/No.rc, programs/wordpad/Pl.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/wordpad.c:
	wordpad: Make edit menu more like native.

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Add paste support.

	* programs/wordpad/wordpad.c:
	wordpad: Don't create maximized window.

2007-02-24  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wordpad/resource.h, programs/wordpad/wordpad.c:
	wordpad: Make toolbar more like native.

2007-02-24  Fabian Bieler <der.fabe@gmx.net>

	* dlls/user32/message.c, dlls/user32/tests/msg.c:
	user32: Do not call NULL message callback.

2007-02-24  Rok Mandeljc <rok.mandeljc@email.si>

	* include/d3d9types.h:
	include/d3d9types.h: Remove Size from D3DVOLUME_DESC.

2007-02-23  Rob Shearman <rob@codeweavers.com>

	* include/wine/unicode.h, libs/wine/string.c:
	libwine: Eliminate duplicate function implementations in string.c
	by using macros to turn off inlining when including wine/unicode.h.

	* dlls/ole32/memlockbytes.c:
	ole32: Use IsEqualIID instead of memcmp in HGLOBALLockBytesImpl_QueryInterface.

	* dlls/ole32/tests/marshal.c:
	ole32: Add tests for default handler creation and handler marshaling.

2007-02-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c:
	wininet: Constify some variables.

2007-02-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/init.c:
	wineps.drv: Constify some variables.

	* dlls/version/info.c:
	version: Constify a variable.

2007-02-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Handle NULL argument in inet_addr.

2007-02-23  Alexandre Julliard <julliard@winehq.org>

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd: Remove execute permission on source files.

2007-02-22  Bang Jun-Young <junyoung@mogua.com>

	* documentation/README.ko:
	README: Fully revise Korean translation.

2007-02-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/chm.c:
	hhctrl.ocx: Added beginning #SYSTEM parsing code.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Handle memory allocation in OpenCHM and CloseCHM.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Move HH_OpenCHM implementation to HH_Open.

2007-02-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Use hhctrl.ocx's HINSTANCE.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Rewrite reading strings from #STRINGS section.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/hhctrl.h, dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Use wrappers of memory allocation functions.

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/main.c:
	hhctrl.ocx: Move DllMain to hhctrl.c.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c, dlls/hhctrl.ocx/hhctrl.h:
	hhctrl.ocx: Declare strdupAtoW in hhctrl.h and use it instead of duplicated
	*ANSIToUnicode.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/hhctrl.c, dlls/hhctrl.ocx/hhctrl.h,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h:
	hhctrl.ocx: Merge chm.h and webbrowser.h to hhctrl.h.

2007-02-22  Detlef Riekenberg <wine.dev@web.de>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/serialui/tests/Makefile.in, dlls/serialui/tests/confdlg.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	serialui/tests: Add initial tests.

	* dlls/serialui/confdlg.c:
	serialui: Fix return type for drvGetDefaultCommConfig.

2007-02-23  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/comctl32/animate.c:
	comctl32: Add DebugInfo to critical section.

	* dlls/wined3d/directx.c:
	wined3d: replace #ifdef with if() for DEBUG_SINGLE_MODE.

	* dlls/wined3d/directx.c:
	wined3d: Make CreateFakeGLContext thread safe.

	* dlls/winex11.drv/settings.c:
	winex11.drv: Set the refresh rate for NoRes to 60 instead of 0.

	* programs/cmd/batch.c:
	cmd: Remove redundant const.

2007-02-22  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user32/tests/monitor.c:
	user32/tests: Fix the ChangeDisplaySettingsEx() test so it succeeds on NT4.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Catch and report screen resolution change errors.

2007-02-23  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Corrections to the message ordering for IME input.

	* dlls/imm32/imm.c:
	imm32: Implement GSC_RESULTCLAUSE.

2007-02-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/install.c:
	version: Constify a variable.

2007-02-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/session.c:
	urlmon: Check if protocol object implements IInternetProtocolInfo interface.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Added CombineUrl implementation.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Added ParseUrl implementation.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Added IInternetProtocolInfo interface stub implementation.

	* dlls/itss/tests/protocol.c:
	itss: Added test of paths with back slashes and escaped URLs.

	* dlls/itss/Makefile.in, dlls/itss/protocol.c:
	itss: Fix handling URLs with back slashes and escaped URLs.

	* dlls/itss/storage.c:
	itss: Fix opening streams with back slashes.

2007-02-22  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/computername.c:
	kernel32: Fix crash in dns_gethostbyname.

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add a stub for NetUserChangePassword.

2007-02-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wing32/Makefile.in, dlls/wing32/wing32.c,
	  dlls/wing32/wing32.spec:
	dlls: Add wing32 dll.

	* dlls/gdi32/wing.c:
	gdi32: Avoid a not necessary CreateDC call.

2007-02-22  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Fix the 'Pacific Standard Time' display name to match the CLDR.
	This also removes the ambiguity with the new 'Pacific Standard Time (Mexico)'
	timezone.

2007-02-22  Francois Gouget <fgouget@free.fr>

	* dlls/shlwapi/msgbox.c, dlls/wined3d/device.c:
	Use the SW_XXX constants when calling ShowWindow().

2007-02-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Merge the A/W of elf_map_file into a single one.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Now load the .gnu_debuglink file using Unicode search paths.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Added helper to map a Unicode file.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c:
	dbghelp: Now moving the ELF loading code to Unicode.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/minidump.c, dlls/dbghelp/path.c:
	dbghelp: Move elf_fetch_file_info to Unicode.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/minidump.c:
	dbghelp: Make elf_enum_modules a Unicode function.

	* dlls/dbghelp/minidump.c:
	dbghelp: Now storing module internal info for minidumps in Unicode.

	* programs/winedbg/tgt_minidump.c:
	winedbg: Some enhancements by using Unicode flavors.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: A few fixes related to Unicode translation.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/module.c:
	dbghelp: Moved the internals for registered callback to Unicode.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c:
	dbghelp: Get rid of temporary module_get_type_by_nameA.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/msc.c, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, include/dbghelp.h:
	dbghelp: Implemented SymFindFileInPathW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c, include/dbghelp.h:
	dbghelp: Implemented SearchTreeForFileW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c, include/dbghelp.h:
	dbghelp: Implemented EnumDirTreeW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c, include/dbghelp.h:
	dbghelp: Implemented SymMatchFileNameW.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/path.c:
	dbghelp: Added module_get_type_by_name in Unicode form and keep the ANSI form
	for compatibility.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c:
	dbghelp: Moved ELF module loading interfaces to Unicode.
	The core the code remains ANSI, as all the information is stored as ANSI.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c:
	dbghelp: Move PE module loading to Unicode.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/path.c,
	  dlls/imagehlp/imagehlp.spec, include/dbghelp.h:
	dbghelp: Implemented FindExecutableImage[W].

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c:
	dbghelp: Now storing module information in Unicode form.

	* dlls/dbghelp/elf_module.c:
	dbghelp: .gnu_link support: rewrote helper functions for better later
	unicodification.

	* dlls/dbghelp/module.c:
	dbghelp: Prepare module loading functions to be switched to Unicode module
	storage.

	* dlls/dbghelp/module.c:
	dbghelp: Make the module info functions ready for the Unicode move.

	* dlls/dbghelp/module.c:
	dbghelp: Rewrote the loaded modules enumeration so that Unicode version is
	the core.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Added an ANSI copy of the module name (useful for next patches).

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c:
	dbghelp: Added helper to define the module's name.

2007-02-22  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Account for unnamed right hand side parameter of propput.

2007-02-22  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shelllink.c:
	shell32: IShellLink::GetIDList fix.
	IShellLink::GetIDList when it fails to generate a PIDL must set ppidl
	to NULL or some applications think it contains valid data.

	* dlls/comctl32/listview.c:
	comctl32: Implement LVM_SETUNICODEFORMAT.

2007-02-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/serialui/confdlg.c:
	serialui: Constify a variable.

2007-02-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Add a few more tests.

2007-02-21  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/alsa.c:
	winealsa: Fix typo.

	* dlls/dsound/mixer.c:
	dsound: Use an inline for ring buffer pointer difference calculation.

	* dlls/dsound/mixer.c:
	dsound: Add some comments from earlier patch that makes code a little better
	understandable.

2007-02-21  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Use MAKELPARM instead of MAKELONG.

2007-02-20  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/oleview/typelib.c:
	oleview: Respect size of array ITypeInfo_GetNames returns.

2007-02-21  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/computername.c:
	kernel32: Fix an off-by-one error in GetComputerNameExA/W.
	The dns_* functions expect the input buffer to have space for size
	characters plus the nul terminating character.

	* dlls/wininet/netconnection.c:
	wininet: Fix the case of partial SSL reads from the peek buffer.
	Don't return FALSE for a partial read. Fall through to SSL_read and use
	the logic for partial reads there instead of having separate logic and
	recursively calling NETCON_recv. Based on a patch by Michael Moss.

	* dlls/dbghelp/elf_module.c:
	dbghelp: ImageName is usually blank, so print LoadedImageName in
	elf_load_debug_info_map.

	* dlls/advapi32/tests/security.c, dlls/ntdll/nt.c,
	  include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	server: Add get_token_impersonation_level server call for retrieving the
	impersonation level from a token.
	Add tests for GetTokenInformation(TokenImpersonationLevel).

	* dlls/advapi32/tests/security.c, server/handle.c, server/security.h,
	  server/token.c:
	server: Check object's security when creating handles.
	Don't check object's security when duplicating a handle of the same or
	lower access rights. Based on a patch by Vitaliy Margolen.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix a memory leak in I_RpcSendReceive caused by I_RpcReceive overwriting
	pMsg->Buffer.
	(Reported by Huw Davies.)

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add documentation for the I_Rpc* RPC message functions.

2007-02-21  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/graphics.c:
	winex11.drv: Pass correct coords into X11DRV_InternalFloodFill.
	The (x,y) should be relative to the XImage, not the drawable.  The (xOrg,yOrg)
	is what should be relative to the drawable.  This fixes a crash when XGetPixel
	tried to access memory outside the XImage's buffer.

2007-02-21  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix a TypeAttr leak.

2007-02-21  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Update the timezone information.

2007-02-21  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Fix some tests so they succeed on Windows 98.

2007-02-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/odbc32/proxyodbc.c:
	odbc32: Constify some variables.

2007-02-17  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/msg.c,
	  dlls/comctl32/tests/msg.h, dlls/comctl32/tests/updown.c:
	comctl32: Move up-down msg seq test functions into msg.c.

2007-02-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Clients should pass only KeyPress events to XmbLookupString.

2007-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/user32/message.c, dlls/user32/tests/msg.c,
	  include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/trace.c:
	server: Added support for the PM_QS_* flags in PeekMessage.

2007-02-20  Jason Edmeades <us@edmeades.me.uk>

	* programs/cmd/batch.c:
	cmd.exe: Add support for env vars DATE, TIME, CD.

	* programs/cmd/batch.c, programs/cmd/wcmdmain.c:
	cmd.exe: Add support for %ERRORLEVEL% in both batch and cmd line.

	* programs/cmd/wcmdmain.c:
	cmd.exe: Support return code if fail to launch program.

	* programs/cmd/builtins.c:
	cmd.exe: Support PATH= as a valid command.

	* programs/cmd/batch.c:
	cmd.exe: Add ~ modifiers for %0-9.

	* programs/cmd/builtins.c:
	cmd.exe: Support :EOF in goto labels.

	* programs/cmd/batch.c:
	cmd.exe: Add support for %*.

	* programs/cmd/batch.c, programs/cmd/builtins.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c:
	cmd.exe: Support exit [/b] returncode.

	* programs/cmd/builtins.c:
	cmd.exe: Add "if defined ..." support.

2007-02-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/volume.c:
	wined3d: Make sure volumes have memory allocated.

	* dlls/wined3d/device.c:
	wined3d: Do not use glMapBuffer in ProcessVertices.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove dead code from drawprim.c.

	* dlls/wined3d/device.c:
	wined3d: Use CopyRect / EqualRect.

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c, dlls/wined3d/device.c,
	  dlls/wined3d/indexbuffer.c:
	wined3d: Index buffer fixes.

	* dlls/wined3d/device.c:
	wined3d: Clean up sampler usage in UpdateSurface.
	UpdateSurface has to modify one gl texture unit to bind the texture to
	load.  To restore the correct properties for drawing gl texture unit 0
	is activated and dirtified.

	* dlls/wined3d/device.c:
	wined3d: IWineD3DDevice::Clear fixes.
	Fix the use of the scissor test in Clear. The rectangle is only set if
	a clearing rectangle is used, otherwise the scissor test is disabled
	(the pixel ownsership test should take care of the window
	boarders). To get the scissor test back to the value the app set up
	Clear dirtifies the state(s).

	* dlls/d3d9/tests/shader.c, dlls/wined3d/device.c:
	wined3d: Floating point shader constant setting.
	Test how shader constant limits are checked in Set*ShaderConstantF.
	The vertex shader tests it based on the limits reported in the caps,
	the pixel shader tests tries to find the limit manually because I
	could not find a cap structure member specifying the pixel shader
	constant limit.
	Set*ShaderConstantF returns an error as soon as start or start + count
	are bigger than the constant limit.

	* dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Light parameter fixes.

	* dlls/wined3d/drawprim.c:
	wined3d: Do not print the fixed / unfixed vertices warning with shaders.

2007-02-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/cursoricon.c:
	user32: Add a CreateIcon test, make it pass under Wine.

	* dlls/user32/cursoricon.c, dlls/winex11.drv/mouse.c:
	user32: Add traces to the cursor APIs.

2007-02-21  Aric Stewart <aric@codeweavers.com>

	* dlls/imm32/imm.c, dlls/imm32/imm32.spec:
	imm32: Implement stubs for ImmGetImeMenuItemsA and ImmGetImeMenuItemsW.

2007-02-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some typos.

2007-02-20  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/url.c:
	shlwapi: Fix size passed to MultiByteToWideChar.

2007-02-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Implement IUnknown methods for IMediaPosition.

	* dlls/quartz/filtergraph.c:
	quartz: Don't release filters when they connect.

2007-02-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Cleanup the dialog event subscriptions when destroying the dialog.

2007-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/urlhist.c:
	shdocvw: Fix module ref counting.

2007-02-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/comm.c:
	kernel32: Display correct parameters in comm traces.

	* dlls/localspl/localmon.c:
	localspl: Implement SetDefaultCommConfig for XcvDataPort.

	* dlls/localspl/localmon.c:
	localspl: Implement GetDefaultCommConfig for XcvDataPort.

2007-02-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/minidump.c:
	dbghelp: MiniDumpWriteDump called from exception handler.
	- MiniDumpWriteDump was unable to provide stack information for the current
	thread, hence did produce unusable minidump when a programs generates the
	minidump from its own exception handler.
	- We now support this if the current thread calls MiniDumpWriteDump from an
	exception handler and provides the exception information.

2007-02-20  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/header.c, dlls/comctl32/tests/monthcal.c,
	  dlls/d3d9/tests/visual.c, dlls/ddraw/tests/refcount.c,
	  dlls/wined3d/context.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h, dlls/wininet/ftp.c,
	  tools/winapi/winapi.pm:
	Assorted spelling fixes.

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Tell the user which ftp server we're using for the tests so he
	can try to connect to it manually in case of trouble.

	* dlls/wininet/tests/http.c:
	wininet/tests: Dynamically load some functions so the test runs on Windows 98.

	* dlls/wininet/ftp.c:
	wininet: Move a bunch of misplaced API documentation.

	* tools/winapi/modules.pm:
	winapi_check: gdi32.dll and gdi.exe have some extra sources in subdirectories.

	* tools/winapi/modules.pm:
	winapi_check: We no longer have dlls in nested sub-directories.

	* tools/winapi/winapi_documentation.pm:
	winapi_check: Clarify a pair of error messages.
	Don't use a regular expression if not necessary.

	* tools/winapi/config.pm:
	winapi: Update and simplify file_skip() to match the current sources.

	* tools/winapi/c_parser.pm, tools/winapi/make_parser.pm,
	  tools/winapi/winapi_fixup_statements.pm:
	winapi: Remove useless 'if (0)' statements.

	* tools/winapi/winapi_local.pm:
	winapi_check: Fix handling of the 'longlong' arguments.

	* tools/winapi/win32.api:
	winapi_check: Update win32.api to fix the winapi_check warnings.

	* dlls/ole32/compobj.c, include/objbase.h, tools/winapi/win32.api:
	ole32: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	advapi32: Update win32.api to fix the winapi_check warnings.

2007-02-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/devinst.c:
	setupapi: Always return an empty list from SetupDiGetClassDevs.

	* dlls/setupapi/misc.c, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Implement SetupCopyOEMInf{A,W}.

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c:
	userenv: Implement ExpandEnvironmentStringsForUser{A,W}.

2007-02-19  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c:
	oleaut32: Re-arrange the position of functions and vtables in olefont.c to
	avoid forward-declarations.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Fix IFont::AddRefHFont and IFont::ReleaseRefHFont.
	The tests show that there is a global cache that keeps references to
	HFONTs that is released when all IFont objects are released.
	(Based on a patch by Benjamin Arai.)

2007-02-19  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/winealsa.drv/midi.c:
	winealsa: Recognize alsa application ports as generic midi ports.

2007-02-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c, include/commctrl.h:
	comctl32: Implement LM_GETIDEALSIZE for the syslink control.

2007-02-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/defdlg.c, dlls/user32/tests/msg.c:
	user32: Add a test for DefDlgProc(WM_SETFOCUS), make the test pass under Wine.

	* include/msvcrt/direct.h, include/msvcrt/dos.h, include/msvcrt/eh.h,
	  include/msvcrt/io.h, include/msvcrt/math.h,
	  include/msvcrt/mbstring.h, include/msvcrt/setjmp.h,
	  include/msvcrt/stdio.h, include/msvcrt/stdlib.h,
	  include/msvcrt/sys/stat.h, include/msvcrt/sys/timeb.h,
	  include/msvcrt/sys/utime.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h, include/msvcrt/wctype.h:
	msvcrt: Pack the structures on a 8-byte boundary like in PSDK.

	* dlls/gdi32/tests/font.c:
	gdi32: Move get_glyph_indices near its caller test_font_charset.

2007-02-19  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Added range of value for an up-down control.

2007-02-19  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Initialize a pointer to NULL for the case of no enumerated filters.

	* dlls/quartz/filtergraph.c, include/control.idl:
	quartz: Add IMediaPosition interface and stubs.

	* dlls/quartz/filtergraph.c:
	quartz: Better handle error conditions when connections fail.

2007-02-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_ConfigureLPTPortCommandOK.

	* dlls/localspl/localmon.c:
	localspl: Implement ConfigureLPTPortCommandOK for XcvDataPort.

	* dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort_GetTransmissionRetryTimeout.

	* dlls/localspl/localmon.c:
	localspl: Implement GetTransmissionRetryTimeout for XcvDataPort.

2007-02-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvfw32/msvideo16.c:
	msvfw32: Constify a variable.

	* dlls/netapi32/nbt.c:
	netapi32: Constify a variable.

2007-02-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: With FVFs only one stream is used.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use VBOs for index buffers.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the scissor rectangle to the state table.

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c:
	wined3d: No bounds checking is done on sampler / texture numbers.

	* dlls/wined3d/device.c:
	wined3d: Misc comment updates.

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DDevice::EnumDisplayModes.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix d3d8/9 style palettes.

	* dlls/wined3d/device.c:
	wined3d: Remove stream flags from GetStreamSource.

	* dlls/d3d8/device.c, dlls/wined3d/device.c:
	wined3d/d3d8: Move todo about sw vp usage to d3d8.

	* dlls/wined3d/device.c:
	wined3d: Check volume texture creation errors.
	Volumetexture::Release checks for NULL pointers, so releasing a partially
	created texture works.

2007-02-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Store the oldSize as a local variable.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Store the coordinates of infoPtr->calcSize swapped for CCS_VERT.

	* dlls/comctl32/comctl32.h, dlls/comctl32/rebar.c,
	  dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Test and fix the WM_SIZE handler and REBAR_ForceResize.

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Rewrite the layout code.

2007-02-19  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-19  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/thread.c:
	kernel32: Don't run the CreateRemoteThread tests if the child process isn't
	mapped at the same address as the parent process.

	* dlls/ole32/marshal.c:
	ole32: Make an error message more useful by printing the returned error code.

2007-02-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/internet.c:
	wininet: Don't discard the extra info part of a URL in InternetOpenUrl.

2007-02-19  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/parser.l:
	widl: 'control' is an attribute not a keyword.

2007-02-18  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/childwnd.c:
	regedit: Enable WM_RBUTTONDOWN to set the splitbar.

2007-02-19  Kovács András <andras@csevego.net>

	* include/winuser.h:
	winuser.h: Declare some raw input related structures.

2007-02-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/kernel32/debugger.c, dlls/kernel32/kernel32.spec:
	kernel32: Add a CheckRemoteDebuggerPresent stub.

2007-02-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Activate a different context if the active render target is destroyed.

2007-02-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Only scream about unsupported vertex blending when it is used.

	* dlls/wined3d/device.c:
	wined3d: Pretend to support event queries.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Test and fix IDirectDrawSurfaceX::GetDDInterface.

	* dlls/ddraw/ddraw_thunks.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Creating surfaces with old interfaces doesn't addref.

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Fix a leak in a test.

	* dlls/ddraw/surface.c:
	ddraw: SetClipper refcounting fix.

	* dlls/d3d8/tests/visual.c, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/visual.c, dlls/wined3d/state.c:
	wined3d: Lighting is calculated for vertices without normals.
	It still should be disabled for transformed vertices though.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/visual.c,
	  dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/visual.c,
	  dlls/ddraw/tests/Makefile.in, dlls/ddraw/tests/visual.c,
	  dlls/wined3d/device.c:
	wined3d: Visual test framework.

	* dlls/wined3d/swapchain.c:
	wined3d: Remove an outdated TODO comment.
	BltFast takes care of activating the correct context nowadays.

2007-02-17  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Return proper error codes from GraphBuilder_RenderFile.

	* dlls/quartz/filtergraph.c:
	quartz: Make sure the splitter has output plugins before trying to render them.

	* dlls/quartz/dsoundrender.c:
	quartz: Check for the proper ID when querying for the IBasicAudio interface.

	* dlls/quartz/acmwrapper.c:
	quartz: Don't use uninitialized memory in ACMWrapper.

2007-02-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/msxml3/domdoc.c:
	msxml3: Stub out some more getters and setters of IXMLDOMDocument.

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec,
	  dlls/netapi32/share.c, include/lmaccess.h, include/lmshare.h:
	netapi32: Add a stub implementation for NetShareDel. Improve the stub for
	NetUserGetLocalGroups.

	* dlls/snmpapi/main.c:
	snmpapi: Add a missing memcpy.

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptGetLogicalWidths.

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add stub implementations for SetupDiGetINFClass and SetupSetSourceList.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/volume.c:
	kernel32: Add a stub implementation for FindFirstVolumeMountPoint{A, W}.

2007-02-18  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: Stop and free the dsound buffer when needed.

2007-02-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Fixed potential overflow.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Return when not finding the name.

	* dlls/comctl32/tests/header.c:
	comctl32: Fixed new header test.

2007-02-16  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/msmangle.c:
	winedump: Added a missing free().

2007-02-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Small fixes.

2007-02-18  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/winspool.drv/info.c:
	winspool: Constify some parameters in some functions.

2007-02-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Add new extensions.

2007-02-17  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/tests/imagelist.c:
	comctl32: Don't free user32 objects with a gdi32 function in imagelist test.
	Use DestroyIcon for releasing the resources associated with created icons.

	* include/commctrl.h:
	include: Add macro for ListView_GetOrigin to commctrl.h.
	(Reported by David Saez Padros.)

2007-02-15  Kanit Therdsteerasukdi <therdste@ucla.edu>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/datetime.c:
	comctl32: datetime: Initial tests for date and time picker.

2007-02-16  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Constify some variables.

	* dlls/msi/appsearch.c, dlls/msi/msi.c:
	msi: Constify some variables.

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Constify some variables.

2007-02-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mciseq/mcimidi.c:
	mciseq: Constify a variable.

2007-02-16  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.31.

----------------------------------------------------------------
2007-02-16  Chris Peterson <Chrisp@ucla.edu>

	* dlls/comctl32/tests/treeview.c:
	comctl32: treeview: New conformance tests for TreeView controls.

2007-02-15  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmd/Ko.rc:
	cmd: Updated Korean resource.

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2007-02-16  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fstat's handling of pipes and char devices.
	For pipes/char devices, st_dev and st_rdev should be the fd, st_nlink
	is always 1, and st_mode is S_IFIFO and S_IFCHR respectively.
	Added tests to prove the new behaviour right.

2007-02-15  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/computername.c, dlls/kernel32/tests/environ.c:
	kernel32: Fix the GetComputerName* functions to not write to the buffer at
	all if there is not enough space.
	Add tests for the GetComputerName* functions that show this issue.
	Fix an off-by-one error in setting the size when there is not enough space.
	Remove the exception handlers for GetComputerNameW,
	GetComputerNameExA/W, since testing on XP SP2 shows that access
	violations are not caught and these are not present on Win9x, which
	does have an exception handler.

	* dlls/advapi32/tests/security.c, server/token.c:
	server: Track the impersonation level of tokens.

	* server/token.c:
	server: Track IDs for tokens and modifications made to tokens.

2007-02-15  Farshad Agah <f_agah@yahoo.com>

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Added monthcal test cases.

2007-02-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: CreateBitmapIndirect should ignore the provided bm.bmWidthBytes.

2007-02-15  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/trackbar.c:
	comctl32/tests: Add missing '\n's to ok() calls.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove the d3d9.h include from wined3d_private.h.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h,
	  include/wine/wined3d_types.h:
	wined3d: Get rid of any remaining d3d9 stuff in directx.c.

	* dlls/wined3d/context.c, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCREATE flags and use them.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Fix WINED3DPRESENT_PARAMETERS and use it instead of
	D3DPRESENT_PARAMETERS.

2007-02-15  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Add a vectored exception handling test to the existing RtlRaiseException
	test.
	Show that context changes in vectored handler also affect stack handlers.
	Show that vectored handlers also get the changed context.Eip value.

2007-02-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Create a window for justification tests that generate output
	instead of painting over the desktop.

2007-02-15  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for token impersonation levels and what operations are
	allowed at each level.

	* dlls/advapi32/tests/security.c:
	advapi32: Add some more tests for AccessCheck that determine what
	token impersonation levels it accepts and to show that it doesn't
	accept primary tokens.

	* dlls/dbghelp/stack.c:
	dbghelp: nread can be NULL for read_mem and read_mem64.

2007-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c:
	d3d8: Set WINED3DPRESENT_PARAMETERS.MultiSampleQuality to a valid pointer.

	* dlls/wined3d/surface.c:
	wined3d: Convert the full surface for now.
	Until we have proper subrectangle handling for offscreen surfaces,
	surface conversion has to use the real surface sizes, and not the size
	of the opengl subrectangle that it is going to upload. Due to the
	power of 2 limitations the gl height may be bigger than the real
	surface height. If that is not the case, the uploading function will
	pick the correct parts from the converted surface data.

	* dlls/wined3d/surface.c:
	wined3d: Read offscreen render targets upside down when blitting them to
	a texture.

	* dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/query.c,
	  dlls/wined3d/device.c:
	wined3d: Test for supported queries.
	This test contains a table of known supported / known unsupported
	queries. In theory wined3d could just report the queries it supports,
	but applications may make some assumtions regarding supported /
	unsupported queries and stop working if they find a query unexpectadely
	supported or unsupported. It also tests what is supposed to happen if an
	unsupported query is created.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	6/10: WineD3D: rsq and rcp instructions may need a default swizzle in arb.
	ARB shaders need a swizzle for the RSQ and RCP instructions, while d3d
	shaders do not. The DirectX sdk says that the x component is used if
	no swizzle is given.

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Restore the display mode when releasing a swapchain.

	* dlls/ddraw/device.c:
	ddraw: Handle mipmapped mag filters by ignoring the mipmap parameter.

	* dlls/ddraw/device.c:
	ddraw: Handle mipmapped TEXTUREMIN render states.

	* dlls/wined3d/basetexture.c:
	wined3d: Remove empty texture stage applying loop.

	* dlls/ddraw/device.c:
	ddraw: Forward D3DRS_TEXTUREADDRESS* and D3DTSS_ADDRESS* to sampler states.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/font.c:
	gdi32: Skip the SYMBOL_CHARSET test if Symbol or Wingdings is not installed.

	* dlls/gdi32/tests/font.c:
	gdi32: Fix a typo in the memcmp call.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Get rid of any remaining d3d9 stuff in surface.c and surface_gdi.c.

	* dlls/wined3d/stateblock.c:
	wined3d: Get rid of any remaining d3d9 stuff in stateblock.c.

	* dlls/wined3d/state.c:
	wined3d: Get rid of any remaining d3d9 stuff in state.c.

	* dlls/wined3d/query.c:
	wined3d: Use WINED3DISSUE_BEGIN / WINED3DISSUE_END rather than D3DISSUE_BEGIN
	/ D3DISSUE_END.

	* dlls/wined3d/resource.c, include/wine/wined3d_types.h:
	wined3d: Add the WINED3DSPD_IUNKNOWN flag and use it.

	* dlls/wined3d/palette.c:
	wined3d: Use WINED3DRTYPE_SURFACE rather than D3DRTYPE_SURFACE.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DVS20 & WINED3DVS20CAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPS20 & WINED3DPS20CAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DDTCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DLINECAPS flags and use them.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Change internal imagelist bitmap storage in the way applications
	with pre-compiled imagelists expect it.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more tests for DuplicateHandle security.

2007-02-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/sec.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	ntdll/server: Implement NtSetSecurityObject. With tests.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/object.c, server/object.h:
	server: Add security descriptor field to object struct.

2007-02-08  Pedro Araujo Chaves Jr <inckie@gmail.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Fix for GetTextExtentExPointW() and ExtTextOutW().

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPTADDRESSCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPCMPCAPS flags and use them.

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPMISCCAPS flags and use them.

2007-02-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DPBLENDCAPS flags and use them.

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_caps.h:
	wined3d: Add WINED3DSTENCILCAPS flags and use them.

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_caps.h:
	wined3d: Add WINED3DTEXOPCAPS flags and use them.

2007-02-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Restore blitting environment after modifying it.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: alphaop fixes for color keying.

	* dlls/wined3d/state.c:
	wined3d: Enable color keying only for surfaces without an alpha channel.

	* dlls/ddraw/surface.c, dlls/ddraw/tests/dsurface.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	ddraw, wined3d: Color keying tests and fixes.

	* dlls/wined3d/surface.c:
	wined3d: Accelerated blits from and to offscreen render targets.

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Convert and load U8V8 surfaces as rgb.
	GL_INDEX is definitly not the way to load U8V8 surfaces

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Implement texbem in arb, improve it in glsl.

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Load one bump mapping environment matrix into pixel shaders if needed.

	* dlls/wined3d/state.c:
	wined3d: Give the bump env matrices their own states.

2007-02-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Revert 1440eb5a35dc95dea1836d9035b51e2b15d83703 and add the test showing
	that the change was wrong.

2007-02-14  Jason Green <jave27@gmail.com>

	* dlls/riched20/editor.c:
	riched20: If outside of the richedit window, return earlier.
	Prevents a crash when selecting text outside of a richedit control box.

2007-02-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexshader.c:
	wined3d: Use WINED3D_OK rather than D3D_OK.

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Use WINED3DPRESENT_BACK_BUFFER_MAX rather than
	D3DPRESENT_BACK_BUFFER_MAX.

	* dlls/wined3d/device.c:
	wined3d: Use WINED3DUSAGE rather than D3DUSAGE.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Use WINED3DSTREAMSOURCE_INSTANCEDATA rather than
	D3DSTREAMSOURCE_INSTANCEDATA.

2007-02-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Do not access NULL when HeapAlloc failed.

2007-02-14  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/dialog.c, dlls/user32/tests/dialog.c,
	  dlls/user32/tests/resource.rc:
	user32: Fix error return values in DialogBoxParam + simple test.

2007-02-11  Steven Stein <frosty522@wourld.com>

	* dlls/msi/action.c:
	msi: ValidateProductID action stub.

	* dlls/msi/dialog.c:
	msi: Added "Default" control condition to msi_dialog_set_control_condition.

2007-02-12  Ivan Sinitsin <ivan@etersoft.ru>

	* dlls/comdlg32/colordlg.c:
	comdlg32: Set the right background color of the dialog window "Choose color".

2007-02-11  Misha Koshelev <mk144210@bcm.tmc.edu>

	* programs/wineboot/Makefile.in, programs/wineboot/wineboot.c:
	wineboot: Start items in StartUp folder on boot.

2007-02-10  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/shell32/tests/shelllink.c:
	shell32/tests: Test creating shell links for commands on path.

	* dlls/shell32/shelllink.c:
	shell32: Properly create shell links for commands on path.

2007-02-13  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/painting.c, dlls/user32/tests/win.c:
	user32: Scroll window fix.
	Fix the case where the scrolling amount exceeds the window but still
	falls within the clipping rect. This generates an additional update
	region that needs to be invalidated.

2007-02-12  Keith Stevens <fozziethebeat@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/trackbar.c:
	comctl32: Add trackbar tests.

2007-02-14  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/comctl32/string.c, dlls/comdlg32/printdlg.c,
	  dlls/mapi32/tests/imalloc.c, dlls/mshtml/tests/htmldoc.c,
	  dlls/oleaut32/tests/vartest.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/string.c, dlls/winealsa.drv/dsoutput.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/winspool.drv/tests/info.c, dlls/ws2_32/socket.c,
	  include/ddraw.h, include/wine/mmsystem16.h,
	  programs/uninstaller/main.c:
	Assorted spelling fixes.

2007-02-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Constify some variables.

	* dlls/itss/moniker.c:
	itss: Constify a variable.

	* dlls/dxdiagn/provider.c:
	dxdiagn: Constify a variable.

2007-02-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: More fullscreen window fixes.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/vertexdeclaration.c:
	wined3d: Properly release the converted vertex declaration.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Instancing emulation.

	* dlls/wined3d/state.c:
	wined3d: Correctly load vertex attributes with a stride of 0.

	* dlls/wined3d/device.c:
	wined3d: Do not leave SetStreamSource early.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Do not release the local vertex buffer copy.

	* dlls/wined3d/device.c:
	wined3d: SetStreamSource does not modify stream flags.

	* include/wine/wined3d_gl.h:
	wined3d: Load single attribute setter functions.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move lights to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Replace the light chain with a hashmap.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c, include/wine/library.h:
	winex11.drv: Added a check for the ATI driver corrupting %fs.
	Based on a patch by Lei Zhang.

	* dlls/shell32/shlfileop.c:
	shell32: Don't wrap SHELL_ConfirmIDs in an assert. Fixed return value.

	* dlls/d3d8/vertexdeclaration.c:
	d3d8: Avoid a size_t printf format warning.

2007-02-12  Shanren Zhou <shanren@ucla.edu>

	* dlls/comctl32/tests/header.c:
	comctl32: Add header tests.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/install.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c:
	mshtml: Make load_gecko thread safe.

2007-02-13  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2007-02-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/info.c, include/winver.h:
	version: Constify a formal parameter of VerQueryValue{A|W}().

2007-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c, dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Find pending custom actions by GUID.

2007-02-13  Marcus Meissner <meissner@suse.de>

	* tools/bin2res.c:
	bin2res: Use fstat, handle errors.

2007-02-13  Lei Zhang <thestig@google.com>

	* tools/wineshelllink:
	tools/wineshelllink: Create links with WINEPREFIX.

2007-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Avoid sending unwanted DM_GETDEFID/DM_SETDEFID messages.

2007-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	d3d8: Don't store the d3d8 declaration in the wined3d object.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/vertexdeclaration.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d8: Move loading local d3d8 vertex shader constants from wined3d to d3d8.

	* dlls/d3d8/device.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/vertexdeclaration.c, dlls/wined3d/device.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	d3d9: Don't store the d3d9 declaration in the wined3d object.

	* dlls/d3d8/device.c, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/state.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Get rid of the vertexDeclaration field in IWineD3DVertexShaderImpl.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexshader.c:
	d3d8: Store the d3d8 vertex declaration in the d3d8 vertex shader.

	* dlls/d3d8/Makefile.in, dlls/d3d8/d3d8_private.h,
	  dlls/d3d8/vertexdeclaration.c:
	d3d8: Add an IDirect3DVertexDeclaration8 class to hold the wined3d vertex
	declaration.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_types.h:
	wined3d: Add WINED3DDECLUSAGE, use it.

	* include/wine/wined3d_types.h:
	wined3d: Get rid of WINED3DSHADERDECLUSAGE.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Don't use WINED3DSHADERDECLUSAGE_PSIZE / WINED3DSHADERDECLUSAGE_FOG.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/fdi.c, dlls/msi/tests/install.c:
	cabinet: Fixed fd leak in case of error.

2007-02-14  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/tests/headers.c:
	msvcrt: Implemented stat64, wstat64 and fstat64.
	Change all other variations of stat use the stat64 family, since it is
	the most general.

	* dlls/msvcrt/msvcrt.h, include/msvcrt/sys/stat.h,
	  include/msvcrt/sys/types.h, include/msvcrt/wchar.h:
	msvcrt: Added declarations for functions and structures related to stat64.

2007-02-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/painting.c:
	gdi32: Fixed typo in AngleArc.

2007-02-13  Chris Robinson <chris.kcat@gmail.com>

	* dlls/quartz/filtergraph.c:
	quartz: Loop through the rest of the possible filters even when a connection
	fails.

	* tools/wine.inf:
	wine.inf: Add quartz.dll to the list of installed fake DLLs.

	* dlls/quartz/avisplit.c:
	quartz: Remove 1GB AVI size limitation.

	* dlls/quartz/filesource.c:
	quartz: Properly handle input parameters in FileSource_GetCurFile.

2007-02-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Do not allocate compressed surfaces with glTexImage2D.

	* dlls/wined3d/swapchain.c:
	wined3d: Swap the SFLAG_DIBSECTION flag when swaping hdc and memory.

	* dlls/wined3d/device.c:
	wined3d: Check error conditions before creating the object.

	* dlls/wined3d/surface.c:
	wined3d: Partial render target locking.

	* dlls/d3d9/tests/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Always use np2 repacking if no native np2 support is available.

	* dlls/wined3d/surface.c:
	wined3d: Improve render target locking.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove pow2Size from the surfaces.

	* dlls/wined3d/device.c:
	wined3d: Show fullscreen rendering windows.

	* dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: GetRenderTargetData can call BltFast.

	* dlls/wined3d/drawprim.c:
	wined3d: Dirtify the render targets, not the primary swapchain on draws.

2007-02-13  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/header.c, dlls/comctl32/listview.c,
	  dlls/comctl32/monthcal.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/treeview.c:
	comctl32: Remove redundant NULL checks before Free() calls.

	* dlls/comctl32/tests/misc.c:
	comctl32: Add tests for Alloc() and friends.

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/misc.c,
	  dlls/comctl32/tests/string.c:
	comctl32: Rename 'string' test to 'misc'.

2007-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Cleanup the pixelshader() state handler a little bit.

	* dlls/wined3d/state.c:
	wined3d: Always select the correct shader pair in the vertexdeclaration()
	state handler.

2007-02-13  Vitaly Lipatov <lav@etersoft.ru>

	* programs/cmd/Cs.rc, programs/cmd/De.rc, programs/cmd/Es.rc,
	  programs/cmd/Fr.rc, programs/cmd/Ja.rc, programs/cmd/Ko.rc,
	  programs/cmd/Nl.rc, programs/cmd/No.rc, programs/cmd/Pl.rc,
	  programs/cmd/Pt.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc:
	cmd: Fix program name.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c:
	mshtml: Don't release window if it wasn't created.

2007-02-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl:
	mshtml: Added comments about frozen/not frozen interface.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Use wine_url in GetSpec if possible.

	* dlls/mshtml/nsio.c:
	mshtml: Forward GetAsciiSpec to GetSpec.

2007-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Added SchemeIs implementation.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Return "wine" as scheme of nsIURI if wine_url is set.

2007-02-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Get the primary group from the token's groups.

2007-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Remove an unused initializer.

	* dlls/ole32/moniker.c:
	ole32: Add missing parameter for RunningObjectTableImpl_UnInitialize.

2007-02-10  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/tests/install.c:
	msi: Conformance test, check that INSTALLUILEVEL flags don't trigger UI install.

2007-01-19  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/user32/tests/msg.c:
	user32/tests: Add tests for WM_SETICON.

	* dlls/user32/defwnd.c:
	user32: Handle WM_SETICON message similarly to WM_SETTEXT.

2007-02-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Allow APCs to run while waiting for a debug event reply.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: We still have to flush the display after mapping a window.
	The Photoshop splash screen needs this.

2007-02-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Popup windows with system menu are managed.

2007-02-10  Leslie Choong <septikus@gmail.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: updown: Getter and setter tests for updown control.

2007-02-10  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/dialog.c:
	wineconsole: Added range of value for all up-down controls on config dialog.

	* dlls/comdlg32/fontdlg.c:
	comdlg32: fontdlg: Add initialisation for comboboxes.

2007-02-09  Tijl Coosemans <tijl@ulyssis.org>

	* tools/wineshelllink:
	wineshelllink: Fix mktemp usage on FreeBSD.

2007-02-08  Marcus Meissner <meissner@suse.de>

	* dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Fixed WCHAR overflow.

2007-01-27  Kim Lilliestierna <kill@itr.no>

	* programs/cmd/builtins.c:
	cmd: Fix the "move" command the same way as the "copy" command.

2007-02-13  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/msmangle.c:
	winedump: Free function_name on all error paths.

2007-02-12  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Test that shows RtlRaiseException with EXCEPTION_BREAKPOINT mangles
	Eip of context.

2007-02-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/registrar.c:
	atl: Fix a comparison between signed and unsigned.

	* dlls/wldap32/page.c:
	wldap32: Missing HeapFree on error path (found by Smatch).

2007-02-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Implement ImageList_GetFlags.

	* dlls/user32/mdi.c:
	user32: Activate an MDI child on WM_SETFOCUS as well as on WM_CHILDACTIVATE.

2007-02-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Constify some variables.

	* dlls/amstream/mediastream.c:
	amstream: Constify a variable.

2007-02-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to create onscreen contexts.

	* dlls/d3d8/device.c, dlls/d3d8/tests/device.c:
	d3d8: Deleting bound shaders unbinds them.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to select the primary render target.

	* dlls/wined3d/context.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the context array dynamic.

	* dlls/wined3d/surface.c:
	wined3d: Improve render target to texture blits.

	* dlls/wined3d/context.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to prepare for blitting.

	* dlls/wined3d/Makefile.in, dlls/wined3d/context.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use the context manager to prepare for drawing.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store dirty states per context.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store state optmization members in the context.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a per context structure for context management.

2007-02-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/tests/http.c:
	wininet: Fix a test that fails on Windows.

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	wininet: Skip empty accept type strings in HttpOpenRequest.

2007-02-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Add tests to show the order of parameter checking.

2007-02-12  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The format structures used in the marshaling code should have 1-byte
	alignment.

	* include/objidl.idl:
	include: Add more EOAC_* enumeration values to objidl.idl.
	Also add the SOLE_AUTHENTICATION_INFO and SOLE_AUTHENTICATION_LIST
	structures which are used by CoInitializeSecurity.

	* include/rpcdce.h:
	include: Fix a typo in a comment in rpcdce.h.

	* include/objidl.idl:
	include: Fix a typo in the parameter name for IClientSecurity::QueryBlanket
	in objidl.idl.

2007-02-12  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c, include/winnt.h:
	ntdll: Fix compilation on systems that don't support nameless structs.

2007-02-09  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c, include/winnt.h:
	ntdll: Add prototypes to winnt.h for the SList functions.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Added mk protocol handling test.

	* dlls/urlmon/tests/url.c:
	urlmon: Added test of handlong its protocol.

	* dlls/urlmon/binding.c:
	urlmon: Depend on Read result in report_data.

	* dlls/urlmon/binding.c:
	urlmon: Store download state in Binding object.

2007-02-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Enter new named pipe connections into the protocol connection list.

2007-02-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Make ImageList_Read and ImageList_Write compatible with each other,
	simplify the code.

2007-02-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c, dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Store dll based custom actions in a separate list.

	* dlls/msi/custom.c:
	msi: Simplify ACTION_FinishCustomActions.

2007-02-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Properly round negative values in shader_glsl_mov.

2007-02-10  Hans Leidekker <hans@it.vu.nl>

	* programs/wordpad/wordpad.c, tools/wine.inf:
	wordpad: Open .wri files in wordpad.

2007-02-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/winedump.h:
	winedump: Removed a couple of unused elements out of struct symbol.

	* tools/winedump/debug.c, tools/winedump/dump.c, tools/winedump/lnk.c,
	  tools/winedump/pdb.c, tools/winedump/winedump.h:
	winedump: Simplify guid dumping.

	* tools/winedump/dump.c, tools/winedump/main.c, tools/winedump/msc.c,
	  tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Larger usage of symbol demangling while dumping.

	* programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/intvar.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Support for debugging child processes.
	Added internal flag (AlsoDebugProcChild) to let winedbg debug both
	parent and child (in the same WineDbg session).

	* programs/winedbg/memory.c:
	winedbg: Correctly handle invalid read conditions.

2007-02-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Add another test.

2007-02-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Handle resource protocol like chrome protocol.

	* dlls/mshtml/nsio.c:
	mshtml: Call SetWineURL in Clone.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c, dlls/mshtml/task.c:
	mshtml: Start binding asynchronously.

2007-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Move AddRequest call to OnStartBinding.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Remove no longer used [Get|Set]Moniker functions.

2007-02-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Don't test the contents of an output parameter.

2007-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Don't store moniker in nsURI.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added [Set|Get]WineURL functions to nsIWineURI.

	* dlls/mshtml/nsio.c:
	mshtml: Store URL in unicode in nsURI.

2007-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix handling mk URLs.

	* dlls/shlwapi/url.c:
	shlwapi: Unicodified scheme detecting code.

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Fix handling URLs without '/' in object name.

2007-02-09  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	treeview: Scrolling does not cause label being edited to lose focus.

2007-02-10  Joris Huizer <joris_huizer@yahoo.com>

	* tools/winegcc/utils.c, tools/winegcc/utils.h, tools/winegcc/winegcc.c:
	winegcc: Sign-compare fixes.

2007-02-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Split process_handle() into two separate functions.

2007-02-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_Cs.rc,
	  dlls/shell32/shell32_De.rc, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_Eo.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_It.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pl.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_main.h, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shresdef.h,
	  dlls/shell32/tests/shlfileop.c:
	shell32: Allow overwriting files in SHFileOperation(FO_COPY) (with confirmation
	dialogs).

	* dlls/shell32/shell32_En.rc, dlls/shell32/shlfileop.c,
	  dlls/shell32/shresdef.h:
	shell32: Add a confirmation dialog with a "Yes to All" option.

	* dlls/shell32/brsfolder.c:
	shell32: Make sure BrowseForFolder doesn't return NULL for the Desktop folder
	as this means a cancel.

2007-02-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make shader_cleanup more useful.

2007-02-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: BeginScene and EndScene tests and fixes.

2007-02-09  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac, dlls/oleaut32/tests/Makefile.in,
	  tools/make_makefiles:
	Make.rules: Automatically generate the header for all types of idl sources.

2007-02-09  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shellpath.c:
	shell32/tests: wnsprintfA() is missing on Win9x, so use sprintf() instead.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Fix test_GetDisplayName() to cope with a left-over test directory.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: ILFree() and ILIsEqual() are exported by ordinal only on
	Win9x. So use GetProcAddress().

	* dlls/ntdll/misc.c, dlls/ntdll/string.c, tools/winapi/win32.api:
	ntdll: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/winapi.pm, tools/winapi/winapi_local.pm:
	winapi_check: Fix handling of the -register functions.
	Unless specified otherwise they are implemented by a '__regs_' function.
	Keep track of the '-i386' flag so we can detect CONTEXT* vs. CONTEXT86*
	mismatches.
	Remove an unneeded and broken hack meant to fudge the number of parameters.

	* tools/winapi/winapi_local.pm:
	winapi_check: '-register' is compatible with stdcall. So remove this obsolete
	warning.

	* tools/winapi/win32.api:
	ntdsapi: Update win32.api to fix the winapi_check warnings.

	* include/ntdsapi.h:
	ntdsapi: Add a commented-out #include directive as a reminder.

	* include/winnt.h:
	Make winnt.h C++ compatible.

	* include/winbase.h:
	kernel32: Add prototypes to winbase.h for the SList functions.

	* dlls/ntdll/ntdll.spec:
	ntdll: The fourth parameter of RtlUnwind() is a pointer, not a long.

	* dlls/ntdll/ntdll.spec:
	ntdll: ZwRaiseException() is not a register function.

2007-02-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

2007-02-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/comm.c:
	kernel32/tests: Fixed several uninitialized variables.

2007-02-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/listbox.c:
	user32/listbox: Remove deadcode (Coverity).

2007-02-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/exit.c, dlls/msvcrt/msvcrt.h:
	msvcrt: Use raise(SIGABRT) for abort() and assert().

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implemented the raise function.

	* dlls/msvcrt/except.c:
	msvcrt: Reset a signal to DFL before it's used.

2007-02-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c, dlls/wininet/tests/ftp.c:
	wininet/ftp.c: Fix some returned error codes.

2007-02-08  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* dlls/ntdll/time.c:
	ntdll: Add Omsk time zone.

2007-02-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/vxd.c:
	kernel32: Remove CloseHandle call.

	* dlls/devenum/devenum_main.c:
	devenum: Initialize hKeysub.

	* dlls/ntdll/file.c:
	ntdll: Initialize needs_close to FALSE.

2007-02-08  Marcus Meissner <meissner@suse.de>

	* dlls/riched20/row.c:
	riched20: Removed more dead code.

	* tools/wmc/mcl.c:
	wmc: inputbuffer is a WCHAR array.

2007-02-08  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/comctl32/comctl_Ru.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/msi/msi_Ru.rc, dlls/shell32/shell32_Ru.rc,
	  dlls/user32/resources/user32_Ru.rc, dlls/winmm/winmm_Ru.rc:
	Some fixes in russian resources.

2007-02-08  Hans Leidekker <ecl@it.vu.nl>

	* tools/wineshelllink:
	wineshelllink: Keep using the slash as path separator.

2007-02-08  Hans Leidekker <hans@it.vu.nl>

	* tools/wineshelllink:
	wineshelllink: Use "=" instead of "==" to compare strings.

2007-02-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Don't skip files continued from a previous cabinet.

2007-02-07  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Create the LISTVIEW_INFO in WM_NCCREATE.

2007-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix the return value of ITypeInfo::Invoke when the property-put
	named argument isn't DISPID_PROPERTYPUT.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Implement automatic value getting in ITypeInfo::Invoke.
	If an IDispatch object is returned from in the retval for a propget
	function and an extra parameter was passed in to ITypeInfo::Invoke then
	it should call IDispatch::Invoke on the returned object with the extra
	parameter to retrieve the value of the object, which is then returned in
	pVarResult.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl:
	oleaut32: Fix the IDL for the "Value" method in the tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl:
	oleaut32: Comment out "dual" attribute of IKindaEnumWidget in tmarshal test
	to cause the interface to be marshaled correctly.
	This fixes a bunch of tmarshal tests.

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Always register the typelib for the tmarshal tests.

2007-02-08  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/childwnd.c:
	regedit: Do not use a local copy of a global pointer.

	* programs/regedit/childwnd.c:
	regedit: Do not pass a global available pointer to a static function.

2007-02-07  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/framewnd.c:
	regedit: Declare some variables static.

2007-02-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Fix continue_call handling.

	* dlls/urlmon/binding.c:
	urlmon: Call OnProgress directly in report_data.

	* dlls/urlmon/binding.c:
	urlmon: Added ReportProgress(BINDSTATUS_DIRECTBIND) implementation.

	* dlls/urlmon/binding.c:
	urlmon: Fix ReportResult on async protocols.

2007-02-08  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Catch the -Embedding flag and print out a message.

	* dlls/msi/msi_main.c, dlls/msi/msipriv.h, dlls/msi/regsvr.c:
	msi: Register the typelib.

2007-02-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Fix typo. Should be group not owner.

2007-02-07  Kevin Koltzau <kevin@plop.org>

	* dlls/ntdll/rtl.c:
	ntdll: Fix compile errors for Win64.

	* include/winnt.h:
	winnt.h: Correct declaration of SLIST_HEADER and SLIST_ENTRY for Win64.

2007-02-07  Francois Gouget <fgouget@free.fr>

	* include/clusapi.h:
	clusapi: Make clusapi.h C++ compatible.

2007-02-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/clipboard.c, dlls/winex11.drv/codepage.c:
	winex11.drv: Remove unused items.

2007-02-08  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/parser.l:
	widl: Rename parser states to uppercase to avoid conflicts.

2007-02-07  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/defwnd.c:
	user32: Don't crash if a WM_NCCREATE message is sent with lParam=0.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/rebar.c:
	comctl32/tests: Fix typo (Coverity).

2007-02-07  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/tmarshal.c:
	oleaut32: Fix a one-off test failure in the tmarshal tests -
	TYPE_E_LIBNOTREGISTERED is an expected return value.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: A value of PARAMFLAG_FNONE for wParamFlags means that the parameter
	is also marshaled and unmarshaled in the PARAMFLAG_FOUT case.

2007-02-07  Detlef Riekenberg <wine.dev@web.de>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/resource.h:
	regedit: Remove unused resource.

2007-02-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use queue for whole ReportData implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added ReportProgress(BINDSTATUS_BEGINDOWNLOADDATA) implementation.

	* dlls/urlmon/binding.c:
	urlmon: Use custom task structs.

	* dlls/urlmon/binding.c:
	urlmon: Use proc instead of enum in task queue.

	* dlls/urlmon/binding.c:
	urlmon: Unlock protocol only if it was locked.

	* dlls/urlmon/binding.c:
	urlmon: Set BINDF_NEEDFILE flag for all not urlmon protocols.

2007-02-07  Ken Thomases <ken@codeweavers.com>

	* programs/explorer/diskarb.c:
	explorer: Fix leak: always release the CFDictionary.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Remove obsolete FIXME.

2007-02-07  Francois Gouget <fgouget@free.fr>

	* include/advpub.h, tools/winapi/win32.api:
	advpack: Make the header more consistent with the implementation and fix the
	winapi_check warnings.

	* dlls/credui/credui_main.c, include/wincred.h, tools/winapi/win32.api:
	credui: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win16.api, tools/winapi/win32.api:
	winsock & ws2_32: Update win32.api to fix the winapi_check warnings.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h, tools/winapi/win32.api:
	atl: Better match the PSDK types and fix the winapi_check warnings.

	* include/clusapi.h, tools/winapi/win32.api:
	clusapi: Better match the PSDK types and fix the winapi_check warnings.
	This also makes the headers and implementation more consistent.

	* include/wincred.h:
	credui: Make wincred.h C++ compatible.

	* dlls/browseui/tests/autocomplete.c:
	browseui: Add missing '\n's to ok() calls.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/rpc_epmap.c,
	  include/rpcndr.h, tools/winapi/win32.api:
	rpcrt4: Better match the PSDK types and fix the winapi_check warnings.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/ftp.c:
	wininet/tests: Add a few more tests.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

	* dlls/wininet/ftp.c:
	wininet/ftp: Remove unneeded (double) checks.

2007-02-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/browseui/aclmulti.c:
	browseui: Move 'static' to the beginning of the declaration specifier.

2007-02-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/iface.c:
	msi: Add a test for the version method.

2007-02-06  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/tests/win.c:
	user32: Add test cases for update rects affected by ShowWindow.

2007-02-02  Aric Stewart <aric@codeweavers.com>

	* dlls/user32/combo.c:
	user32: We are calculating the height for the drop down based on
	number of items however the if statement used nIHeight (just the
	height of 1 item) and not nHeight (the height all the items).

2007-02-07  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Output endpoint information in client and server files.

	* tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Add a string list type and use it for the endpoint attribute.

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Only recognize attribute keywords inside an attribute list.

	* dlls/msvcrt/file.c:
	msvcrt: Implement fopen/wfopen on top of fsopen/wfsopen instead of the other
	way around.

2007-02-03  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/msi/dialog.c:
	msi: Clean up magic numbers.

	* dlls/msi/dialog.c:
	msi: Honor attributes for combobox.

	* dlls/msi/dialog.c:
	msi: Honor msidbControlAttributesSorted attribute for list box.

2007-02-05  Juan Lang <juan_lang@yahoo.com>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implement _mbbtype according to MSDN.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/tests/shlfileop.c:
	shell32: shlfileop tests: Avoid buffer overflows for paths.

2007-02-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/wintab.c:
	winex11drv: Do extra error checking when opening XInput device.

2007-02-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/ftp.c:
	wininet/ftp.c: Remove unneeded check.

	* dlls/urlmon/umon.c:
	urlmon: Cast-qual warning fixes.

	* dlls/urlmon/umon.c:
	urlmon: Cast-qual warning fix.

2007-02-06  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/files.c,
	  dlls/msi/msipriv.h:
	msi: Make sure to ignore UI level flags in dialog and files as well.

2007-02-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/trash.c:
	shell32: Declare some functions static.

	* dlls/shell32/shfldr_fs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfileop.c:
	shell32: Declare some functions static.

	* dlls/shell32/shellole.c:
	shell32: Declare some functions static.

	* dlls/shell32/dialogs.c:
	shell32: Declare some functions static.

2007-02-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Copy bitmaps with CopyImage so that it works also for DIBs
	(based on a patch by Oleg Krylov).

2007-02-06  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/tab.c:
	comctl32: Remove unnecessary and misused mask member from TAB_ITEM.

2007-02-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/protocol.c, dlls/itss/tests/protocol.c:
	itss: Allow reading from ReportData call.

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Fix zone tests.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h:
	hhctrl.ocx: Use mk as default protocol and code clean up.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Use SetWindowRects to set WebBrowser's size.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Remove useless SetHostNames call.

2007-02-06  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Ignore the first named argument when invoking property-put methods
	as it is mandatory and doesn't indicate that the arguments will be
	passed in as named ones.

	* dlls/oleaut32/typelib.c:
	oleaut32: Add support for named arguments in ITypeInfo::Invoke.

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/typelib.c:
	oleaut32: Copy the value directly returned from the called function
	if it is not an HRESULT value, instead of getting it from a [retval]
	attribute.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix the missing argument handling for non-byref variant arguments.

	* dlls/oleaut32/typelib.c:
	oleaut32: If an error info object was created when the invoked method failed
	then fill in exception info from the error info object.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c:
	ole32: Add the external references that the server gave to us to any existing
	ifproxy,
	so that the right external reference count is released when the proxy is
	destroyed.
	Protect all changes to refs in the ifproxy using interlocked functions
	and update the thread-safety documentation.

	* dlls/ole32/marshal.c:
	ole32: Release iobject and the IRpcStubBuffer object no matter which code path
	we take.
	Otherwise we would leak a reference for both of these if the ifstub was
	already created.
	Fix the FIXME in the code by releasing the stub manager if necessary.

	* dlls/comctl32/listview.c:
	comctl32: Fix the computation of the select bounds item rect
	and fixup the places that depended on the old behaviour.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add a wrapper around the channel supplied to the IDispatch proxy
	to fixup the IID used to connect to the server and fix somewhat common
	"err:rpc:RPCRT4_OpenBinding" messages.

2007-02-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/msi/dialog.c:
	msi: Do not use a static variable to save the insertion position for the
	listview.

	* dlls/msi/dialog.c:
	msi: Store value of the property with each listbox element.
	This makes sure the property is set to the right value even when order in
	listbox is changed.

	* dlls/msi/dialog.c:
	msi: Do not store property for each listbox element, as it is the same one
	for the whole listbox.
	Remove struct msi_listbox_item as it only contains 1 element now.

	* dlls/msi/dialog.c:
	msi: Only insert entries into listbox if property value matches.

2007-02-06  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/user32/button.c, dlls/user32/tests/msg.c:
	user32: WM_SETFONT on button doesn't repaint directly.

2007-02-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/tests/joystick.c:
	dinput: Don't reset dead zone and saturation when setting data format.
	Additional tests indicate that native doesn't touch previously set
	properties.

2007-02-06  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui.rc:
	credui: Fix the order of the controls in the dialog so that the
	keyboard shortcuts work correctly and so that tabbing through the
	controls behaves as the user expects.

2007-02-06  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Call SearchPath before LoadLibrary so that we get the full path of
	native exes and dlls.
	For builtin dlls prepend the system directory.

2007-02-06  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/kernel32/tests/change.c:
	kernel32: CreateThread returns NULL on error, not INVALID_HANDLE_VALUE.

2007-02-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Clear the DebugInfo field when a shared heap critical section is
	made global.

	* tools/widl/proxy.c:
	widl: Use the correct type offset when freeing proxy variables.

	* tools/widl/typegen.c:
	widl: Added support for iid_is conformance descriptors.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c,
	  tools/widl/typegen.c:
	widl: size_is and length_is are expression lists now.

	* tools/widl/typegen.c:
	widl: Take array dimensions into account when computing buffer size.

	* tools/widl/typegen.c:
	widl: Add support for arrays of simple types in format strings.

	* tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Output correct alignments in type format strings.

2007-02-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Removed dead code (Coverity).

	* dlls/riched20/row.c:
	riched20: Fixed wrong condition (Coverity).

	* programs/oleview/typelib.c:
	oleview: Removed dead code (Coverity).

2007-02-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/msvcrt/msvcrt.h, include/msvcrt/sys/stat.h, include/msvcrt/wchar.h:
	msvcrt: Align struct _stati64's st_size on an 8 byte boundary.

2007-02-06  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/rtl.c:
	ntdll: Add a stub API documentation to make winapi_check happy.

	* dlls/hid/main.c, include/Makefile.in, include/ddk/hidsdi.h:
	hid: Add the hidsdi.h header.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_server.c, include/rpcdce.h,
	  tools/winapi/win32.api:
	rpcrt4: Improve the prototypes Win64 compatibility by replacing long with LONG.

	* tools/winapi/win32.api:
	inseng.dll: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	localspl: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	pstorec: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	gphoto2.ds: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	wtsapi: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	comctl32: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	hid: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	compstui: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	oleaut32: Update win32.api to fix the winapi_check warnings.

	* dlls/atl/atlwin.h:
	atl: Protect atlwin.h against multiple inclusions.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv: Remove unneeded cast.

	* dlls/kernel32/tests/sync.c, dlls/winealsa.drv/dsoutput.c:
	Add missing '\n's in traces.

2007-02-06  Mike McCormack <mike@codeweavers.com>

	* tools/widl/parser.y:
	widl: Implement dispinterfaces derived from an interface.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a few more tests for transacted storage.

	* dlls/msi/tests/iface.c:
	msi: Test the dispid for CreateRecord.

	* dlls/msi/msi.rc:
	msi: Add the generated typelib to the resources.

	* dlls/msi/table.c:
	msi: Factor out code to calculate column offsets.

	* dlls/msi/tests/package.c:
	msi: Add a test showing MsiGetProperty returns correct values.

2007-02-06  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Remove redundant const.

2007-02-05  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/msi/action.c:
	msi: InstallPackage check for UI level must not disregard flags.

2007-02-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/driver.c, dlls/wineps.drv/escape.c,
	  dlls/wineps.drv/ppd.c:
	wineps.drv: Declare some functions static.

	* dlls/wineps.drv/mkagl.c:
	wineps.drv: Remove unused functions.

	* dlls/user32/message.c:
	user32: Remove unused function.

	* dlls/winemp3.acm/mpegl3.c:
	winemp3.acm: Remove unused functions.

	* dlls/shell32/shlexec.c:
	shell32: Remove unused function.

	* dlls/user32/sysparams.c:
	user32: Remove unused variables.

2007-02-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/browseui/Makefile.in, dlls/browseui/aclmulti.c,
	  dlls/browseui/browseui.h, dlls/browseui/browseui_main.c,
	  dlls/browseui/regsvr.c, dlls/browseui/tests/Makefile.in,
	  dlls/browseui/tests/autocomplete.c, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	browseui: Implement and test ACLMulti.

	* dlls/browseui/browseui_main.c:
	browseui: Add class factory.

	* include/shlguid.h, include/shlobj.h:
	include: Add definitions for the multisource AutoComplete list (ACLMulti).

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/browseui/Makefile.in, dlls/browseui/browseui.spec,
	  dlls/browseui/browseui_main.c, dlls/browseui/regsvr.c,
	  dlls/browseui/version.rc, tools/wine.inf:
	browseui: Add the browseui DLL.

2007-02-05  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/internet.h:
	wininet: Remove unused function.

2007-02-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c:
	dinput: Use correct flag for object instance.
	DIDFT_AXIS is a generic mask for absolute and relative axes.

	* dlls/dinput/joystick_linux.c:
	dinput: Look for all available js* joystick devices.

2007-02-05  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix ntlm_auth version number check when registering the NTLM SSP.

	* dlls/secur32/ntlm.c:
	secur32: Bump minimal required samba version to 3.0.25, 3.0.24 is a bugfix
	release.

2007-02-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/iphlpapi/ipstats.c:
	iphlpapi: Avoid printf format warnings.

	* libs/port/interlocked.c:
	libwine_port: Implemented interlocked_cmpxchg64 for x86_64.

2007-02-02  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/tests/sync.c,
	  dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Slist support.
	Implemented ntdll's RtlInitializeSListHead, RtlQueryDepthSList,
	RtlInterlockedFlushSList, RtlFirstEntrySList,
	RtlInterlockedPushEntrySList, RtlInterlockedPopEntrySList, their
	kernel32 equivalents, and tests.

	* include/wine/port.h, libs/port/interlocked.c:
	libwine_port: Added interlocked_cmpxchg64.

2007-01-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/ftp.c:
	wininet/tests: Add ftp tests.

2007-01-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c, dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Add the tests for minimize/restore MDI child sequence, fix some failures.

2007-02-05  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/c_20127.c, libs/wine/cpmap.pl:
	libwine: Hardcode the data for the US-ascii codepage instead of loading a
	unicode.org file.

2007-02-03  Misha Koshelev <mk144210@bcm.tmc.edu>

	* dlls/kernel32/tests/change.c:
	kernel32: Added conformance test for nested thread wakeups in the server.

2007-02-05  Alexandre Julliard <julliard@winehq.org>

	* server/thread.c:
	server: Clear the thread wait before releasing objects to avoid nested calls.
	Reported by Misha Koshelev.

	* include/winnt.h:
	winnt.h: Avoid warnings on Mac OS X.

2007-02-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winedos/devices.c, dlls/winedos/dosaspi.c, dlls/winedos/dosmem.c,
	  dlls/winedos/int09.c, dlls/winedos/int21.c, dlls/winedos/int31.c,
	  dlls/winedos/int67.c, dlls/winedos/interrupts.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/vga.c, dlls/winedos/vga.h,
	  dlls/winedos/vxd.c:
	winedos: Declare some items static.

2007-02-01  John Klehm <xixsimplicityxix@gmail.com>

	* dlls/rasapi32/rasapi.c:
	rasapi32: RasEnumConnections now returns correct buffer size (zero) when there
	are zero connections available.

2007-01-31  John Klehm <xixsimplicityxix@gmail.com>

	* include/ras.h:
	ras.h: Added additional szDeviceType defines.

2007-01-29  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/winealsa.drv/dsoutput.c:
	winealsa: Use a helper thread instead of asynchronous callbacks.

	* dlls/winealsa.drv/alsa.c:
	winealsa: Cosmetic stuff.

	* dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.c,
	  dlls/winealsa.drv/alsa.h, dlls/winealsa.drv/audio.c,
	  dlls/winealsa.drv/dsoutput.c, dlls/winealsa.drv/wavein.c,
	  dlls/winealsa.drv/waveinit.c, dlls/winealsa.drv/waveout.c:
	winealsa: Split driver up in tiny pieces.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/tests/string.c:
	shlwapi: Test string functions when buffer is too small.

2007-02-03  Felix Nawothnig <flexo@holycrap.org>

	* dlls/gdi32/path.c:
	gdi32: Fix offset calculation in PATH_ExtTextOut for >1 chars.

2007-02-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c, dlls/gdi32/tests/font.c:
	gdi32: Make sure that we don't read/write beyond the provided buffer in
	GetOutlineTextMetricsA, add a test case.

2007-02-02  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/comdlg32/cdlg_Ru.rc:
	comdlg32: Update Russian translation.

2007-02-02  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/tests/joystick.c:
	dinput: Don't reset user specified range in SetDataFormat. With tests.

	* dlls/dinput/joystick_linuxinput.c, dlls/dinput/tests/joystick.c:
	dinput: Initialize user limits with the default 0..65535 range. Add tests.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Return user set limits not the device limits.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Don't close fd before we done with it.

2007-02-01  Marcus Meissner <meissner@suse.de>

	* dlls/kernel32/ne_module.c:
	kernel32: Initialize owner_exists (Coverity).

	* dlls/dinput/device.c:
	dinput: Fix dereference pointer after NULL check (Coverity).

	* dlls/devenum/devenum_main.c:
	devenum: Fix uninitialized clsidString (Coverity).

2007-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/window.c:
	user32: Although Windows sends WM_GETMINMAXINFO at the window creation time,
	it doesn't use returned values to set window size.

2007-01-27  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Report D3D caps properly for ATI cards.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* include/winnt.h:
	winnt.h: Add defines for SLIST_HEADER.

2007-02-03  Bang Jun-Young <junyoung@mogua.com>

	* dlls/advpack/advpack.c, include/advpub.h:
	advpack: Constify the 3rd argument of RebootCheckOnInstall[AW].

2007-02-02  John Morris <mailjohnmorris@gmail.com>

	* dlls/ole32/ole32.spec:
	ole32: Add CoWaitForMultipleHandles to spec file.

2007-01-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/mshtml/Makefile.in:
	mshtml: Add a missing space.

2007-02-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add test for XcvDataW,PortIsValid.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add test for XcvDataW,MonitorUI.

2007-02-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Declare variable signed to accept possible negative return value
	(Coverity).

	* dlls/wtsapi32/wtsapi32.c:
	wtsapi32: Declare a variable static.

	* dlls/winmm/message16.c:
	winmm: Declare a function static.

2007-02-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c:
	winemp3.acm: Declare some items static.

	* dlls/quartz/pin.c:
	quartz: Fix a typo.
	Should fix Coverity CID-348 (dereference before NULL check).

2007-02-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/uxtheme/draw.c, dlls/uxtheme/msstyles.c, dlls/uxtheme/msstyles.h,
	  dlls/uxtheme/system.c:
	uxtheme: Declare some items static.

2007-01-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/comm16.c, dlls/user32/menu.c:
	user32: Declare some functions static.

2007-01-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/shlinstobj.c:
	shdocvw: Declare some functions static.

2007-02-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Turn a FIXME to a WARN in order to avoid mangling the output.

	* tools/winedump/lib.c:
	winedump: Add a sanity check before dumping long format library export.

2007-01-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Add a trace to MultiByteToWideChar.

2007-02-05  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Fix lpBand->lpText memory leak in DeleteBand and simplify
	the code.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge SetBandInfoA and SetBandInfoW.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge GetBandInfoA and GetBandInfoW.

2007-02-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Merge InsertBandA and InsertBandW.

	* dlls/comctl32/rebar.c, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/rebar.c:
	comctl32: rebar: Add some tests for rebar and change the way the header size
	is fixed.

2007-02-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Allow uncompressed files before compressed files in the same media.

2007-02-01  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Try to use the PostSript name of a font.

2007-01-30  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: We don't need to check for the PPD Files key before using
	/etc/printcap.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix marshaling of VARTYPE-less safearrays.

2007-01-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix *printf() handling of negative field width.

2007-01-29  Bang Jun-Young <junyoung@mogua.com>

	* dlls/advapi32/registry.c, dlls/ntdll/reg.c, include/winternl.h:
	ntdll: Fix NtUnloadKey to match the DDK.

	* dlls/wininet/internet.h:
	wininet: config.h police.

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt.h, include/wincrypt.h:
	advapi32: Fix prototypes to match the PSDK.

2007-01-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/avifil32/factory.c:
	avifil32: Declare some variables static.

2007-01-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/util.c:
	secur32: Declare a function static.

	* dlls/sensapi/sensapi.c:
	sensapi: Declare a variable static.

	* dlls/setupapi/setupx_main.c:
	setupapi: Declare some functions static.

	* dlls/sane.ds/sane_main.c:
	sane.ds: Declare a function static.

	* dlls/serialui/confdlg.c:
	serialui: Declare some items static.

2007-01-27  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/tab.c:
	comctl32: Fix the TAB_ITEM_SIZE macro.

2007-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/spy.c:
	user32: Dump contents of CREATESTRUCT in WM_[NC]CREATE of the message spy.

	* dlls/gdi32/bitmap.c, dlls/gdi32/tests/bitmap.c:
	gdi32: CreateBitmap and friends should return stock DEFAULT_BITMAP if requested
	bitmap width or height is 0.

2007-01-26  Rob Shearman <rob@codeweavers.com>

	* dlls/credui/credui_main.c:
	credui: Fill out the username, password and domain edit boxes from the values
	input to CredUIPromptForCredentialsW.
	Set the focus to the password edit box, unless the user edit box is empty.

	* dlls/credui/credui.spec, dlls/credui/credui_main.c:
	credui: Implement CredUIParseUserName.

	* dlls/credui/credui_main.c:
	credui: Set the focus to the username edit control.

2007-01-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Code clean up.

	* dlls/urlmon/session.c:
	urlmon: Call AddRef in CoInternetGetSession.

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Don't unescape url in UrlCombineW with URL_FILE_USE_PATHURL flag.

2007-01-26  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/shelllink.c:
	shell32: Remove an unneeded local variable initialization.

	* tools/winapi/winapi.pm:
	winapi_check: Print a warning when 'long' is used in an API file as this type
	is not Win64 compatible.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* programs/oleview/typelib.c:
	oleview: Remove many casts.

	* .gitignore, dlls/msi/Makefile.in, dlls/msi/msiserver.idl:
	msi: Add a (mostly empty) typelib for the MsiServer interface.

	* tools/widl/write_msft.c:
	widl: Handle TKIND_DISPATCH when generating MSFT typelibs.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	makefile: Use git-ls-files if possible to build tags files.

2007-01-26  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi.pm:
	winapi_check: Print the line number when an error or warning is found in the
	API files.

	* include/mscat.h:
	wintrust: Add missing packing directives to mscat.h.

	* include/mscat.h:
	wintrust: Add missing prototypes and a missing include directive to mscat.h.

	* dlls/wintrust/register.c, include/wintrust.h, tools/winapi/win32.api:
	wintrust: Better match the PSDK types and fix the winapi_check warnings.

	* tools/winapi/win32.api:
	usp10: Update win32.api to fix the winapi_check warnings.

	* tools/winapi/win32.api:
	winecoreaudio.drv: Update win32.api to fix the winapi_check warnings.

2007-01-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/iface.c:
	msi: Add todos around tests that aren't being run yet, but will fail.

	* dlls/msi/msi_main.c:
	msi: Fix a typo.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winspool.drv/Makefile.in:
	winspool: Fix make rules for import library.

	* dlls/snmpapi/tests/util.c:
	snmpapi: Fix printf format warnings in tests.

2007-01-25  Mark Adams <mark@transgaming.com>

	* dlls/iphlpapi/ipstats.c:
	iphlpapi: Support for non-linux platforms, including Mac OS X.
	- Add error messages when unimplemented functions are called on
	non-linux platforms.
	- Implement retrieving the interface list on MacOS X (and other
	platforms that use NET_RT_DUMP).

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Filter out no-ip addresses when building ip address table.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Clarify interface counting.

2007-01-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/fdi.c:
	cabinet: Improve initialization of some arrays.

2007-01-25  Joris Huizer <joris_huizer@yahoo.com>

	* libs/wine/loader.c, libs/wine/mmap.c:
	libwine: sign-compare fixes.

2007-01-25  Francois Gouget <fgouget@free.fr>

	* dlls/snmpapi/main.c, include/snmp.h, tools/winapi/win32.api:
	snmpapi: Fix the winapi_check warnings.

2007-01-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Allocate a buffer in WCHARs not CHARs.

2007-01-25  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* server/window.c:
	wineserver: Validate the children of windows being hidden.
	Prevents paint_count values from being skewed when hiding windows.

2007-01-25  Huw Davies <huw@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Don't restrict the number of params of [prop*] functions.

2007-01-24  Huw Davies <huw@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Add VT_DATE support to typelib generation.

2007-01-26  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/proxy.c:
	widl: Make some generated variables static and/or const.

	* tools/widl/proxy.c:
	widl: Avoid dependency on COBJMACROS in generated code.

	* tools/widl/proxy.c:
	widl: Define __midl_proxy in the generated proxy code.

	* tools/widl/proxy.c:
	widl: Add a few more fields in the stub descriptor.

	* tools/widl/proxy.c:
	widl: Rename a couple of variables to make the code closer to what midl
	generates.

	* tools/widl/proxy.c:
	widl: Initialize local variables in stub functions.

	* tools/widl/proxy.c:
	widl: Use the typegen function for marshalling/unmarshalling in proxies.

	* tools/widl/typegen.c:
	widl: Copy the UserMarshal support into the generic code.

2007-01-25  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.30.

----------------------------------------------------------------
2007-01-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: Prevent a crash on error while creating a token.

	* dlls/advapi32/tests/security.c, server/handle.c:
	advapi32: Add more tests for granted access mask. Fix test on Wine.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server/ntdll: Simplistic implementation of NtQueryObject(ObjectBasicInformation).

	* server/token.c:
	server: Reverse return value and status in token_access_check to be consistent.

	* dlls/advapi32/tests/security.c, server/token.c:
	advapi32: Add few more tests for token access check and fix it on Wine.

2007-01-25  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/qcap/dllsetup.c:
	qcap: Initialize a variable (Coverity).

2007-01-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rsaenh/des.c, dlls/rsaenh/handle.c, dlls/rsaenh/handle.h,
	  dlls/rsaenh/rsa.c:
	rsaenh: Declare some functions static.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Declare some functions static.

2007-01-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h:
	rpcrt4: RPCRT4_strdupWtoA and RPCRT4_strdupAtoW don't change the input string,
	so make the input const.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Stash away NetworkOptions passed in from the binding string so that
	transports can look at the string if needed.

2007-01-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi_main.c:
	msi: Implement IDispatch->CreateInstance() for the msi server dll.

	* dlls/msi/msi_main.c:
	msi: Implement IClassFactory->QueryInterface() for the msi server dll.

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/iface.c:
	msi: Add a test for the IMsiServer interface.

2007-01-25  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/comdlg32/cdlg_Ru.rc:
	comdlg32: Update Russian translation.

2007-01-25  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Create undos in StreamIn at the right times. Adds tests for when
	StreamIn should be undoable.

2007-01-24  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/reader.c:
	riched20: Remove excessive traces from reader.c.

2007-01-24  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Copy the GL extensions string because it may be freed.

2007-01-24  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Fix type of an empty string to avoid warning.

	* dlls/opengl32/wgl.c:
	opengl32: Remove redundant const.

2007-01-24  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/imagelist.c:
	comctl32: Degrade ERR to WARN.

2007-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: The typelib version numbers should be written to the registry in hex.

2007-01-24  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	sfc_os: Update win32.api to fix the winapi_check warnings.

	* dlls/sfc_os/sfc_os.c, include/sfc.h:
	sfc_os: Add a prototype for SfcIsKeyProtected().

	* dlls/mscoree/mscoree_main.c:
	mscoree: _CorValidateImage() is a WINAPI function.
	This fixes a winapi_check warning.

	* dlls/shell32/shell32_main.c:
	shell32: SHLoadNonloadedIconOverlayIdentifiers() is a WINAPI function.
	This fixes a winapi_check warning.

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: Fix the spec file to better match the SymGetSymFromAddr64() prototype.
	This fixes a winapi_check warning.

	* dlls/snmpapi/main.c:
	snmpapi: Add a missing '\n' trace.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec, include/snmp.h:
	snmpapi: SnmpUtilDbgPrint() is a vararg and not an stdcall function.

2007-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/typegen.c:
	widl: Add support for some simple pointer types.

	* tools/widl/typegen.c:
	widl: Store the interface id in _StubMsg.MaxCount for iid_is pointers.

	* tools/widl/typegen.c:
	widl: Fix alignment check for struct members format string.

	* tools/widl/typegen.c:
	widl: Fix possible crash in write_array_tfs.

	* tools/widl/typegen.c:
	widl: Skip local functions when building format strings.

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Export a function to compute the proc format string size for a function.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Move initialization of the stub buffer size into
	write_remoting_arguments().

	* tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Move support for stub arguments to typegen.c to make it usable for
	proxies too.

	* .gitignore, include/.gitignore, include/Makefile.in,
	  tools/make_makefiles:
	include: Simplify the variable declarations in the makefile to allow
	make_makefiles to parse it.

2007-01-24  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix off-by-one error in converting the password to unicode.

2007-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/debugtools.c:
	ntdll: Properly handle embedded nulls in NTDLL_dbg_vprintf.

2007-01-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/bindprot.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added BindProtocol's IInternetPriority implementation.

2007-01-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/style.c,
	  dlls/riched20/undo.c:
	riched20: Declare some functions static.

	* dlls/quartz/parser.c:
	quartz: Declare a function static.

2007-01-23  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Use CharFromPos instead of FindPixelPos in LinkNotify so it accounts
	for scrolling.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_LIMITTEXT and some simple tests.

2007-01-24  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Fix off-by-one error when copying the password to the helper.
	This fixes NTLM authentication with Outlook2003.

2007-01-24  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: When copying quality of service, deep copy TransportCredentials
	structure too.
	Remove some no longer relevant fixmes.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_conn_open_pipe.
	Fix a typo in rpcrt4_conn_open_pipe where the initial setting of dwFlags
	was done inside the switch statement instead of at the indented place of
	at the start of the block (thanks to Jan Zerebecki for noticing this bug).

2007-01-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added CreateBinding test.

	* dlls/urlmon/bindprot.c:
	urlmon: Added beginning BindProtocol implementation.

	* dlls/urlmon/binding.c, dlls/urlmon/session.c, dlls/urlmon/urlmon_main.h:
	urlmon: Return CLSID from get_protocol_handler.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IInternetProtocolSink interface to BindProtocol.

	* dlls/urlmon/bindprot.c:
	urlmon: Added IInternetPriority interface to BindProtocol.

	* dlls/urlmon/Makefile.in, dlls/urlmon/bindprot.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Added IInternetSession::CreateBinding beginning implementation.

2007-01-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/oleaut32/tests/typelib.c:
	oleaut32/tests: Cast-qual warning fixes.

	* dlls/ole32/tests/compobj.c:
	ole32/tests: Cast-qual warning fixes.

	* dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Cast-qual warning fixes.

2007-01-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement NdrSimpleType{Marshall,Unmarshall}.

2007-01-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptPlace and ScriptShape.

	* dlls/usp10/usp10.c:
	usp10: Move text metrics into the script cache. Start using accessor functions.

	* dlls/usp10/tests/usp10.c:
	usp10: Remove duplicate font selection code from the tests.

2007-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Do not use DIB APIs for bitmap bits in a device dependent format.

	* dlls/user32/cursoricon.c:
	user32: Using DIB APIs to convert a DDB to monochrome is wrong, do it
	differently.

2007-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal.rc,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Fix the FSF address.

2007-01-17  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/cmd/builtins.c:
	cmd: In function WCMD_goto() changed strcmp() to lstrcmpi().

	* programs/cmd/builtins.c:
	cmd: Remove incorrect return in WCMD_if().

2007-01-18  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/console.c:
	kernel32: Add comment for  GetConsoleWindow.

2007-01-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shellord.c, include/shlguid.h, include/shobjidl.idl:
	shell32: Implement the property sheet extension array functions.
	Implement the SHAddFromPropSheetExtArray, SHCreatePropSheetExtArray,
	SHReplaceFromPropSheetExtArray and SHDestroyPropSheetExtArray functions
	that are used to extend/replace property sheets by shell extensions.

2007-01-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/file.c:
	msvcrt: Fix the internal flag computation for _open_osfhandle.

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/tmarshal.c, dlls/oleaut32/tests/tmarshal.idl,
	  dlls/oleaut32/tests/tmarshal.rc,
	  dlls/oleaut32/tests/tmarshal_dispids.h:
	oleaut32/tests: Add tmarshal test.

2007-01-23  Alexandre Julliard <julliard@winehq.org>

	* tools/make_makefiles:
	make_makefiles: Ignore IDL_H_SRCS targets in all directories.

2007-01-22  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource .

2007-01-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/dllsetup.c, dlls/qcap/v4l.c:
	qcap: Declare some items static.

2007-01-22  Rob Shearman <rob@codeweavers.com>

	* .gitignore, dlls/credui/Makefile.in, dlls/credui/credui.rc,
	  dlls/credui/credui.spec, dlls/credui/credui_main.c,
	  dlls/credui/credui_resources.h:
	credui: Implement CredUIPromptForCredentialsW and CredUIConfirmCredentialsW.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/credui/Makefile.in, dlls/credui/credui.spec,
	  dlls/credui/credui_main.c:
	credui: Add stubbed out credui DLL.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Try to avoid partial named pipe read/writes by looping.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Make the fixme for an unhandled packet type more useful by printing
	the code of the unhandled packet type.

2007-01-22  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: Fix the updown control test to use the optional flag.

2007-01-22  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/user32/mdi.c:
	user32: Only try to remove the MDI document icon from the frame menu when needed.

2007-01-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/tests/util.c:
	snmpapi: Add tests for SnmpUtilVarBind{, List}{Cpy, Free}. Make them pass.

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/snmpapi/tests/Makefile.in, dlls/snmpapi/tests/util.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	snmpapi: Add a bunch of tests.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtil{DbgPrint, IdsToA, OidToA, PrintAsnAny, PrintOid}.

2007-01-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Fixed protocol tests on IE7.

2007-01-22  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_interface.h:
	wined3d: Remove some unused methods from the IWineD3DVertexShader interface.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove the d3d9types.h include from wined3d_private.h.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Use ARB_VERTEX_PROGRAM instead of GL_VERTEX_PROGRAM_ARB with GL_SUPPORT.
	Spotted by Marcus Meissner.

2007-01-22  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/header.c:
	comctl32/tests: Cast-qual warning fixes.

2007-01-22  Francois Gouget <fgouget@free.fr>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems that don't support nameless structs
	(e.g. gcc 2.95).

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert expression lists to standard Wine lists.
	Add a specific type for array dimensions.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert variable lists to standard Wine lists.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert function lists to standard Wine lists.

	* tools/widl/client.c, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h,
	  tools/widl/widl.h, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert interface lists to standard Wine lists.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/typegen.c, tools/widl/typelib.c,
	  tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Convert attribute lists to standard Wine lists.

	* tools/widl/typelib.c, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Convert typelib lists to standard Wine lists.

	* tools/widl/write_msft.c:
	widl: Use existing functions to retrieve attributes for typelibs.

2007-01-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/tests/bitmap.c:
	gdi32: Add a simple SelectObject test for bitmaps.

	* dlls/gdi32/dib.c, dlls/gdi32/tests/bitmap.c:
	gdi32: Add a GetDIBits test.

2007-01-20  Bang Jun-Young <junyoung@mogua.com>

	* dlls/wineoss.drv/audio.h:
	wineoss.drv: config.h police.

	* dlls/msxml3/factory.c, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/parseerror.c, dlls/msxml3/regsvr.c:
	msxml3: config.h police.

	* dlls/advapi32/advapi.c:
	advapi32: Do not include unnecessary headers.

	* include/winbase.h:
	winbase.h: Cosmetic changes.

	* include/objbase.h:
	objbase.h: Fix typo in comment.

	* dlls/advpack/tests/files.c:
	advpack/tests: Fix typo.

2007-01-21  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user32/user32.spec:
	user32: Define RealChildWindowFromPoint as a real stub.

2007-01-21  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ntdll/sec.c:
	ntdll: Correct trace message stating NtAccessCheck is a stub.

	* dlls/ntdll/sec.c:
	ntdll: Don't change granted access mask on error.

2007-01-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Make fixme for PRINTER_ENUM_CONNECTIONS more silent.

2007-01-22  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilOid{Append, Cmp, NCmp}. Fix SnmpUtilOid{Cpy, Free}.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilOctets{Cmp,Cpy,Free,NCmp}.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilAsnAny{Cpy,Free}.

2007-01-22  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/kernel32.spec:
	kernel32: Forward EncodePointer and DecodePointer to their ntdll counterparts.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Implement RtlDecodePointer and RtlEncodePointer.

2007-01-22  Alexandre Julliard <julliard@winehq.org>

	* include/wine/list.h:
	wine/list.h: Add list_count function. Make some parameters const.

	* dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c:
	dinput: Undefine SW_MAX to avoid possible conflicts with winuser.h.

	* .gitignore, dlls/Makefile.in, dlls/sfc/Makefile.in,
	  dlls/sfc_os/Makefile.in:
	sfc: We need to import sfc_os for the forwards to work properly.

2007-01-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c:
	ntdll: Extra check for ObjectAttributes (Coverity).

2007-01-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/qcap/pin.c:
	qcap: Fix a typo.

	* dlls/dmime/performance.c:
	dmime: Remove unused variable.

	* dlls/shlwapi/assoc.c:
	shlwapi: Uninitialized variable fix (Coverity).

	* dlls/oledlg/insobjdlg.c:
	oledlg: Declare a function static.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/variant.c, dlls/oleaut32/variant.h:
	oleaut32: Declare some items static.

2007-01-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/volume.c:
	kernel32/tests: GetVolumeNameForMountPoint not present before w2k.

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: VirtualAllocEx not present in Win95.

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Fix a declaration and use skip for the message.

2007-01-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/updown.c:
	comctl32: Fix the updown control test to pass under XP.

2007-01-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/mlang/mlang.c:
	mlang: Implement IMultiLanguage::GetCodePageInfo.

2007-01-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/token.c:
	server: User correct user sid for the default_dacl.

2007-01-19  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/file.c, dlls/ntdll/file.c:
	kernel32: Handle the SECURITY_* flags passed into CreateFileW by filling out
	the SECURITY_QUALITY_OF_SERVICE structure and passing it to NtCreateFile.
	Print a fixme in NtCreateFile if the SECURITY_QUALITY_OF_SERVICE
	structure is specified, since it isn't handled yet.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Handle security quality of service flags relevant to the ncacn_np
	protocol.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Track the security quality of service settings for bindings and
	connections.

2007-01-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/commctrl.c, include/commctrl.h:
	comctl32: Fix InitCommonControlsEx prototype.

2007-01-19  Alexandre Julliard <julliard@winehq.org>

	* tools/makedep.c, tools/widl/proxy.c:
	widl: Include objbase.h so that generated proxy file compiles on Wine.

	* include/rpc.h:
	rpc.h: Include excpt.h, and windef.h in Wine so that the header compiles.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate proxy/client/server files when requested explicitly even if
	they are empty.

	* Make.rules.in:
	Make.rules: Pass all idl source files to makedep.

2007-01-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: The sincos instruction is valid for ps/vs 2.1 as well.

	* dlls/wined3d/glsl_shader.c:
	wined3d: gl_FragDepth is a float, so fixup the write mask.

	* dlls/wined3d/device.c:
	wined3d: Use SetupFullscreenWindow() to make the window fullscreen.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Move SetupFullscreenWindow() and RestoreWindow() from IDirectDrawImpl
	to IWineD3DDeviceImpl.

	* dlls/wined3d/baseshader.c:
	wined3d: Use %s in trace.

2007-01-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/odbc32/proxyodbc.c:
	odbc32: Declare a function static.

	* dlls/ole32/classmoniker.c, dlls/ole32/errorinfo.c,
	  dlls/ole32/hglobalstream.c, dlls/ole32/itemmoniker.c,
	  dlls/ole32/memlockbytes.c:
	ole32: Declare some functions static.

2007-01-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* server/winstation.c:
	server: Add generic access mapping for winstation and desktop objects.

2007-01-18  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/shlfileop.c:
	shell32: Add proper support for SHGetFileInfo(SHGFI_ICONLOCATION |
	SHGFI_USEFILEATTRIBUTES).

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Add some more SHGetFileInfo() tests.

2007-01-18  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/shell32/shellord.c, include/shlobj.h:
	shell32: Fix prototypes.
	Fix the SHAddFromPropSheetExtArray, SHCreatePropSheetExtArray,
	SHReplaceFromPropSheetExtArray and SHDestroyPropSheetExtArray function
	prototypes because they're now documented. Also add them to shlobj.h.

2007-01-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/cursoricon.c:
	user32: Some apps pass a color bitmap as a mask to CreateIconIndirect, convert
	it to b/w.

2007-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/thread.c, server/trace.c:
	ntdll: Avoid inter-process APCs when called for the process itself.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c:
	ntdll: Get rid of the no longer used is_current_process function.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process NtMapViewOfSection and
	NtUnmapViewOfSection.

	* dlls/kernel32/tests/thread.c, dlls/ntdll/sync.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process RtlCreateUserThread.

	* dlls/kernel32/thread.c, dlls/ntdll/thread.c:
	ntdll: Abuse RtlCreateUserThread to call the thread function for CreateThread
	directly.

	* dlls/kernel32/kernel_main.c, dlls/ntdll/thread.c:
	ntdll: Move the LDT section to ntdll and make it an uninterruptible section.

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Fix printf format warnings.

2007-01-18  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/localspl/tests/localmon.c,
	  dlls/mapi32/tests/prop.c, dlls/odbccp32/odbccp32.c, dlls/ole32/rpc.c,
	  dlls/urlmon/mk.c, dlls/wined3d/state.c, dlls/winspool.drv/info.c,
	  include/wine/debug.h, tools/winapi/options.pm:
	Assorted spelling fixes.

	* dlls/comctl32/ipaddress.c, dlls/comctl32/propsheet.c,
	  dlls/comdlg32/filedlg.c, dlls/dmloader/loaderstream.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/palette.c,
	  dlls/kernel32/lcformat.c, dlls/msacm32/driver.c, dlls/msi/action.c,
	  dlls/msvcrt/dir.c, dlls/msvcrt/file.c, dlls/msvfw32/mciwnd.c,
	  dlls/secur32/ntlm.c, dlls/shell32/shellpath.c,
	  dlls/shlwapi/ordinal.c, dlls/user32/dialog.c, dlls/user32/edit.c,
	  dlls/wineps.drv/ps.c, dlls/wininet/http.c, dlls/winmm/playsound.c,
	  programs/winemenubuilder/winemenubuilder.c,
	  programs/winhelp/hlpfile.c:
	Don't put single quotes around '%s' when using the debugstr_*() functions.

	* dlls/shell32/shlexec.c:
	shell32: There is no need to check strings for NULL when using debugstr_w().
	Also don't put single quotes around '%s' in that case.

	* dlls/winmm/tests/timer.c:
	winmm/tests: Use '%u' to print GetLastError().

	* dlls/winspool.drv/info.c:
	winspool.drv: Use '%u' to print GetLastError().

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Use '%u' to print GetLastError().

	* dlls/mcicda/mcicda.c:
	mcicda: Use '%u' to print GetLastError().

	* dlls/secur32/secur32.c:
	secur32: Use '%u' to print GetLastError().

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Use '%u' to print GetLastError().

	* dlls/localspl/localmon.c:
	localspl: Remove unneeded cast.

2007-01-18  Alexandre Julliard <julliard@winehq.org>

	* server/mach.c, server/ptrace.c:
	server: Print a trace when sending a signal to a thread.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ntdll/thread.c:
	ntdll: Block async signals during process init and thread creation.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c:
	ntdll: Make the server signal mask global.

	* dlls/ntdll/thread.c:
	ntdll: Avoid heap allocations during thread creation.

	* dlls/ntdll/server.c:
	ntdll: Make the fd cache section an uninterruptible section.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/trace.c:
	ntdll: Fix NtDuplicateObject to only close the file descriptor if it's in the
	same process.

	* dlls/ntdll/file.c, dlls/ntdll/om.c, dlls/ntdll/server.c:
	ntdll: Avoid heap allocation in fd cache. Fixed a couple of races.

2007-01-17  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Calc more caps infos ahead and store it in JoystickImpl.

2007-01-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Give shader constants their own debug channel.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix a typo.

	* dlls/wined3d/state.c:
	wined3d: When switching color material, apply the material we were previously
	tracking.
	This fixes a regression introduced by 329670c7f129343ef0086f76b08a40d0fd5e3242.

	* dlls/wined3d/state.c:
	wined3d: Don't set Parm when isDiffuseSupplied is FALSE in state_colormat(),
	it isn't used anyway.

2007-01-17  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/device.c, dlls/ddraw/utils.c, dlls/wined3d/utils.c,
	  include/d3d8types.h, include/d3d9types.h,
	  include/wine/wined3d_types.h:
	d3d: Fix the D3DFMT_XXX constant declarations.

2007-01-17  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Reorder a couple of functions and remove the forward declarations.

	* include/wine/test.h:
	tests: The non-gcc case was missing a forward declaration for winetest_skip().

2007-01-17  Francois Gouget <fgouget@free.fr>

	* dlls/odbccp32/tests/misc.c:
	odbccp32/tests: Add missing '\n' to an ok() call.

2007-01-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/winecoreaudio.drv/audio.c:
	winecoreaudio.drv: Print each 64-bit integer as two 32-bit integers.

2007-01-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/objsel/objsel.c:
	objsel: Declare a variable static.

2007-01-17  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Fix trace for WS_setsockopt to look closer to WS_getsockopt.

2007-01-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/regsvr.c:
	msi: Register IMsiServer.

	* dlls/user32/tests/win.c:
	user32: Add a test showing WM_GETTEXT doesn't crash with bad pointers.

	* dlls/user32/defwnd.c:
	user32: Add an exception handler around the WM_GETTEXT handler.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/sfc/sfc.spec, dlls/sfc/sfc_main.c:
	sfc: Forward SfcIsFileProtected to sfc_os.dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/sfc_os/Makefile.in, dlls/sfc_os/sfc_os.c,
	  dlls/sfc_os/sfc_os.spec:
	sfc_os: Add stub for sfc_os.dll.

2007-01-12  Joel Parker <jjk3@msstate.edu>

	* dlls/kernel32/ne_module.c, dlls/kernel32/relay16.c,
	  dlls/kernel32/selector.c, dlls/kernel32/thunk.c, dlls/msvcrt/cpp.c,
	  dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c, dlls/msvcrt/misc.c,
	  dlls/ntdll/loader.c, dlls/ntdll/relay.c, dlls/ntdll/resource.c,
	  dlls/ntdll/rtl.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  dlls/riched20/txtsrv.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/user32/winproc.c, libs/port/interlocked.c, libs/wine/port.c:
	Remove redundant semicolons for ANSI compatibility.

2007-01-12  Anatoly Lyutin <vostok@etersoft.ru>

	* programs/wineconsole/curses.c:
	wineconsole: Add support for non-latin symbols with curses.

2007-01-15  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: No longer check for value exceeding have(min|max) in map_axis.

2007-01-16  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Add a config for the axes.

2007-01-15  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Move the config for the buttons from the JoyDev into the JoystickImpl.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use a struct ObjProps for the config of the device.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Rename 'axe' to 'axis'.

2007-01-17  Frank Richter <frank.richter@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Search for .gnu_debuglink file.

2007-01-16  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Fix HTTP_EncodeBasicAuth by passing an out buffer to the second set
	of character set conversion calls.

2007-01-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Implement per stream offsets.

2007-01-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Store the stream number in the strided structure.

	* dlls/wined3d/drawprim.c:
	wined3d: Improve drawStridedSlow a bit.

2007-01-17  Alasdair Sinclair <alasdairs@dsl.pipex.com>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: If we're at EOF in the buffer and we have pattern %n in format string
	we should not count the EOF in the total.

2007-01-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/netapi32.c:
	netapi32: Declare a variable static.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Implement PortIsValid for XcvDataPort.

	* dlls/localspl/localmon.c:
	localspl: Implement XcvDataPort.

2007-01-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h:
	localspl: Implement XcvOpenPort and XcvClosePort.

2007-01-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for XcvDataPort_PortIsValid.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Extend test for XcvDataPort_MonitorUI.

2007-01-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the TB_SETBITMAPSIZE for width or height zero (with
	testcase).

2007-01-16  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/tests/registry.c:
	advapi32: Add tests for RegQueryValue.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Initialize nrofnames to keep from freeing unused memory in the
	error case.

2007-01-15  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a glsl_src_param_t type, pass it to shader_glsl_add_src_param()
	instead of three separate character arrays.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a glsl_dst_param_t type, pass it to shader_glsl_add_dst_param()
	instead of three separate character arrays.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Simplify shader_glsl_get_write_mask().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Simplify shader_glsl_get_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix pshader_glsl_tex() and pshader_glsl_texcoord().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_callnz().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_breakc().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_ifc().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_if().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_rep().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_loop().
	Fix the comment.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3vspec().
	Use shader_glsl_get_sample_function().
	Use the GLSL builtin reflect() function.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3spec().
	Use shader_glsl_get_sample_function().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3tex().
	Use shader_glsl_get_sample_function().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2tex().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x3pad().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2pad().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texm3x2depth().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texdp3().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texdp3tex().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite pshader_glsl_texreg2rgb to properly take the write mask
	into account.
	Use shader_glsl_get_sample_function() rather than having the instruction
	handler figure it out itself.
	Get rid of shader_glsl_add_dst_old().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Split out getting the sample function and coordinate mask from
	shader_glsl_sample().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texreg2gb().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	pshader_glsl_texreg2ar.
	Use the correct source swizzle.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_dst().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_rcp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_expp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_cnd() to properly take the write mask into account.
	Take the difference between ps 1.4 and earlier versions into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_cmp() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_lrp() to properly take the write mask into account,
	use the GLSL mix instruction.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_lit().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_mov() to properly take the write mask into account.
	In case of writing to an address register round the source.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite pshader_glsl_dp2add() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_dot() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_map2gl() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Give WINED3DSIO_CRS its own function, properly take the write mask
	into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Move WINED3DSIO_SGE & WINED3DSIO_SLT from shader_glsl_map2gl() to
	shader_glsl_compare() where they belong.
	Properly take the write mask into account

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_mad() to properly take the write mask into account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_arith() to properly take the write mask into
	account.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rewrite shader_glsl_sincos() to properly take the write mask into
	account.
	The write mask can only be one of .x, .y, .xy

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass the correct mask to shader_glsl_add_src_param() in
	shader_glsl_get_register_name().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Pass a mask to shader_glsl_add_src_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Rename shader_glsl_add_dst() to shader_glsl_add_dst_old(), add
	shader_glsl_append_dst().

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	05/49: wined3d: Only add line numbers for new lines in shader_addline().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fixup the write mask for gl_FogFragCoord and gl_PointSize.
	gl_FogFragCoord and gl_PointSize are floats rather than vec4s in GLSL,
	so they shouldn't have a destination swizzle, and the write mask we
	return should consist of only the first component.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Return the (binary) write mask from shader_glsl_add_dst_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Split shader_glsl_add_param() in shader_glsl_add_src_param() and
	shader_glsl_add_dst_param().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Add a comment about D3D write masks and GLSL destination swizzles.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c:
	ntdll: Added a missing chunk in the NtLockVirtualMemory support.
	Thanks to Rob Shearman for noticing this.

	* tools/wmc/utils.c:
	wmc: Use standard format for error messages.

	* dlls/msvcrt/locale.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec:
	msvcrt: Export various locale and codepage variables.

2007-01-15  Jonathan Ernst <jonathan@ernstfamily.ch>

	* .gitignore, dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_fra.mc:
	kernel: Beginning of French translation of error messages.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* tools/wmc/lang.c:
	wmc: Added support for neutral languages.

2007-01-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilVarBindList{Cpy,Free}.

2007-01-15  Kai Blin <kai.blin@gmail.com>

	* tools/wineinstall:
	winetools: Fix installing on distributions without a root password.

2007-01-15  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/Makefile.in, dlls/dsound/tests/capture.c,
	  dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c:
	dsound: Fix tests for old versions of windows.

2007-01-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellole.c:
	shell32: Remove unused variable.

	* dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.h:
	msvcrt: Move static function from header into file where it is called.

2007-01-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/varformat.c, dlls/oleaut32/vartype.c:
	oleaut32: Remove unused items.

2007-01-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Fix tests for EnumPrinters when the spooler is off.

	* dlls/winspool.drv/info.c:
	winspool: More error checks for XcvDataW.

	* dlls/winspool.drv/info.c:
	winspool: Improve trace for ClosePrinter.

	* dlls/winspool.drv/info.c:
	winspool: Support xcv in AddPortW.

	* dlls/winspool.drv/info.c:
	winspool: Support xcv in DeletePortW.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Use a more generic name for a variable.

2007-01-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Recalc the toolbar after a TB_SETIMAGELIST.

	* dlls/comctl32/listview.c:
	comctl32: listview: When shrinking the last column clear the now unused field.

	* dlls/comctl32/listview.c:
	comctl32: listview: A CDRF_SKIPDEFAULT for an item should skip the whole row.

2007-01-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implemented NtLockVirtualMemory and NtUnlockVirtualMemory.

2007-01-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/sync.c, dlls/ntdll/virtual.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implementation of inter-process NtFlushVirtualMemory.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process VirtualProtectEx.

	* dlls/kernel32/tests/virtual.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	ntdll: Implementation of inter-process VirtualQueryEx.

	* dlls/kernel32/tests/process.c, dlls/kernel32/tests/virtual.c,
	  dlls/ntdll/sync.c, dlls/ntdll/virtual.c:
	ntdll: Implementation of inter-process VirtualAllocEx and VirtualFreeEx.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/sync.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/trace.c:
	server: Support queuing some APCs to a process instead of a thread.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/thread.c, server/trace.c,
	  tools/make_requests:
	server: Added mechanism for returning results of APC calls.
	Defined APC_VIRTUAL_ALLOC and APC_VIRTUAL_FREE requests.

	* server/thread.c:
	server: Properly wake the waiting threads when an APC is cancelled.

	* dlls/kernel32/console.c:
	kernel32: Use the proper codepage for console functions.
	Based on a patch by Anatoly Lyutin.

2007-01-13  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Fix compilation for older gcc versions (and MinGW).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml/tests: Fix compilation for older gcc versions (and MinGW).

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Fix compilation for older gcc versions (and MinGW).

2007-01-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/thread.c:
	ntdll: Remove unused function.

	* dlls/msvcrt/except.c, dlls/msvcrt/exit.c:
	msvcrt: Declare some items static.

	* dlls/msxml3/attribute.c, dlls/msxml3/comment.c, dlls/msxml3/pi.c:
	msxml3: Remove unused functions.

2007-01-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilVarBindCpy.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec:
	snmpapi: Implement SnmpUtilMem{Alloc,Free,ReAlloc}.

	* dlls/snmpapi/snmpapi.spec:
	snmpapi: Add some missing APIs to the spec file.

	* dlls/snmpapi/main.c, dlls/snmpapi/snmpapi.spec, include/snmp.h:
	snmpapi: Implement SnmpUtilOidCpy, SnmpUtilOidFree and SnmpUtilVarBindFree.

2007-01-15  Alexandre Julliard <julliard@winehq.org>

	* loader/Makefile.in:
	loader: Fix git-describe invocation to work with old git versions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Replace some macros by functions to reduce code size and
	compile time.

2007-01-12  Anatoly Lyutin <vostok@etersoft.ru>

	* dlls/kernel32/locale.c:
	kernel32: Add details in description function MultiByteToWideChar and
	WideCharToMultiByte.

2007-01-14  Felix Nawothnig <flexo@holycrap.org>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/lzexpand.c:
	kernel32: Forward CopyLZFile() to LZCopy() instead of wrapping it.

2007-01-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Removed unneeded code from rewrite of .gnu_link handling.

2007-01-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/mpr/wnet.c:
	mpr: Fix typo (Coverity).

2007-01-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Remove redundant visibility checks of a maximized MDI child, add an
	explanation why we do that.

2007-01-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Simplify some maximized MDI child checks.

	* dlls/user32/mdi.c:
	user32: Remove MDI_AugmentFrameMenu call from WM_MDICREATE handler.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Fix the typos in the fullscreen state debug trace.

	* dlls/wined3d/device.c:
	wined3d: Do not play with WS_VISIBLE, this causes unwanted mapping/unmapping
	of the window.

2007-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/directx.c, dlls/wined3d/directx.c:
	wined3d, d3d9: Caps correction.

	* dlls/wined3d/device.c:
	wined3d: Do not force dynamic usage on transformed buffers.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Better tracking of vertex buffer assignments.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not free regularily locked surfaces.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Revert "wined3d: Do not preload vertex buffers in unlock.".
	This reverts commit 6fb1869b98265a30a285c6f94a768934476a8c2a.

2007-01-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Pl.rc:
	mpr: Add Polish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Pl.rc:
	msi: Add Polish translation.

2007-01-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/cmdlgtst/Pl.rc, programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst: Add Polish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Pl.rc:
	wininet: Add Polish translation.

	* programs/wordpad/Pl.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Polish translation.

2007-01-12  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Change HTTP_EncodeBase64 to operate on a series of bytes,  instead
	of text.
	Change HTTP_EncodeBasicAuth to convert the username and password into
	utf8 before base64 encoding.

	* dlls/wininet/http.c:
	wininet: HTTP_HttpQueryInfoW deals with bytes, not characters so update the
	callers that have this wrong assumption.

	* dlls/wininet/http.c:
	wininet: Allow a NULL value to be passed into HTTP_ProcessHeader
	instead of crashing so that when used with the replace flag it will
	delete an existing value.

2007-01-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/tests/protocol.c:
	itss: Added more protocol tests.

	* dlls/itss/storage.c:
	itss: Close chm file when destroying Storage.

	* dlls/itss/storage.c:
	itss: Return S_FALSE in IStream::Read if there is no more data to read.

	* dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added mk protocol implementation.

2007-01-12  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c,
	  include/odbcinst.h:
	odbccp32: Implement SQLGet/SetConfigMode.

2007-01-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c, server/named_pipe.c:
	server: Set the specified in/out buffer sizes on named pipes using SO_SND/RCVBUF.

2007-01-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Declare some functions static.

	* dlls/msi/action.c, dlls/msi/events.c:
	msi: Declare some functions static.

	* dlls/msi/registry.c, dlls/msi/table.c, dlls/msi/tokenize.c:
	msi: Remove unused variables.

2007-01-12  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c:
	odbccp32: Remove A->W cross-call.

2007-01-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Cast-qual warning fixes.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml/tests: Cast-qual warning fix.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Cast-qual warning fixes.

	* dlls/secur32/tests/schannel.c:
	secur32/tests: Cast-qual warning fixes.

	* dlls/user32/tests/win.c:
	user32/tests: Cast-qual warning fixes.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32/tests: Cast-qual warnings fixes.

2007-01-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Initialise the caller supplied ABC structure in ScriptPlace.
	Fixes a regression found by Lei Zhang.

2007-01-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/Makefile.in, dlls/urlmon/mk.c, dlls/urlmon/tests/protocol.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h:
	urlmon: Added mk protocol stub implementation.

	* dlls/urlmon/tests/url.c:
	urlmon: Code clean up.

2007-01-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c, dlls/ntdll/virtual.c:
	ntdll: Make the virtual.c critical section uninterruptible by signals.
	Based on a patch by Thomas Kho.

	* dlls/ntdll/virtual.c:
	ntdll: Fix handling of 64-bit sizes in NtMapViewOfSection.

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	ntdll: Duplicate the mapping handle on the server side for NtMapViewOfSection.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c,
	  server/fd.c, server/file.c, server/file.h, server/process.c:
	ntdll: Moved the check for removable file in load_dll to the server.

2007-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/winex11.drv/xrandr.c:
	xrandr: Small X11DRV_XRandR_(Get|Set)CurrentMode() code optimisations.

2007-01-11  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c:
	odbccp32: Implement SQLGetInstalledDrivers.

2007-01-11  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/treeview.c:
	treeview: Fix horizontal scrolling.

2007-01-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Avoid a NULL pointer dereference in UpdateTexture (Coverity).

	* dlls/wined3d/surface.c:
	wined3d: Do not perform a NULL check on riid (Coverity).

	* dlls/d3d9/device.c, dlls/d3d9/directx.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d9: Implement IDirect3DDevice9::StretchRect.

2007-01-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/propvariant.c:
	ole32/tests: Cast-qual warnings fixes.

2007-01-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix crash undoing a paste.

2007-01-12  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/explorer/systray.c:
	explorer/systray: Some code cleanup.

2007-01-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/d3d8/tests/d3d8_main.c, dlls/d3d8/tests/device.c,
	  dlls/d3d8/tests/surface.c, dlls/d3d8/tests/texture.c,
	  dlls/d3d8/tests/volume.c:
	d3d8/tests: Warn that tests were skipped if we could not load d3d8.dll.
	But report a failed test if a mandatory function is missing from it.

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/surface.c,
	  dlls/d3d9/tests/texture.c, dlls/d3d9/tests/vertexdeclaration.c,
	  dlls/d3d9/tests/volume.c:
	d3d9/tests: Warn that tests were skipped if we could not load d3d9.dll.
	But report a failed test if a mandatory function is missing from it.
	Also warn if the hardware capabilities force us to skip some tests.

	* include/wine/test.h:
	tests: Add skip(), a function to warn that tests were skipped due to limitations
	of the environment or missing dependencies.

2007-01-11  Francois Gouget <fgouget@free.fr>

	* dlls/dsound/tests/capture.c:
	dsound/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound/tests: The tests link with dsound.dll so use GetModuleHandle() instead
	of LoadLibrary().

	* dlls/dsound/tests/capture.c:
	dsound/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

2007-01-11  Ken Thomases <ken@codeweavers.com>

	* dlls/wined3d/query.c:
	wined3d: Do not block waiting for occlusion query result in GetData.

2007-01-11  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/errorinfo.c:
	ole32: Fix copied description and copyright statement for tests/errorinfo.c.

2007-01-11  Frank Richter <frank.richter@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Split gnu_debuglink handling into own function.

2007-01-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msacm32/internal.c:
	msacm32: Declare some variables static.

	* dlls/mshtml/nsembed.c:
	mshtml: Declare a variable static.

	* dlls/mpr/wnet.c:
	mpr: Declare a variable static.

	* dlls/msdmo/dmoreg.c:
	msdmo: Declare a function static.

	* dlls/itss/chm_lib.c:
	itss: Remove unused variable and associated dead code.

	* dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Remove unused function.

	* dlls/msg711.acm/msg711.c:
	msg711.acm: Remove unused function.

2007-01-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filetitle.c:
	comdlg32: Move GetFileTitle(A/W/16) to filedlg.c, filedlg16.c.

2007-01-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Support Xcv for ConfigurePortW.

	* dlls/winspool.drv/info.c:
	winspool: Support monitors without a name.

2007-01-11  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Added printf format checking and fix some formats.

	* loader/preloader.c:
	preloader: Remove reserved ranges that we failed to allocate.

2007-01-10  Bill Medland <billmedland@shaw.ca>

	* dlls/odbccp32/odbccp32.c, dlls/odbccp32/tests/misc.c:
	odbccp32: Implement SQLInstallerError(W).

2007-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Merge existing resources in EndUpdateResource.

	* dlls/kernel32/resource.c:
	kernel32: Split update_add_resource() into two functions.

	* dlls/kernel32/resource.c:
	kernel32: Create a simple abstraction for file mappings.

2007-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/text.c, dlls/user32/uitools.c:
	user32: Add a simple DrawState test, make it pass under Wine.

2007-01-11  James Hawkins <truiken@gmail.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Use the correct variable in the FIXME.

	* dlls/winspool.drv/info.c:
	winspool.drv: Check for get_filename failure.

	* programs/winedbg/memory.c:
	winedbg: Check buffer for NULL before writing to it.

2007-01-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/caret.c, dlls/riched20/editor.c,
	  dlls/riched20/tests/editor.c, dlls/riched20/undo.c:
	riched20: Fix modification state for several operations.

2007-01-10  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/ole2.c:
	ole32: Add tests for the default handler.

	* dlls/ole32/errorinfo.c, dlls/ole32/tests/Makefile.in,
	  dlls/ole32/tests/errorinfo.c:
	ole32: Add tests for error info functions.
	Return E_INVALIDARG if dwReserved is not set to zero for both
	GetErrorInfo and SetErrorInfo.

2007-01-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Internal data format is not const anymore.

2007-01-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Don't copy no longer used user data format object array.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Use internal data format for object lookups.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Use correct offset to queue events.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Rewrite GetObjectInfo and EnumObjects on top of
	base class.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: [joystick_linuxinput] Copy and modify default data format.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Use correct offset to queue events.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Reuse the same properties array.

	* dlls/dinput/joystick_linux.c:
	dinput: [joystick_linux] Copy and modify default data format.
	Copy only what we have.

2007-01-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Print status of the hinting support in the debug log.

2007-01-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* programs/clock/Nl.rc:
	clock: Update Dutch resource.

2007-01-10  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Update Dutch resources.

	* dlls/user32/resources/user32_Nl.rc:
	user32: Update Dutch resources.

2007-01-10  Francois Gouget <fgouget@free.fr>

	* dlls/rpcrt4/tests/ndr_marshall.c, include/rpcndr.h:
	rpcrt4: Give a proper name to some formerly reserved MIDL_STUB_MESSAGE fields.
	Define NTDDI_VERSION so we get definitions for the Reserved51_X fields with
	the PSDK.
	This fixes compilation of the ndr_marshall.c with the PSDK.

2007-01-10  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/netconnection.c:
	wininet: Don't try to read anything if 0 bytes are to be read.

2007-01-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/resource.c:
	kernel32: Declare some functions static.

	* dlls/itss/chm_lib.c, dlls/itss/chm_lib.h:
	itss: Declare a function static.

	* dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Remove unused function.

2007-01-10  Harry McNally <harrymc@decisions-and-designs.com.au>

	* dlls/ntdll/time.c:
	ntdll: Add Western Australia Summer Time.

2007-01-10  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: We cannot create fake dlls for 16bit libraries. So remove ddeml.dll.

2007-01-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove dead NV_TEXTURE_SHADER code

	* dlls/wined3d/state.c:
	wined3d: Do not activate / deactivate texture dimensions twice.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: D3D7 vertex buffers never change their declaration.

	* dlls/wined3d/state.c:
	wined3d: Fix a capital letter in a parameter name.

	* dlls/wined3d/state.c:
	wined3d: Add copyright statements to state.c.

	* dlls/wined3d/state.c:
	wined3d: Attempt to remove some tabs smuggled in by xcode.

	* dlls/wined3d/state.c:
	wined3d: Do not warn about unsupported point sizes if the default values are set.

	* dlls/wined3d/state.c:
	wined3d: Avoid false resultarg warnings.

	* dlls/ddraw/device.c:
	ddraw: Get some texture stage states from their equivalent sampler states.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Store the scissor rect in the stateblock.

	* dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Count the framerate per swapchain, not globally.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move material applying to the state table.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove the invymat from drawprim.c.

	* dlls/wined3d/drawprim.c:
	wined3d: Do not reset the material.

2007-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c, server/thread.c:
	server: Allow suspended threads to run system APCs.

	* dlls/ntdll/critsection.c:
	ntdll: Make sure that critical section waits are not interrupted.

	* dlls/ntdll/sync.c:
	ntdll: Only return STATUS_USER_APC from a wait if a real user APC has been run.
	Based on a patch by Thomas Kho.

	* dlls/ntdll/sync.c:
	ntdll: Compute the wait timeout only once in NTDLL_wait_for_multiple_objects.

	* dlls/Makefile.in, tools/make_makefiles:
	make_makefiles: Get rid of the rules for dll symlinks.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineoss.drv/Makefile.in, dlls/wineoss.drv/audio.c,
	  dlls/wineoss.drv/audio.h, dlls/wineoss.drv/dscapture.c,
	  dlls/wineoss.drv/dsrender.c, dlls/wineoss.drv/midi.c,
	  dlls/wineoss.drv/midipatch.c, dlls/wineoss.drv/mixer.c,
	  dlls/wineoss.drv/mmaux.c, dlls/wineoss.drv/oss.c,
	  dlls/wineoss.drv/oss.h, dlls/wineoss.drv/wineoss.drv.spec,
	  dlls/winmm/wineoss/Makefile.in, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/audio.h, dlls/winmm/wineoss/dscapture.c,
	  dlls/winmm/wineoss/dsrender.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/midipatch.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c, dlls/winmm/wineoss/oss.c,
	  dlls/winmm/wineoss/oss.h, dlls/winmm/wineoss/wineoss.drv.spec:
	wineoss: Renamed the dlls/winmm/wineoss directory to dlls/wineoss.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winenas.drv/Makefile.in, dlls/winenas.drv/audio.c,
	  dlls/winenas.drv/nas.c, dlls/winenas.drv/nas.h,
	  dlls/winenas.drv/winenas.drv.spec, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/winenas/audio.c, dlls/winmm/winenas/nas.c,
	  dlls/winmm/winenas/nas.h, dlls/winmm/winenas/winenas.drv.spec:
	winenas: Renamed the dlls/winmm/winenas directory to dlls/winenas.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winejack.drv/Makefile.in, dlls/winejack.drv/audio.c,
	  dlls/winejack.drv/jack.c, dlls/winejack.drv/jack.h,
	  dlls/winejack.drv/winejack.drv.spec, dlls/winmm/winejack/Makefile.in,
	  dlls/winmm/winejack/audio.c, dlls/winmm/winejack/jack.c,
	  dlls/winmm/winejack/jack.h, dlls/winmm/winejack/winejack.drv.spec:
	winejack: Renamed the dlls/winmm/winejack directory to dlls/winejack.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineesd.drv/Makefile.in, dlls/wineesd.drv/audio.c,
	  dlls/wineesd.drv/esound.c, dlls/wineesd.drv/esound.h,
	  dlls/wineesd.drv/wineesd.drv.spec, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/wineesd/audio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/wineesd/esound.h, dlls/winmm/wineesd/wineesd.drv.spec:
	wineesd: Renamed the dlls/winmm/wineesd directory to dlls/wineesd.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winecoreaudio.drv/Makefile.in, dlls/winecoreaudio.drv/audio.c,
	  dlls/winecoreaudio.drv/audiounit.c,
	  dlls/winecoreaudio.drv/coreaudio.c,
	  dlls/winecoreaudio.drv/coreaudio.h,
	  dlls/winecoreaudio.drv/winecoreaudio.drv.spec,
	  dlls/winmm/winecoreaudio/Makefile.in,
	  dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec:
	winecoreaudio: Renamed the dlls/winmm/winecoreaudio directory to
	dlls/winecoreaudio.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/wineaudioio.drv/Makefile.in, dlls/wineaudioio.drv/audio.c,
	  dlls/wineaudioio.drv/audioio.c,
	  dlls/wineaudioio.drv/wineaudioio.drv.spec,
	  dlls/winmm/wineaudioio/Makefile.in, dlls/winmm/wineaudioio/audio.c,
	  dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineaudioio/wineaudioio.drv.spec:
	wineaudioio: Renamed the dlls/winmm/wineaudioio directory to
	dlls/wineaudioio.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winearts.drv/Makefile.in, dlls/winearts.drv/arts.c,
	  dlls/winearts.drv/arts.h, dlls/winearts.drv/audio.c,
	  dlls/winearts.drv/winearts.drv.spec, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/winearts/arts.c, dlls/winmm/winearts/arts.h,
	  dlls/winmm/winearts/audio.c, dlls/winmm/winearts/winearts.drv.spec:
	winearts: Renamed the dlls/winmm/winearts directory to dlls/winearts.drv.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winealsa.drv/Makefile.in, dlls/winealsa.drv/alsa.c,
	  dlls/winealsa.drv/alsa.h, dlls/winealsa.drv/audio.c,
	  dlls/winealsa.drv/midi.c, dlls/winealsa.drv/winealsa.drv.spec,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winealsa/alsa.h, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c, dlls/winmm/winealsa/winealsa.drv.spec:
	winealsa: Renamed the dlls/winmm/winealsa directory to dlls/winealsa.drv.

2007-01-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/cabinet/fdi.c, dlls/ddraw/ddraw.c, dlls/user32/misc.c,
	  dlls/wined3d/device.c, dlls/wined3d/state.c,
	  programs/winetest/main.c:
	janitorial: Use the C standard for multiline strings.

2007-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/wineconsole/wineconsole_De.rc,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Fr.rc,
	  programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_No.rc,
	  programs/wineconsole/wineconsole_Pl.rc:
	wineconsole: Fix a typo in the help message about correct backend names.

	* programs/wineconsole/curses.c:
	wineconsole: Use CP_UNIXCP to translate strings to the system encoding.

	* programs/wineconsole/curses.c, programs/wineconsole/user.c,
	  programs/wineconsole/winecon_user.h:
	wineconsole: Make some data const.

2007-01-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Pass complete DataFormat structure to find_property.

	* dlls/dinput/keyboard.c:
	dinput: Remove duplicate Keyboard->Poll it is the same as base class.

	* dlls/dinput/mouse.c:
	dinput: Fix trace formatting.

2007-01-09  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c:
	ole32: Fix the detection of when we need an additional QueryInterface in
	CoUnmarshalInterface.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a test for the failure case of same-apartment unmarshaling when
	passing in an unsupported iid.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for passing invalid arguments to CoUnmarshalInterface.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: ReadClassStm should return STG_E_READFAULT is not all of the data could
	be read, not S_FALSE.
	Clear pclsid in case of errors.
	Add tests for ReadClassStm.

	* dlls/ole32/tests/compobj.c:
	ole32: Add tests for invalid arguments of CoMarshalInterface and
	CoMarshalInterThreadInterfaceInStream.

	* dlls/ole32/marshal.c:
	ole32: Return an error from CoUnmarshalInterface if pStream is NULL or if ppv
	is NULL.

	* dlls/ole32/storage32.c:
	ole32: Fix Read/WriteClassStm to return an error if the passed in stream
	pointer is NULL.

	* dlls/ole32/marshal.c:
	ole32: Return an error in CoMarshalInterface if pStream is NULL.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix HGLOBALStreamImpl_CopyTo to check the return values of IStream_Read
	and IStream_Write and to not compare the bytes read to the bytes written.
	Add tests for IStream::CopyTo of the HGLOBAL stream implementation.

	* dlls/ole32/compobj.c, dlls/ole32/git.c, dlls/ole32/marshal.c,
	  dlls/ole32/rpc.c, dlls/ole32/stubmanager.c:
	ole32: Remove some unneeded inclusions of headers.
	Change some incorrect usages of SEEK_SET to the intended STREAM_SEEK_SET
	instead.

	* dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Move test for CoGetInterfaceAndReleaseStream to compobj.c.

	* dlls/ole32/git.c:
	ole32: Use the standard list functions for the global interface table
	implementation.

	* dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c:
	ole32: Move the Running Object Table test in marshal.c to moniker.c to put it
	with the other ROT tests.

	* dlls/ole32/rpc.c:
	ole32: Fix a comment in rpc_sendreceive_thread that wasn't correct.

	* dlls/ole32/compobj.c:
	ole32: Remove a FIXME comment that no longer applies.

2007-01-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Fill the output buffer to workaround a bug in IE7s advpack.

	* dlls/comctl32/tests/updown.c:
	comctl32: Rewrite the up-down control tests to add message checking.

2007-01-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/minidump.c:
	winedump: Fixed signature for dumping MDMP files.

2007-01-09  Bill Medland <billmedland@shaw.ca>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/odbccp32/tests/Makefile.in, dlls/odbccp32/tests/misc.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	odbccp32: Add tests structure.

2007-01-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32: Do not forget to cleanup if the test is skipped.

2007-01-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Force the fullscreen state update once the window is mapped.

2007-01-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/uninstaller/Pt.rc:
	uninstaller: Add a Portuguese translation (contributed by Americo Jose Melo).

2007-01-09  Francois Gouget <fgouget@free.fr>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Consistenly use INTERNET_SetLastError().

2007-01-09  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Skip some tests on Windows Vista.

2007-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Fix exception test for CPUs that do segment limit checks
	differently.

	* dlls/ntdll/tests/port.c:
	ntdll/tests: Don't bother testing the port functions if creating the port failed.

2007-01-09  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/parser.l, tools/wrc/utils.c:
	wrc: Added support for utf-8 codepage.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.29.

----------------------------------------------------------------
2007-01-09  Alexandre Julliard <julliard@winehq.org>

	* LICENSE, include/wine/wine_common_ver.rc:
	Update copyright info for the new year.

2007-01-09  Francois Gouget <fgouget@free.fr>

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi/tests: Print GetLastError() in decimal with '%u'.

	* dlls/wintrust/tests/register.c:
	wintrust/tests: Print GetLastError() in decimal with '%u'.

	* dlls/mcicda/mcicda.c:
	mcicda: Compare GetLastError() to kernel error codes, not ntdll ones.

2007-01-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/tests/volume.c,
	  dlls/kernel32/volume.c:
	kernel32: Add a stub implementation for GetVolumeNameForVolumeMountPoint{A, W}.

2007-01-08  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/version.c:
	kernel32: Add SetTermsrvAppInstallMode stub.

2007-01-08  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Implement EndUpdateResource for the case existing resources are
	deleted.

2007-01-08  Patrik Stridvall <patrik@stridvall.se>

	* dlls/dxguid/dxguid.c, include/Makefile.in, include/rmxfguid.h:
	dxguid: Add the rmxfguid.h header and export the GUIDs.

	* .gitignore, tools/make_makefiles:
	make_makefiles: Add *_crosstest.exe to .gitignore.

2007-01-09  Felix Nawothnig <flexo@holycrap.org>

	* dlls/comctl32/tests/treeview.c, dlls/comctl32/treeview.c:
	treeview: Initialize iImage and iSelectedImage with zero.

2007-01-08  Ken Thomases <ken@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Don't release preferred_locales until we're done with its members.

2007-01-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avifil32/tmpfile.c, dlls/dmband/dmutils.c, dlls/dmime/dmutils.c,
	  dlls/dmloader/debug.c, dlls/dmstyle/dmutils.c,
	  dlls/dmusic/collection.c, dlls/dplayx/dplayx_messages.c,
	  dlls/kernel32/cpu.c, dlls/msrle32/msrle32.c, dlls/ntdll/tests/om.c,
	  dlls/user32/tests/msg.c, programs/oleview/oleview.c:
	janitorial: Remove stray '\' at end of lines.

	* dlls/wined3d/device.c:
	wined3d: Remove stray '\' at end of lines.

	* dlls/dsound/sound3d.c, dlls/dsound/tests/propset.c:
	dsound: Remove stray '\' at end of lines.

	* include/commctrl.h, include/softpub.h, include/wintrust.h:
	include: Remove stray '\' at end of lines.

2007-01-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dsound/sound3d.c:
	dsound: Remove unused function.

	* dlls/hhctrl.ocx/webbrowser.c:
	hhctrl.ocx: Remove unused variable.

	* dlls/gdi32/freetype.c:
	gdi32: Remove unused variables.

	* dlls/gdi32/mapping.c, dlls/gdi32/printdrv.c:
	gdi32: Declare some functions static.

	* dlls/gdi32/path.c:
	gdi32: Remove unused function.

2007-01-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ole32/tests/stg_prop.c:
	ole32/tests: Cast-qual warnings fixes.

2007-01-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Load the user interface dll on demand.

2007-01-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/dsound/propset.c:
	dsound: The dsconf.h GUIDs are now in libdxguid.

	* server/mapping.c:
	server: Don't fail to map a shared section if the final sector is truncated.

2007-01-08  Patrik Stridvall <patrik@stridvall.se>

	* dlls/dsound/tests/propset.c, dlls/dxguid/dxguid.c:
	dsound: The GUID:s defined in dsconf.h should be exported by dxguid.

	* dlls/imm32/imm.c:
	imm32: Only unregister the IME class if it was registered.

2007-01-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/virtual.c:
	kernel32/tests: Prevent memory leak.

2007-01-07  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Set event from queue_event, simplifying code a bit.

	* dlls/dinput/keyboard.c:
	dinput: Use proper offset when queuing keyboard events.

2007-01-06  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/keyboard.c:
	winex11drv: Change FIXME to WARN in X11DRV_GetKeyNameText.

2007-01-06  Duane Clark <fpga@pacbell.net>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Allow LVIF_STATE flag in subitems.

2007-01-07  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Fr.rc:
	localspl: Added French translation.

2007-01-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix np2 textures.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Do not try to read the vertex decl when the stateblock isn't finalized.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove some unneeded context cache members from the device.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Vertex buffers can use the declaration from the device.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Do not preload vertex buffers in unlock.

	* dlls/wined3d/drawprim.c:
	wined3d: Clean up drawprim a bit.

	* dlls/ddraw/ddraw.c:
	ddraw: Forward the DDSCAPS2_TEXTUREMANAGE flag to wined3d.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on index buffers.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/vertexbuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on vertex buffers.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on pixel shaders.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references on vertex shaders.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Do not keep internal references to the vertex declaration.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not activate vertex shaders needlessly.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Avoid negative draw start indices.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move applying shader constants to the state table.

	* dlls/wined3d/query.c:
	wined3d: Remove the general query fixme.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/state.c:
	wined3d: Apply shaders in their state handlers.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move debugging fixmes from drawprim to the stream source handler.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Re-add the fixed function stream source trace.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move applying the gl stream sources to the state table.

2007-01-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c:
	user32: Restore old WM_SIZE handler in mdi child.

	* dlls/kernel32/tests/file.c:
	kernel32: Print more information about the reason of a test failure.

	* dlls/kernel32/tests/file.c:
	kernel32: Fix the file sharing test to pass cleanly under XP and Win9x.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Skip the VirtualAllocEx test under Win9x.

	* server/file.c, server/trace.c:
	server: Map ESPIPE to STATUS_ILLEGAL_FUNCTION for consistency with ntdll.

	* dlls/user32/tests/msg.c:
	user32: Add one more GetSystemMenu test.

2007-01-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Make message tests pass cleanly under XP SP2.

2007-01-07  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Use Keep-Alive for HTTP requests if specified by the flags passed
	into HttpOpenRequest.

	* dlls/wininet/http.c:
	wininet: Fix the handling of Accept types passed into HttpOpenRequest
	by properly coalescing all the types into the Accept header value,
	rather than just adding the first.

	* dlls/wininet/http.c:
	wininet: Rename HTTP_Base64 to HTTP_EncodeBase64 to more accurately reflect
	what it does.

	* dlls/ole32/tests/clipboard.c:
	ole32: Fix the OLE clipboard test to call OleInitialize before performing the
	tests to fix test failures on Windows.

	* dlls/ole32/compobj_private.h, dlls/ole32/ole2.c:
	ole32: Add a field to the TLS data to determine whether OLE has been initialised
	for the current thread.

	* dlls/ole32/stg_stream.c:
	ole32: IPeristStream implies IPersist and IStream implies ISequentialStream
	so fix the Structured Storage stream implementation's QueryInterface with to
	reflect this.

	* dlls/ole32/hglobalstream.c:
	ole32: IStream inherits from ISequentialStream so the HGLOBALStream
	implementation must also support ISequentialStream.

	* dlls/ole32/tests/marshal.c:
	ole32: Release the global interface table in the tests when it is no longer
	needed.

2007-01-07  Kai Blin <kai.blin@gmail.com>

	* dlls/winmm/mci.c:
	winmm: Remove unused variable and if check (Coverity).

	* programs/taskmgr/graphctl.c:
	taskmgr: Remove unused variable and if check (Coverity).

2007-01-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplayx_global.c, dlls/dplayx/dplayx_global.h,
	  dlls/dplayx/dplobby.c, dlls/dplayx/name_server.c:
	dplayx: Declare some functions static.

	* dlls/dmstyle/dmutils.c, dlls/dmstyle/dmutils.h:
	dmstyle: Declare some functions static.

	* dlls/dnsapi/main.c, dlls/dnsapi/ns_name.c:
	dnsapi: Declare some items static.

2007-01-06  Francois Gouget <fgouget@free.fr>

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/mshtml/tests/protocol.c:
	mshtml/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/kernel32/tests/console.c, dlls/kernel32/tests/file.c,
	  dlls/kernel32/tests/path.c:
	kernel32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/gdi32/tests/font.c:
	gdi32/tests: Replace an '#if 0' with an 'if (0)'.

	* dlls/ntdll/tests/reg.c:
	ntdll/tests: Replace an '#if 0' with an 'if (0)'.
	Fix the code so it compiles without warnings.

	* dlls/d3d9/tests/surface.c:
	d3d9/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/gdi32/tests/dc.c:
	gdi32/tests: Tweak a test to avoid an '#if 0'.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4/tests: Remove an unneeded '#if 0' and fix the code so it compiles
	without warnings.

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Replace some '#if 0's with 'if (0)'s, or remove them if not
	needed anymore.
	Fix the code so it compiles without warnings.

	* dlls/oleaut32/tests/olepicture.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Fix compilation on systems with no nameless unions (e.g. gcc
	2.95).

	* dlls/setupapi/tests/parser.c:
	setupapi/tests: Print GetLastError() in decimal with '%u'.

	* dlls/wininet/tests/http.c, dlls/wininet/tests/url.c:
	wininet/tests: Print GetLastError() in decimal with '%u'.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/shell32/shell32_main.c, dlls/shell32/tests/shlfileop.c:
	shell32/tests: Hack SHGetFileInfo() so it does not crash and add a test for it.

2007-01-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/process.c:
	kernel32: Skip the OpenProcess test under Win9x.

2007-01-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetVertexShaderDeclaration gets passed a handle
	instead of a pointer.

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetVertexShaderFunction gets passed a handle instead
	of a pointer.

	* dlls/d3d8/device.c:
	d3d8: IDirect3DDevice8Impl_GetPixelShaderFunction gets passed a handle instead
	of a pointer.

2007-01-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/shlwapi.spec, dlls/shlwapi/tests/Makefile.in,
	  dlls/shlwapi/tests/clsid.c:
	shlwapi: Forward CLSIDFromProgIDWrap to ole32 (with test).

2007-01-06  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/shdoclc/Fr.rc:
	shdoclc: Update French translation.

	* programs/winecfg/Fr.rc:
	winecfg: Update French translation.

2007-01-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/devenum/devenum_main.c:
	devenum: Do not store full DLL path in the registry.

	* dlls/qcap/dllsetup.c, dlls/qcap/dllsetup.h, dlls/qcap/qcap_main.c:
	qcap: Do not store full DLL path in the registry.

2007-01-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement XcvDataW.

	* dlls/winspool.drv/info.c:
	winspool: Call the Portmonitor for XcvMonitor and XcvPort in OpenPrinter.

	* dlls/winspool.drv/info.c:
	winspool: Start support for XcvMonitor and XcvPort in OpenPrinter.

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool: Support the local computername as servername for OpenPrinter.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c, dlls/user32/driver.c,
	  dlls/user32/tests/input.c, dlls/user32/user_private.h,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c:
	winex11drv/user32: Add ClipCursor to x11drv to pass clip rectangle to x11drv.

2007-01-05  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Fix possible NULL deference.

	* dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Fix memory leak.

	* dlls/dinput/device.c, dlls/dinput/device_private.h, dlls/dinput/mouse.c:
	dinput: Fix mouse to use proper offset when queuing new events. Add handling
	of X-buttons.
	We should use instance IDs instead of sequential numbers to get correct offset.

2007-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/wine/mscvpdb.h, tools/winedump/msc.c:
	winedump: Add support for derived types in codeview type info.

	* tools/winedump/debug.c, tools/winedump/msc.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Fix a couple of issues with types table walking.
	Align types to DWORD boundaries.
	Split types dumping functions into two versions (one without offsets
	table, the second one with offset table).

	* tools/winedump/msc.c:
	winedump: Dump S_SSEARCH_V1 symbols.

	* tools/winedump/debug.c:
	winedump: Added for dumping sstAlignSym and sstGlobalTypes COFF sections.

	* dlls/dbghelp/msc.c:
	dbghelp: Handling of S_SALIGN symbols.

	* tools/winedump/msc.c:
	winedump: Handling of S_SALIGN symbols.

	* include/wine/mscvpdb.h, tools/winedump/debug.c:
	winedump: Re-use existing codeview facilities to dump OMF files.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h, tools/winedump/cvinclude.h,
	  tools/winedump/debug.c:
	winedump: Removed cvinclude.h.

	* tools/winedump/debug.c:
	winedump: Added dumping of RSDS header from module.

	* tools/winedump/dump.c, tools/winedump/lnk.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Added helper to convert a guid to a string.

	* tools/winedump/main.c, tools/winedump/ne.c,
	  tools/winedump/winedump.man.in:
	winedump: While dumping NE files, use -j option if present (as we do for
	PE files).

	* tools/winedump/Makefile.in, tools/winedump/dos.c, tools/winedump/dump.c,
	  tools/winedump/winedump.h:
	winedump: Print some basic info for pure DOS file (which fixes segfault while
	reading DOS files).

	* tools/winedump/debug.c:
	winedump: Added ability to dump FPO debug information.

2007-01-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Corrected the map/unmap operations for ELF sections.
	Now correctly free the mapped areas when no longer used.

2007-01-06  Kai Blin <kai.blin@gmail.com>

	* dlls/msacm32/driver.c:
	msacm32: Fix comment and remove unneeded if check (Coverity).
	Thanks to Alex Villacís Lasso for comments.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/rpc.c:
	ole32: Print GetLastError() in decimal with '%u'.

	* dlls/gdi32/tests/gdiobj.c:
	gdi32/tests: Print GetLastError() in decimal with '%u'.

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Print GetLastError() in decimal with '%u'.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Print GetLastError() in decimal with '%u'.

	* dlls/version/tests/info.c:
	version/tests: Print GetLastError() in decimal with '%u'.

2007-01-05  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Self-register objsel.dll.

	* dlls/ddrawex/Makefile.in, dlls/ddrawex/main.c, dlls/ddrawex/regsvr.c,
	  tools/wine.inf:
	ddrawex: Self-register the DirectDrawFactory CoClass.

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c,
	  dlls/dinput8/regsvr.c, tools/wine.inf:
	dinput8: Self-register the DirectInput8 CoClass.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* programs/taskmgr/taskmgr.c:
	taskmgr: Print GetLastError() in decimal with '%u'.

	* dlls/advapi32/crypt.c:
	advapi32: Remove a useless macro.

2007-01-05  Kai Blin <kai.blin@gmail.com>

	* dlls/shlwapi/reg.c:
	shlwapi: Remove redundant check in assignment, unicode version (Coverity).

	* dlls/user32/combo.c:
	user32: If pTest was allocated, length has to be > 0 (Coverity).

	* dlls/ole32/ole2.c:
	ole32: Remove redundant NULL check (Coverity).

2007-01-05  Jeff Latimer <lats@yless4u.com.au>

	* dlls/winemp3.acm/interface.c:
	winemp3.acm: Ensure null check before dereference.

	* dlls/wininet/utility.c:
	wininet: Ensure null check before dereference.

2007-01-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmloader/debug.c, dlls/dmloader/debug.h:
	dmloader: Declare some functions static.

	* dlls/dmime/dmutils.c, dlls/dmime/dmutils.h:
	dmime: Declare some functions static.

2007-01-05  Francois Gouget <fgouget@free.fr>

	* dlls/quartz/memallocator.c, dlls/quartz/videorenderer.c:
	quartz: Use '%u' to print GetLastError().

	* dlls/urlmon/umon.c:
	urlmon: Print GetLastError() in decimal with '%u'.

	* dlls/qcap/v4l.c:
	qcap: Print GetLastError() in decimal with '%u'.

2007-01-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/lcformat.c, dlls/kernel32/tests/locale.c:
	kernel32: GetTimeFormat and GetDateFormat should fail if LOCALE_NOUSEROVERRIDE
	is specified simultaneously with a format string.

2007-01-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Pass correct working directory to the tests.

2007-01-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/devenum/devenum.rc:
	devenum: Update Dutch resource.

	* dlls/comdlg32/cdlg_Nl.rc:
	comdlg32: Update Dutch resource.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/tests/device.c:
	dinput: Change EnumObjects to use GetObjectInfo.
	Also small debug trace correction to make it more readable.

2007-01-03  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: state_pointsprite should apply to all texture units.

2007-01-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/imagehlp/access.c:
	imagehlp: Make use of the bReadOnly parameter in MapAndLoad.

	* dlls/imagehlp/access.c:
	imagehlp: Correctly handle files without NT headers in MapAndLoad.

	* dlls/imagehlp/access.c:
	imagehlp: Fixed computation of SizeOfImage in MapAndLoad.

2007-01-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/state.c:
	wined3d: Skip sampler state application for stages that aren't mapped to a
	texture unit.

	* dlls/wined3d/state.c:
	wined3d: Skip WINED3DTSS_TEXCOORDINDEX state application for stages that aren't
	mapped to a texture unit.

	* dlls/wined3d/state.c:
	wined3d: Don't do WINED3DTSS_ALPHAOP texture operations for stages that aren't
	mapped to a texture unit.

	* dlls/wined3d/state.c:
	wined3d: Don't do WINED3DTSS_COLOROP texture operations for stages that aren't
	mapped to a texture unit.

2007-01-04  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Fix the releasing of the wrong reference count in
	HTTP_CloseHTTPRequestHandle.
	lpwhr obviously already has a reference count of 0 because it is being destroyed.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Change the HTTP code to not assume that the connection will be closed
	at the end of every request.

	* dlls/wininet/http.c:
	wininet: Don't send callbacks in HTTP_CloseConnection if not connected.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use the Content-Length header to work out how much HTTP data there
	is left to be read
	and don't try to read any more than what is available.

	* dlls/wininet/http.c:
	wininet: Always send a Connection header set to "close" because that is what
	we expect for the moment.

	* dlls/wininet/ftp.c:
	wininet: Use correct types for socket functions to avoid warnings when compiling
	on BSD-based systems.

	* dlls/wininet/http.c:
	wininet: Fix HTTP redirects by reseting loop_next after one loop.

	* dlls/ntdll/threadpool.c:
	ntdll: Don't print a fixme in RtlQueueUserWorkItem if WT_EXECUTELONGFUNCTION
	is specified
	since that is what the current behaviour is tuned for.

2007-01-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Fix cut and paste error.

2007-01-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/write_msft.c:
	widl: Fix memory leaks.

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/utils.c:
	ddraw: Declare some functions static.

	* dlls/d3d9/directx.c:
	d3d9: Declare some functions static.

	* dlls/dmband/dmutils.c, dlls/dmband/dmutils.h:
	dmband: Declare some functions static.

2007-01-04  Rob Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Remove the custom thread pool implementation and use QueueUserWorkItem
	instead.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Pass WT_EXECUTELONGFUNCTION to QueueUserWorkItem since the
	function being called can sometimes take a long time to return and we
	almost always want a new thread to be created if there are no free
	threads available.

	* dlls/ntdll/tests/rtlstr.c:
	ntdll: Fix some test failures of RtlGUIDFromString and RtlStringFromGUID
	by setting the length correctly and by doing a case-insentive compare
	on the GUID string that is returned.

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: RtlInitUnicodeString on a string too long to fit in a UNICODE_STRING
	should set the it to have the maximum possible length and size rather
	than a modulus of the actual length.
	Fix test failures for RtlInitUnicodeString on Windows XP upwards.

	* dlls/ole32/rpc.c:
	ole32: Make sure to reset the message state if it has been changed in
	RPC_ExecuteCall before returning.
	Fix the hrFault parameter passed into the ClientNotify function in
	ClientRpcChannelBuffer_SendReceive so that it is correct in the case of
	messages dispatched with PostMessage.
	Only unmarshal ORPCTHAT for non-fault packets.

2007-01-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/mdi.c, dlls/user32/tests/msg.c, dlls/user32/win.c,
	  dlls/winex11.drv/window.c:
	user32: Fix some failures in the MDI message test.

	* dlls/user32/tests/msg.c:
	user32: Fix some failures of the ShowWindow test under Windows 2003.

2007-01-04  Kai Blin <kai.blin@gmail.com>

	* dlls/shlwapi/reg.c:
	shlwapi: Remove redundant check in assignment (Coverity).

2007-01-01  Michael Gardiner <mikegardiner@bigpond.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Stop StgOpenStorage from creating a file when it does not already exist.

2007-01-04  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Check subitem is valid before calling LISTVIEW_InvalidateSubItem().

	* dlls/comctl32/listview.c:
	comctl32: Remove unnecessary casts.

2007-01-04  Alexandre Julliard <julliard@winehq.org>

	* server/trace.c, tools/make_requests:
	make_requests: Grab status names from async_terminate calls too.

	* dlls/ntdll/sync.c, dlls/ntdll/thread.c, include/wine/server_protocol.h,
	  server/fd.c, server/named_pipe.c, server/protocol.def,
	  server/thread.c, server/thread.h, server/timer.c, server/trace.c,
	  tools/make_requests:
	server: Add a generic apc_call structure to make it easier to extend, and
	more type-safe.

	* dlls/ntdll/sync.c, include/wine/server_protocol.h, server/protocol.def,
	  server/thread.c, server/trace.c:
	server: Notify the server that an APC has completed in the next get_apc call.

	* server/thread.c:
	server: Make thread_apc into a real object.

2007-01-04  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* programs/regedit/Nl.rc:
	regedit: Update Dutch resources.

2007-01-04  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/tests/device.c, dlls/mshtml/olecmd.c, dlls/wined3d/device.c,
	  dlls/wined3d/state.c:
	Assorted spelling fixes.

	* dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Use '%d' to print GetLastError().

	* dlls/kernel32/tests/comm.c, dlls/kernel32/tests/module.c,
	  dlls/kernel32/tests/path.c, dlls/kernel32/tests/pipe.c,
	  dlls/kernel32/tests/time.c, dlls/kernel32/tests/virtual.c:
	kernel32/tests: Use '%d' to print GetLastError().

	* dlls/itss/protocol.c:
	itss: Fix spelling of the dwOrigin variables.

	* dlls/rsabase/tests/rsabase.c:
	rsabase/tests: Remove unneeded casts.

2007-01-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented 64 bit versions of EnumerateLoadedModules.

	* programs/winedbg/Makefile.in, programs/winedbg/dbg.y,
	  programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_module.c:
	winedbg: Added a maintenance command to load a given module (for debug purposes).

2007-01-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Dirtify the stream sources in DrawPrimitiveUP.

	* dlls/wined3d/state.c:
	wined3d: Move decoding the streams to their own inline function.

	* dlls/wined3d/device.c:
	wined3d: Catch NOP SetStreamSource changes.

	* dlls/wined3d/device.c:
	wined3d: Catch nop pixel shader changes.

	* dlls/wined3d/device.c:
	wined3d: Catch NOP vertex declaration changes.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Break the viewport out of the vertex declaration state.

2007-01-03  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Implement mouse GetObjectInfo on top of base class.

	* dlls/dinput/keyboard.c:
	dinput: Move keyboard to using new GetObjectInfo.

	* dlls/dinput/device.c:
	dinput: Implement GetObjectInfo[A|W] in base device class.

2007-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/tests/resource.c:
	kernel32: Don't try update version resources with invalid data, as it fails
	on Windows 2003.

2007-01-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix piAttributes NULL crash.

2007-01-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ddraw/utils.c:
	ddraw: Declare some functions static.

	* dlls/comdlg32/cdlg32.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/fontdlg.c:
	comdlg32: Declare some items static.

	* dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c:
	dinput: Declare some functions static.

	* tools/winedump/pe.c:
	winedump: Fix memory leak.

2007-01-03  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wininet/wininet_Nl.rc:
	wininet: Update Dutch resource.

	* dlls/mshtml/Nl.rc:
	mstml: Update Dutch resource.

2007-01-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptItemize. Get rid of the remaining tabs.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement and test ScriptStringGetOrder and ScriptString_pcOutChars.

	* dlls/usp10/usp10.c:
	usp10: Use macro functions for memory allocation and start checking for
	allocation failures.

	* dlls/usp10/usp10.c:
	usp10: Make the script cache accessible from a string analysis.

2007-01-03  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/tests/resource.c:
	kernel32: Be more verbose about the expected and received values for failures
	in the resource function tests.

	* dlls/ole32/ole2.c:
	ole32: Don't release pUnk in OleCreate if CoCreateInstance failed.

2007-01-04  Alexandre Julliard <julliard@winehq.org>

	* server/console.c:
	server: Avoid crash in alloc_console when the process has no parent.

2007-01-03  Thomas Kho <tkho@ucla.edu>

	* dlls/kernel32/tests/thread.c:
	kernel32: Add CreateRemoteThread remote thread conformance tests.

	* dlls/kernel32/tests/virtual.c:
	kernel32: Add VirtualAllocEx remote thread conformance tests.

2007-01-01  Reinhard Karcher <rkarcher@frey.de>

	* dlls/user32/comm16.c:
	user32: Speed improvement for 16bit comm support.
	The previous version of this patch wasn't applied correctly.

2006-12-30  Bernard Ladenthin <bernard@ladenthin.net>

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/stubs.c:
	oleaut32: Better OleIconToCursor stub.

2007-01-01  Reinhard Karcher <rkarcher@frey.de>

	* server/serial.c:
	server: Fix 0 timeout handling for serial I/O.

	* dlls/user32/comm16.c:
	user32: Speed improvement for 16bit comm support.

	* dlls/ntdll/serial.c:
	ntdll: Fix DTR and CTS controls in serial code.

2007-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Store resources to be updated in a tree.

2007-01-02  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarImp.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarPow.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarMod.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarIdiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarXor.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarOr.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarSub.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarDiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarMul.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAdd.

	* dlls/oleaut32/variant.c:
	oleaut32: Support for VT_DISPATCH in VarAnd.

	* dlls/oleaut32/variant.c:
	oleaut32: Add wrapper for dereferencing a VARIANT of type VT_DISPATCH and
	returning the VARIANT value.

2007-01-02  Lei Zhang <thestig@google.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/status.c:
	comctl32: Add initial tests for the status bar control.

2006-12-25  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/status.c:
	comctl32: statusbar: Fix GetRect return value bug.

2007-01-02  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Select a proper texture unit in LockRect and dirtify the state.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Remove d3ddevice_set_ortho.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c, dlls/wined3d/surface.c:
	wined3d: Move the projection matrix into its own state.

	* dlls/wined3d/state.c:
	wined3d: Break the lighting state out of the vertex decl.

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the world matrix to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the functionality of primitiveInitState to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a viewport state to the state table.

	* dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move decoding the vertex declaration to the vertexshader state handler.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Pass the user pointer strided structure via the device implementation.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d9/device.c,
	  dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Use the baseVertexIndex in the stateblock.

2007-01-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/thread.c:
	shlwapi: Use the appropriate constant for an uninitialized TLS check.

2007-01-02  Robert Reif <reif@earthlink.net>

	* dlls/dmusic/port.c:
	dmusic: Implement just enough of IDirectMusicPortImpl_GetFormat
	to keep Direct Sound from crashing from unitialized data.

2007-01-02  Christoph Bumiller <e0425955@stud3.tuwien.ac.at>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Sampler variables wrongly named 'shader'.

	* dlls/ddraw/device.c:
	ddraw: Fix the AddViewport thunk.

2007-01-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Fix the calculation of message_state->prefix_data_len in two places
	where it would come out negative.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: A NULL IfSpec in RpcServerUnregisterIf should remove all interfaces,
	not crash.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix _nroffuncs to return the correct number of functions by taking
	into account inherited interfaces.

2007-01-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/process.c:
	msvcrt: execl fix when no args are given (reported by Louis Lenders).

2007-01-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/locale.c:
	kernel32: Remove a line that was supposed to be deleted by the previous patch.

2007-01-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Document ScriptFreeCache, ScriptGetFontProperties, ScriptStringFree
	and ScriptGetCMap.

	* dlls/usp10/usp10.c:
	usp10: Downgrade some more FIXME's to TRACE's.

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptStringValidate.

	* dlls/kernel32/kernel32.spec, dlls/kernel32/version.c:
	kernel32: Add a stub implementation for TermsrvAppInstallMode.

	* dlls/gdi32/font.c, include/wingdi.h:
	gdi32: Implement GetCharWidthI.

2007-01-01  Christoph Bumiller <e0425955@stud3.tuwien.ac.at>

	* dlls/wined3d/vertexbuffer.c:
	wineded3: dirtyend set to more than resource size.

2007-01-01  Nick Burns <adger44@hotmail.com>

	* dlls/wined3d/state.c:
	wined3d: Fix point handling.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Fix race condition in drvclose.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/treeview.c, dlls/ddraw/main.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c:
	Use GetDC instead of CreateDC where possible.

	* tools/make_makefiles:
	make_makefiles: Properly skip dlls marked with MKDLL_SKIP.

	* dlls/gdi32/mfdrv/graphics.c, dlls/gdi32/mfdrv/metafiledrv.h,
	  dlls/gdi32/mfdrv/objects.c:
	gdi32: Avoid leaking a handle in MFDRV_ExtSelectClipRgn.

2007-01-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Declare function static.

	* tools/wrc/readres.c:
	wrc: Declare some variables static const.

2007-01-01  Kai Blin <kai.blin@gmail.com>

	* dlls/dnsapi/query.c:
	dnsapi: Fix entering the success case (Coverity).

	* dlls/imagehlp/access.c:
	imagehelp: Remove unused if() check in error path.

	* tools/wrc/translation.c:
	wrc: Fix comparison typo (Coverity).

2006-12-31  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/tests/device.c, dlls/d3d8/tests/surface.c,
	  dlls/d3d8/tests/texture.c, dlls/d3d8/tests/volume.c:
	d3d8: Fix failing tests on windows, when no 3d hardware acceleration is
	available.

	* dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/texture.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/tests/volume.c:
	d3d9: Fix failing tests on windows, when no 3d hardware acceleration is
	available.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	Revert "wined3d: Simplify the get_write_mask and get_swizzle functions."
	This reverts commit a9f658f6a68fbe53bcf30ab0329e5ff91451bf30.

2006-12-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c:
	user32: Initialize clip rectangle on first use.

	* dlls/wined3d/device.c:
	wined3d: Clip mouse after resolution change while creating default swap chain.

2006-12-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/ntdll/relay.c:
	ntdll: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

	* dlls/wnaspi32/winaspi16.c:
	wnaspi32: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.

2006-12-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmband/band.c:
	dmband: Remove unused file-static variable.

2006-12-29  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringOut.

2006-12-28  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/resource.c, dlls/kernel32/tests/resource.c:
	kernel32: Remove incorrect and incomplete implementation of BeginResourceUpdate.

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/resource.c:
	kernel32: Add a short test for Begin/EndUpdateResource.

2007-01-02  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add emtpy vertex declaration and related states to the state table.

	* dlls/wined3d/state.c:
	wined3d: Add stub handlers for world matrices 1-255.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Put the decoded strided data structure into the device.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTS_MODELVIEW to the state table.

2007-01-02  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DDevice_ApplyStateChanges.

2007-01-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTS_TEXTURETRANSFORMFLAGS to the state table.

2007-01-02  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Reset both AT_SYSINFO and AT_SYSINFO_EHDR when one of them conflicts.

2007-01-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi32/font.c:
	gdi32: Remove redundant debug channel, use the default one instead.

2007-01-02  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/file.c:
	ntdll: Remove an unnecessary NULL check.

2007-01-02  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/kernel32.spec, dlls/kernel32/path.c, include/winbase.h:
	kernel32: Implement CopyFileWithProgress.

2007-01-01  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Remove get_drawable.

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Hu.rc, programs/winecfg/It.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Pt.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/x11drvdlg.c:
	winecfg: Remove desktop double buffering option.

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Remove desktop double buffering option.

2006-12-30  Reinhard Karcher <rkarcher@frey.de>

	* dlls/ntdll/directory.c:
	ntdll: Fix NtQueryDirectoryFile handling of short names on vfat filesystems.

2006-12-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Make more ShowWindow tests pass under Wine.

	* dlls/kernel32/tests/locale.c:
	kernel32: Make the locale test pass without errors under XP SP2.

	* dlls/ntdll/file.c:
	ntdll: Map ESPIPE to STATUS_ILLEGAL_FUNCTION.

2006-12-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/msi/tests/install.c:
	msi/tests: Remove test directory after the files have been deleted.

2006-12-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Run tests on NT4 again.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Moved ok-statement to the appropriate place.

	* dlls/kernel32/tests/thread.c:
	kernel32/tests: Move USE_EXTENDED_PRIORITIES outside the if-statement.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Skip EnumPrintersW tests when not implemented.

2006-12-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Fix the regression caused by a previous change.

	* dlls/user32/tests/msg.c:
	user32: Update the ShowWindow test to pass cleanly under Windows 2000.

2007-01-01  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makedll.rules.in:
	configure: Use the correct ar tool when building Mingw import libraries.

	* aclocal.m4, configure.ac:
	configure: Added a generic macro for checking for Mingw programs.

2006-12-29  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c:
	ole32: Add tests for channel hooks.

	* include/objbase.h:
	include: Add function declarations for CoAllowSetForegroundWindow and
	CoRegisterChannelHook to objbase.h.

2006-12-29  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Simplify the get_write_mask and get_swizzle functions.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Cleanup & merge pshader_get_input_register_swizzle() and
	vshader_program_add_input_param_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_get_input_register_swizzle().

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Cleanup & merge pshader_get_write_mask() and
	vshader_program_add_output_param_swizzle().

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cleanup shader_glsl_get_output_register_swizzle().

	* dlls/wined3d/baseshader.c:
	wined3d: Remove dead code in shader_get_registers_used().
	As spotted by Christoph Bumiller, these branches are now never
	reached. Also, at least in the case of WINED3DSIO_TEXM3x3SPEC and
	WINED3DSIO_TEXM3x3VSPEC the old code was not quite correct, since we
	can lookup rather than guess the texture type these days.

2006-12-29  Frank Richter <frank.richter@gmail.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: listview: Fix getting user params and subitems.
	When querying a listview subitem for the user param, the main item's
	user param is returned. Also, when a subitem is custom-drawn, the main
	item's user param is passed along.

2006-12-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11drv.h:
	winex11drv: Make dxgrab global.

2006-12-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/keyboard.c:
	dinput: Move keyboard to using new EnumObjects from base class.

2006-12-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Factor out script cache handling.

2006-12-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c, server/Makefile.in, server/mach.c,
	  server/process.h, server/ptrace.c:
	server: Implement process control using Mach primitives for Mac OS.
	With help from Ken Thomases.

	* configure, configure.ac, include/config.h.in, loader/pthread.c:
	loader: Use the Mach thread port as thread id on Mac OS.

	* server/process.c, server/process.h, server/ptrace.c, server/request.c:
	server: Add hooks to support process tracing mechanisms other than ptrace.

	* server/ptrace.c, server/thread.c, server/thread.h:
	server: Split get_thread_from_pid to allow lookups by tid or pid only.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/winejoystick.drv/Makefile.in, dlls/winejoystick.drv/joystick.c,
	  dlls/winejoystick.drv/winejoystick.drv.spec, dlls/winmm/joystick.c,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/joystick/joystick.c,
	  dlls/winmm/joystick/joystick.drv.spec, programs/winecfg/libraries.c,
	  tools/winapi/win32.api:
	joystick.drv: Renamed the dlls/winmm/joystick directory to dlls/winejoystick.drv.

	* .gitignore, tools/make_makefiles:
	make_makefiles: List test directories explicitly in .gitignore.

	* .gitignore, tools/make_makefiles:
	make_makefiles: In .gitignore, explicitly list files that we know are generated
	instead of using wildcards.

	* Make.rules.in:
	Make.rules: Be more specific in make clean, only clean targets that we have
	created.

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Avoid sizeof in traces.

	* dlls/d3d8/tests/device.c:
	d3d8/tests: Avoid sizeof in traces.

2006-12-28  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Report actual supported input wave formats.
	Also, added some output formats that Core Audio ought to be able to handle.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement CoreAudio_wiAudioUnitIOProc, the input callback.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widStart.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widStop.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Changed widReset to stop the audio unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add mechanism for cross-thread call of
	widHelper_NotifyCompletions.
	wodSendNotifyInputCompletionsMessage sends the kWaveInNotifyCompletionsMessage
	to the message thread, which calls widHelper_NotifyCompletions.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add widHelper_NotifyCompletions.
	It scans for completed input wavehdrs, removes them from the queue,
	and notifies the application that they're done.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Store the device ID in the WINE_WAVEOUT structure.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Allocate/deallocate audio buffers in widOpen/widClose.

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Do additional setup in AudioUnit_CreateInputUnit.
	It now returns in an output parameter the frame count that the AU will use.
	Also, initialize the Audio Unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widDevInterfaceSize and widDevInterface.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widReset.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widAddBuffer.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Implement widOpen and widClose.

	* dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Add AudioUnit_CreateInputUnit to create an input audio unit.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Add stub implementation of CoreAudio_wiAudioUnitIOProc.
	It will serve as the input callback called when our Audio Unit has sound
	data available.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Initial implementation of widGetDevCaps.

	* dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec:
	winecoreaudio: Initial stub implementation of audio input support.

2006-12-23  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d8/tests/device.c:
	d3d8: Don't report Shader Model 2.0 or higher.

2006-12-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty transform states to the state table.

	* dlls/wined3d/surface.c:
	wined3d: Do not setup states for unlocking if unlocking is disabled.

2006-12-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/sane.ds/ui.c:
	sane.ds: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL.
	With grateful acknowledgement to Marcus Meissner.

2006-12-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Fix wglGetProcAddress typo.

2006-12-28  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Release critical section before warping mouse.

2006-12-28  Colin Pitrat <colin.pitrat@bull.net>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml: nextNode and reset functions.

2006-12-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/shdocvw/Makefile.in:
	shdocvw: IDL_TLB_SRCS should contain the source file, not the target.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	Revert "wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4."
	This reverts commit 045975b1f439049da9405a8defbad82a39710f49.

2006-12-23  Robert Reif <reif@earthlink.net>

	* tools/winedump/pe.c:
	winedump: Fix crash on delayed import section.

2006-12-28  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add some tests for the running object table.
	The tests show the behaviour when the IROTData interface is not
	available from the moniker. They also show the flags that are accepted
	into IRunningObjectTable::Register.

	* dlls/ole32/moniker.c:
	ole32: Contrary to MSDN, IROTData doesn't need to be implemented for a moniker
	to be usable with the running object table.
	If IROTData isn't available, fall back to a path that uses the display
	name and the clsid of the moniker to generate the comparison data.

	* dlls/ole32/moniker.c:
	ole32: Only call IROTData::GetComparisonData once, like native does.

	* dlls/ole32/moniker.c:
	ole32: Use IMoniker::GetTimeOfLastChange to attempt to retrieve the last-modified
	time for the ROT entry.
	However, fall back to CoFileTimeNow if it fails.

	* dlls/ole32/moniker.c:
	ole32: Use the reduced forms of monikers for comparison in the running object
	table.

	* dlls/ole32/compositemoniker.c:
	ole32: Execute Reduce using the moniker's vtable in CreateCompositeMoniker as
	the moniker isn't necessarily a composite moniker.

	* dlls/ole32/moniker.c:
	ole32: ROTFLAGS_REGISTRATIONKEEPSALIVE and ROTFLAGS_ALLOWANYCLIENT are legal
	to be used together in RunningObjectTable_Register.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add a simple test for XMLHTTP.

2006-12-27  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Move mouse to using new EnumObjects from base class.

	* dlls/dinput/device.c:
	dinput: Implement EnumOjects[A|W] in the base device class.

	* dlls/dinput/mouse.c:
	dinput: mouse: Copy and modify default data format.

	* dlls/dinput/keyboard.c:
	dinput: Remove MsgWaitForMultipleObjects calls.

2006-12-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c:
	opengl32: Add OpenGL 2.1 support and more extensions.

	* dlls/opengl32/wgl.c:
	wgl: Fix wglGetProcAddress bug.

2006-12-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix wglGetPixelFormatAttribiv bug.

2006-12-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Create samplers for all 1.x instructions that sample.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: The default debug channel for arb_program_shader.c & glsl_shader.c
	already is d3d_shader.

	* dlls/wined3d/device.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move set_glsl_shader_program() to glsl_shader.c.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Where possible, avoid using D3DCOLORTOGLFLOAT4.

2006-12-27  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/usp10.c:
	usp10: Downgrade fixme's to trace's with comments.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: SafeArrayAllocData should succeed when cbElements is 0.

	* dlls/ole32/tests/clipboard.c:
	ole32: Output the HRESULT for clipboard tests that fail.

	* dlls/advapi32/tests/registry.c:
	advapi32: Change the test for the type parameter of RegQueryValueExA to only
	run on Win9x, since the value is set to a random value on NT.

2006-12-28  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Detect out of tree builds made from an unclean source tree.

	* .gitignore, dlls/.gitignore, programs/.gitignore,
	  programs/winetest/.gitignore, tools/make_makefiles:
	make_makefiles: Merge the generated gitignores in dlls and programs into the
	top-level one.

2006-12-27  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Makefile.in, dlls/.gitignore, loader/.gitignore,
	  loader/Makefile.in, programs/.gitignore, programs/Makefile.in,
	  programs/winedbg/.gitignore, server/.gitignore, tools/.gitignore,
	  tools/make_makefiles, tools/widl/.gitignore,
	  tools/winebuild/.gitignore, tools/winedump/.gitignore,
	  tools/winegcc/.gitignore, tools/wmc/.gitignore, tools/wrc/.gitignore:
	make_makefiles: Generate the top-level .gitignore file.
	Add a PROGRAMS variable in some makefiles to make things easier.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/rpc.c:
	ole32: Marshal the ORPCTHAT structure prefixed to the server data.
	Unmarshal the data on the client side (during
	ClientChannelBuffer_SendReceive) and call ClientNotify.

2006-12-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comdlg32/tests/printdlg.c, dlls/ddraw/ddraw.c,
	  dlls/msvcrt/except.c, dlls/netapi32/tests/apibuf.c:
	janitorial: In multiline strings there is no need for '\' at the end of
	the lines.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: In multiline strings there is no need for '\' at the end of
	the lines.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: In multiline strings there is no need for '\' at the end
	of the lines.

	* dlls/kernel32/tests/atom.c, dlls/kernel32/tests/codepage.c,
	  dlls/kernel32/tests/heap.c, dlls/kernel32/tests/path.c:
	kernel32/tests: In multiline strings there is no need for '\' at the end of
	the lines.

2006-12-27  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/marshal.c:
	ole32: Message filters aren't used in the test_call_from_message test, so
	remove the call to CoRegisterMessageFilter.

2006-12-26  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/input.c:
	user32: Silence tests in default debug level.

2006-12-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/cmd/builtins.c:
	cmd: Fix 'copy foo bar/' which gave access denied errors.

2006-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix failing test.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Remove failing tests.

2006-12-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/generic.ppd:
	wineps.drv: Remove surious null byte in generic.ppd.

	* dlls/atl/Makefile.in, dlls/atl/rsrc.rc, dlls/itss/Makefile.in,
	  dlls/itss/rsrc.rc, dlls/mshtml/Makefile.in, dlls/mshtml/rsrc.rc,
	  dlls/urlmon/Makefile.in, dlls/urlmon/rsrc.rc, tools/makedep.c:
	makedep: Add support for magic comments in .rc files so we can generate proper
	dependencies for them.

2006-12-24  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Fix VarMod(VT_DECIMAL) test by properly initializing the DECIMAL
	to use.
	Fix Wine handling of VT_DECIMAL in VarMod.

2006-12-24  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptStringGetLogicalWidths.

2006-12-24  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix all failing tests on Windows and Wine.

	* dlls/usp10/usp10.c:
	usp10: Reduce multiple assignments to a single memset in ScriptItemize.

2006-12-24  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d8/tests/device.c, dlls/d3d9/device.c,
	  dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	d3d: GetStreamSource on a stream with NULL data isn't an error.

2006-12-24  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/monthcal.c:
	comctl32: MonthCalendar - Fix highlighting of current date.

2006-12-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Skip NULL textures rather than non-NULL ones, assign -1 to skipped
	stages.
	Downgrade a FIXME to a WARN.

2006-12-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/utility.c:
	wininet: Get rid of ASYNC_FUNC enum.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPFINDNEXTW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPRENAMEFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPREMOVEDIRECTORYW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPDELETEFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPGETFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPOPENFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPGETCURRENTDIRECTORYW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPFINDFIRSTFILEW request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPCREATEDIRECTORY request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPSETCURRENTDIRECTORY request.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in FTPUTFILE request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in INTERNETREADFILEEXA request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in INTERNETOPENURLW request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Remove not used HTTPOPENREQUESTW request.

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use proc instead of enum in HTTPSENDREQUESTW request.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	wininet: Use proc instead of enum in SENDCALLBACK request.

2006-12-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Restore texture bindings in the FBO code.

	* dlls/wined3d/drawprim.c:
	wined3d: Copy the depth buffer after all dirty states are applied.

2006-12-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/state.c:
	wined3d: D3DRS_BLENDFACTOR should not influence glBlend(TRUE/FALSE).

	* dlls/wined3d/device.c:
	wined3d: Do not mark texture stages above MAX_TEXTURES dirty.

2006-12-25  Jacek Caban <jacek@codeweavers.com>

	* .gitignore, Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/itss/tests/Makefile.in, dlls/itss/tests/protocol.c,
	  dlls/itss/tests/rsrc.rc, programs/winetest/Makefile.in,
	  programs/winetest/winetest.rc:
	itss: Added test of protocol.

	* dlls/itss/Makefile.in, dlls/itss/protocol.c:
	itss: Added ITS protocol implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added IHTMLFrameBase2 declaration.

2006-12-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Check lParam of the HCBT_MINMAX hook message in ShowWindow tests.

	* dlls/msvcrt/main.c:
	msvcrt: Make an internal function static, avoid a prototype.

2006-12-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/atl/.gitignore, dlls/mshtml/.gitignore,
	  dlls/ole32/.gitignore, tools/make_makefiles:
	make_makefiles: Automatically add IDL header targets to the .gitignore file.

2006-12-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix a failing test.

2006-12-23  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Clarify OpenGL error codes.

2006-12-23  Patrik Stridvall <patrik@stridvall.se>

	* dlls/user32/class.c, dlls/user32/spy.c, dlls/user32/user_private.h:
	user32: Show the GCL{,P}_* constant names in debug messages.

	* dlls/secur32/ntlm.c:
	secur32: Use constants instead of hardcoded values.

2006-12-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/Makefile.in, dlls/make_dlls, tools/make_makefiles:
	dlls: Merged the make_dlls script into the global make_makefiles.

2006-12-23  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/olepicture.c:
	oleaut32: Fix tests for redundant headers in OLEPicture load from IStream.

2006-12-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/Makefile.in, dlls/itss/itss.c, dlls/itss/itsstor.h,
	  dlls/itss/protocol.c:
	itss: Added ITSProtocol stub implementation.

2006-12-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/itss/itss.c, dlls/itss/itsstor.h, dlls/itss/moniker.c,
	  dlls/itss/storage.c:
	itss: DllCanUnloadNow code clean up.

	* dlls/itss/Makefile.in, dlls/itss/itss.c, dlls/itss/itss.inf,
	  dlls/itss/regsvr.c, dlls/itss/rsrc.rc, include/wine/itss.idl:
	itss: Move registration code to inf file and add missing registry.

	* dlls/itss/itss.c, dlls/itss/regsvr.c, include/wine/itss.idl:
	itss: Rename CLSID_ITSProtocol to CLSID_MSITStore.
	ITSProtocol is a different object.

	* dlls/itss/itss.spec:
	itss: DllUnregisterServer is not a stub.

2006-12-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptString_pLogAttr.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Match output of WinXP for ScriptGetProperties.

	* dlls/usp10/usp10.c:
	usp10: Improve the stub for ScriptBreak.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec,
	  include/usp10.h:
	usp10: Implement ScriptString_pSize.

2006-12-23  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix a crash when executing the VarAnd test with an old version
	of oleaut32.dll.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix the VarPow tests for older versions of oleaut32.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Performing a COM call from within the processing of a sent message
	during a wait for completion of another COM call is not allowed.
	Add a test for the behaviour where RPC_E_CANTCALLOUT_ININPUTSYNCCALL is returned.

	* dlls/ole32/compobj.c:
	ole32: Call the MessagePending function for message filters.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Track the pending call count so that the correct call type can be passed
	to the message filter HandleInComingCall function.

	* dlls/ole32/oleproxy.c:
	ole32: Allow the marshaling/unmarshaling of NULL interfaces for IClassFactory.

2006-12-22  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/string.c:
	msvcrt: Add function _mbsspnp.

2006-12-22  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput: AddRef and Release parent DirectInput class.

2006-12-22  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.28.

----------------------------------------------------------------
2006-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/winpos.c:
	user32: Add a message test for various ShowWindow() calls, fix some failures.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub for GetCORSystemDirectory.

2006-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Fix a typo.

2006-12-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspoool/tests: Build the name of the local print server in a separate function.

	* dlls/winspool.drv/tests/info.c:
	winspoool/tests: Rename unclear string.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Rename unclear string.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fix copy+paste typo.

2006-12-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Improve loading document detection in AsyncOpen.

	* dlls/mshtml/nsio.c:
	mshtml: Use Gecko's AsyncOpen if URI is has no nsIWineURI interface.

2006-12-21  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi32/Makefile.in, dlls/gdi32/freetype.c:
	gdi32: Extract the constituent TrueType files from Mac suitcase fonts into
	the user's caches directory
	and use these instead of the original suitcase.

2006-12-21  Francois Gouget <fgouget@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix handling of 'CopyFiles=@file'.

2006-12-21  Ken Thomases <ken@codeweavers.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Fixed a problem with enumerating network interfaces.
	Keep increasing the buffer until the returned length is more than two
	records smaller than the buffer we provided.

2006-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/cdrom.c:
	ntdll: Added support for physically ejecting devices on Mac OS.

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c, server/mapping.c:
	ntdll: File positions should be aligned to sector boundaries in PE loader.

2006-12-20  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Don't use full path for executable in tests.

2006-12-21  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Replace pthread mutex with OSSpinLock.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Move a memset out of a mutex-guarded section.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Merge wodReset and wodHelper_Reset.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Change to faster non-recursive mutex.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Push notify of completions from render callback to message thread.
	Rather than have the Audio Unit render callback traverse the queue of wave
	headers looking for complete ones, and sending a message to the message thread
	for each one it finds, just send one message to tell the message thread to do
	that work itself.  The render callback is called in a real-time priority
	thread and is expected to return as quickly as possible.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Remove more mutexes from around Audio Unit calls.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Report when the render callback is just providing silence.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Lift mutex lock/unlock out of wodHelper_PlayPtrNext to caller.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Leave audio unit running, except when waveout device paused.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Eliminate unnecessary variable, unreachable code, unused retval.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Inline & eliminate the specializations of wodHelper_BeginWaveHdr.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Specialize wodHelper_BeginWaveHdr for its two callers and
	simplify.
	wodHelper_PlayPtrNext is only called when state == WINE_WS_PLAYING.  Also, it
	clears dwPartialOffset itself.
	wodWrite only calls wodHelper_BeginWaveHdr[Write] with a non-NULL lpWaveHdr
	parameter.  wodWrite is not called from the Audio Unit render callback, so it
	can use Wine debug channels.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Simplify handling of BEGIN+ENDLOOP wave headers.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Extract wodHelper_CheckForLoopBegin() from
	wodHelper_BeginWaveHdr().
	This refactoring prepares the ground for subsequent refactoring of
	wodHelper_BeginWaveHdr.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Create port for sending messages to the callback thread only once.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Control the fprintf's by the Wine debug channel on/off settings.

2006-12-21  Günther Brammer <GBrammer@gmx.de>

	* dlls/ddraw/tests/dsurface.c:
	ddraw: Add a test for IDirectDrawSurface_SetColorKey.

2006-12-20  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Actually create the Wine fonts key if it doesn't exist.

2006-12-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/kernel32/profile.c:
	kernel32: Suppress an unneeded warning.

2006-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: VarBstrFromCy - Remove use of sprintfW by converting a CY
	into a DECIMAL instead of a double as an intermediate step.

2006-12-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/directx.c, dlls/d3d9/tests/device.c,
	  dlls/wined3d/directx.c:
	d3d: Fix adapter mode enumeration and filtering.

2006-12-20  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/device.c:
	dinput: Drop magic int.

	* dlls/dinput/data_formats.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Set the correct size for the old dinput joystick.
	This also reverts my previous patch as this is the real cause for the
	problems with Grand Prix Legends.

2006-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Reinstall the nvrc texture unit mapping.

	* dlls/wined3d/device.c:
	wined3d: Catch nop pixel shader changes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add pixel shaders to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Catch nop sampler changes.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move samplers to the state table.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty sampler entries to the state table.

	* dlls/wined3d/device.c:
	wined3d: Catch nop SetTextureStageState calls.

	* dlls/wined3d/state.c:
	wined3d: Make WINED3DTSS_CONSTANT a nogl state.

	* dlls/wined3d/state.c:
	wined3d: Make a WINED3DTSS_RESULTARG stub.

	* dlls/wined3d/state.c:
	wined3d: Make WINED3DTSS_TEXTURETRANSFORMFLAGS a nogl state.

	* dlls/wined3d/state.c:
	wined3d: Add a WINED3DTSS_BUMPENVLOFFSET stub.

	* dlls/wined3d/state.c:
	wined3d: Add a WINED3DTSS_BUMPENVSCALE stub.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTSS_TEXCOORDINDEX to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DTSS_ALPHAOP to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/state.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move WINED3DTSS_COLOROP to the state table.

	* dlls/wined3d/basetexture.c:
	wined3d: Do not enable the texture dimensions in BindTexture.

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add empty texture stage states to the state table.

	* dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c:
	wined3d: Temporary disable nvrc junk texture skipping.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/regsvr.c:
	shell32: Don't hardcode the system32 directory in registered classes.

	* loader/kthread.c:
	loader: Try to detect glibc 2.3 without NPTL or TLS and print a warning.

	* dlls/kernel32/tests/module.c, dlls/ntdll/loader.c:
	ntdll: Fix the libdl refcount when loading the same builtin twice.

2006-12-20  Francois Gouget <fgouget@codeweavers.com>

	* dlls/kernel32/tests/module.c:
	kernel32/tests: Test loading and unloading of builtin dlls.

2006-12-20  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: ws_sockaddr_u2ws should zero the sockaddr_in.sin_zero field.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* include/guiddef.h, include/windef.h, include/wine/debug.h,
	  include/wine/test.h, include/winnt.h:
	include: Get rid of the WINE_NO_LONG_AS_INT ifdefs.

	* programs/winedbg/Makefile.in, programs/winedbg/be_i386.c,
	  programs/winedbg/break.c, programs/winedbg/dbg.y,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/memory.c, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c:
	winedbg: Win64 printf format fixes.

	* programs/winedbg/be_i386.c, programs/winedbg/debugger.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/tgt_minidump.c:
	winedbg: Fixed a few data types.

2006-12-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Warp mouse in exclusive cooperation mode only.

	* dlls/dinput/mouse.c:
	dinput: Use GetCursorPos() to calculate relative mouse movements.

2006-12-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Send a causality ID in the ORPCTHIS header for a call.
	Use the causality ID to determine whether this is a top-level or a
	nested (called-back) call for the purposes of IMessageFilter::HandleInComingCall.

	* dlls/ole32/tests/marshal.c:
	ole32: Reset the message filter at the end of the message filter test.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole32: Pass in the IID and IUnknown* of the object being executed to the server
	notification and message filter functions.

	* dlls/ole32/rpc.c, dlls/ole32/tests/marshal.c:
	ole32: Call the message filter for incoming calls.

	* dlls/ole32/rpc.c:
	ole32: Call ServerNotify for channel hooks.
	Store the SChannelHookCallInfo structure in the message state.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ole32.spec, dlls/ole32/rpc.c:
	ole32: Implement CoRegisterChannelHook and call channel hook methods on the
	client side.

	* dlls/ole32/rpc.c:
	ole32: Marshal the ORPCTHIS structure prefixed to the client data when doing
	ORPC calls.
	This is done by putting the ORPCTHIS data into the buffer when calling
	IRpcChannelBuffer::GetBuffer on the client side and then storing the
	amount we increased the buffer in a structure stored in the Handle
	field. This is done to present the correct Buffer pointer to the proxy
	so that it writes its data after the ORPCTHIS data.
	Unmarshal the data on the server side (during RPC_ExecuteCall) and make
	sure the data is consistent according to NDR rules. Also add several
	checks on the unmarshaled data that are specified by the DCOM draft
	specification.

2006-12-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c:
	wined3d: Allow wined3d to handle multiple render targets.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Allow the FBO code to handle multiple render targets.

	* dlls/wined3d/device.c:
	wined3d: Move storing the render target from ActiveRender to SetRenderTarget.
	Use the render target index rather than hardcoding 0.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h:
	wined3d: Allow the device to store multiple render targets.

2006-12-19  Hans Leidekker <hans@it.vu.nl>

	* include/winnt.h, tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.man.in:
	winedump: Start dumping .NET specific bits from PE executables.

2006-12-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Fixed typo in map_image.

2006-12-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: pbuffer detection.

2006-12-19  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Don't crash when called with a NULL gl context.

2006-12-19  Huw Davies <huw@codeweavers.com>

	* dlls/gdi32/freetype.c:
	gdi32: Improve the fontconfig filtering hack so that Mac suitcase fonts get
	through.

2006-12-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/gdiobj.c:
	gdi32: Remove unused function.

2006-12-19  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/usrmarshal.c:
	ole32: Fix the HMETAFILEPICT user marshaling test to use the size
	derived from the return value of HMETAFILEPICT_UserMarshal instead of
	the value returned by HMETAFILEPICT_UserSize, as the latter
	over-estimates the size on Windows.
	Remove some unnecessary casts.

2006-12-19  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user32/tests/msg.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c:
	user32: Extend the support for SWP_STATECHANGED for all windows.

2006-12-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DRS_STIPPLEPATTERNxy.

2006-12-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c:
	wined3d: Fix a function name.

	* dlls/wined3d/state.c:
	wined3d: Add missing render state function.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Catch nop render state changes.

	* dlls/wined3d/device.c:
	wined3d: Move render state applying to drawprim.

2006-12-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add the state dirtification infrastructure.

2006-12-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* configure, configure.ac, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/string.c, include/config.h.in:
	msvcrt: Add _atoldbl.

2006-12-19  Alexandre Julliard <julliard@winehq.org>

	* configure:
	configure: Re-generated with autoconf 2.61.

2006-12-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	oleaut32: Bypass conversion to string in R4/R8 -> DECIMAL conversion.

2006-12-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/tests/win.c, dlls/winex11.drv/mouse.c:
	winex11drv: Return cached cursor_pos in GetCursorPos().

2006-12-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/ws2_32/socket.c:
	ws2_32: Implement the SIO_ADDRESS_LIST_QUERY ioctl.

2006-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add a minimal PE image that XP is able to load.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/install.c:
	msi: Enable cab compression and delete any resulting cabs using SHFileOperation.

	* dlls/msi/tests/install.c:
	msi: Run the install tests from a temporary directory.

2006-12-15  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringCPtoX.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringXtoCP.

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptStringFree.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptStringAnalyse.

2006-12-18  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/volume.c:
	d3d9: Handle volume container in d3d9.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c:
	d3d9: Handle surface container in d3d9.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/volume.c:
	d3d8: Handle volume container in d3d8.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/tests/device.c:
	d3d8: Handle surface container in d3d8.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/directx.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/tests/device.c:
	d3d9: Fix implicit swap chain refcounting.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit swap chain destruction in
	IWineD3DDevice.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c, dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c:
	d3d9: Fix implicit surface refcounting.

	* dlls/wined3d/volume.c, include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DVolume_GetContainerParent.

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Remove IWineD3DSurface_GetContainerParent.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Handle volume refcount forwarding in d3d9.

	* dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/surface.c, dlls/d3d9/tests/device.c, dlls/d3d9/texture.c:
	d3d9: Handle surface refcount forwarding in d3d9.

	* dlls/wined3d/device.c:
	wined3d: Call the depth stencil destroy callback function.

2006-12-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Update the text control when the selection path changes.

	* dlls/msi/events.c:
	msi: Only cleanup event subscriptions of the dialog being closed.

2006-12-17  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c, dlls/dinput/tests/Makefile.in,
	  dlls/dinput/tests/device.c:
	dinput: Make mouse use axis mode flag set in base class. Add tests.

	* dlls/dinput/device.c:
	dinput: Add handling of AXISMODE property to base device object.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Zero out returned information struct.

	* dlls/dinput/keyboard.c:
	dinput: Don't return non existent keys.

2006-12-17  Rob Shearman <rob@codeweavers.com>

	* dlls/kernel32/heap.c:
	kernel32: Protect global alloc functions against integer overflows on the
	size parameter.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix SetSize for HGLOBAL streams in the case of being out-of-memory.

	* dlls/ole32/ole32.spec, dlls/ole32/tests/usrmarshal.c,
	  dlls/ole32/usrmarshal.c:
	ole32: Implement HMETAFILE and HMETAFILEPICT user marshaling functions and
	add tests for these.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c,
	  dlls/ole32/tests/usrmarshal.c:
	ole32: Move the user marshal tests to usrmarshal.c.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Free the resource allocated by InitializeSecurityContext when the
	connection is closed.

	* dlls/ole32/usrmarshal.c:
	ole32: Add documentation for the user marshaling functions.

	* dlls/ole32/datacache.c:
	ole32: Support reading and writing custom clipformats in the data cache.

2006-12-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/pe.c:
	winedump: Remove a redundant ';'.

	* tools/winedump/pe.c:
	winedump: Fix a couple of typos.

2006-12-17  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Make tests run on win9x and NT4 again.

	* dlls/user32/tests/monitor.c:
	user32/tests: Make sure the tests run on NT4 again.

2006-12-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* server/token.c:
	server: Cast-qual warnings fix.

	* server/object.c:
	server: Cast-qual warnings fix.

2006-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Define __CxxLongjmpUnwind for i386 only.

2006-12-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winhelp/hlpfile.c:
	winhelp: Cast-qual warnings fix.

	* programs/winecfg/theme.c:
	winecfg: Cast-qual warning fix.

	* programs/progman/group.c:
	progman: Cast-qual warnings fix.

	* dlls/version/tests/info.c:
	version/tests: Write-strings warning fix.

2006-12-15  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/ddraw_thunks.c,
	  dlls/ddraw/main.c:
	ddraw: IDirectDraw3 should use its own ref count variable.

	* dlls/ddraw/main.c:
	ddraw: Initialize the IDirectDraw3 vtable.

2006-12-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvDataPort.

2006-12-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Remove some no longer used libcurses checks.

2006-12-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/ddraw/tests/ddrawmodes.c, dlls/wined3d/device.c:
	wined3d: When changing display modes clip cursor to the requested display size.

2006-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/gdi32/opengl.c, dlls/winex11.drv/opengl.c:
	winex11.drv: Avoid grabbing syslevel locks in the wrong order.

2006-12-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Implemented __CxxLongjmpUnwind.

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/cppexcept.h:
	msvcrt: Make pointers to read-only exception descriptors const.

2006-12-15  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/fdi.c:
	cabinet: Close the opened file handle even in error cases.

2006-12-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add a stub implementation for SetupPromptReboot.

2006-12-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/edit.c:
	user32: Center the context menu if it was activated via VK_APPS like Windows
	does.

	* dlls/user32/message.c, dlls/user32/tests/msg.c,
	  dlls/winex11.drv/keyboard.c:
	user32: Add support for the VK_APPS (Menu) key.

	* dlls/ddrawex/ddrawex_private.h, dlls/ddrawex/main.c:
	ddrawex: Avoid not necessary casts.

	* dlls/ddraw/ddraw_thunks.c:
	ddraw: Fix warnings.

2006-12-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/tests/ntlm.c:
	secur32/tests: Cast-qual warnings fix.

2006-12-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Clean up SetRenderState.

	* dlls/d3d8/tests/device.c, dlls/ddraw/tests/d3d.c, dlls/wined3d/device.c:
	wined3d: D3DRS_ZVISIBLE is not supposed to return an error.

	* dlls/ddraw/surface.c:
	ddraw: Add a TRACE to GetPixelFormat.

2006-12-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Use pvaIn in exec_print.

2006-12-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi/tests: Fix typos.

2006-12-14  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/user32/cursoricon.c, dlls/user32/tests/monitor.c,
	  dlls/winex11.drv/winpos.c:
	user32: ClipCursor should use virtual screen resolution for empty/invalid rects.

2006-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/ddrawex/Makefile.in, dlls/ddrawex/ddrawex.spec,
	  dlls/ddrawex/ddrawex_private.h, dlls/ddrawex/main.c:
	Add ddrawex dll.

2006-12-13  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, include/ddraw.h:
	ddraw: Add IDirectDraw3 interface.

2006-12-09  Günther Brammer <GBrammer@gmx.de>

	* dlls/ddraw/surface.c:
	ddraw: Fix IDirectDrawSurfaceImpl_SetColorKey to also change surface_desc.

2006-12-14  Francois Gouget <fgouget@free.fr>

	* dlls/cabinet/fci.c, dlls/kernel32/tests/heap.c, dlls/usp10/usp10.c,
	  dlls/wined3d/directx.c, dlls/winedos/int15.c,
	  dlls/winspool.drv/tests/info.c, programs/wineconsole/wineconsole.c,
	  programs/winedbg/break.c:
	Assorted spelling fixes.

	* dlls/comdlg32/printdlg.c, dlls/comdlg32/tests/printdlg.c:
	comdlg32: Fix PrintDlg(NULL) and reenable a test that was in an '#if 0'.
	Fix the test so it compiles without warnings.

	* dlls/ole32/tests/marshal.c:
	ole32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles.

	* dlls/user32/tests/class.c, dlls/user32/tests/clipboard.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/sysparams.c,
	  dlls/user32/tests/win.c:
	user32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/version/tests/info.c:
	version/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

	* dlls/shlwapi/tests/clist.c:
	shlwapi/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/advapi32/tests/crypt_md4.c:
	advapi32/tests: Replace an '#if 0' with an 'if (0)'.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Replace some '#if 0's with 'if (0)'s.

	* dlls/comctl32/tests/mru.c:
	comctl32/tests: Replace some '#if 0's with 'if (0)'s.
	Fix the code so it compiles without warnings.

2006-12-14  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Replace numeric literals with the proper constant.

2006-12-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/secur32/ntlm.c, dlls/secur32/schannel.c:
	secur32: Make some data const.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make some data const.

	* dlls/rsaenh/mpi.c, dlls/rsaenh/rsaenh.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Make some data const and static.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make some data const.

	* dlls/msvcrt/exit.c, dlls/msvcrt/locale.c:
	msvcrt: Make some data const.

	* dlls/dswave/dswave_main.c:
	dswave: Make some data const.

	* dlls/crypt32/store.c:
	crypt32: Make some data const.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Make some data const.

	* dlls/winmm/winearts/audio.c:
	winearts: Make some data const.

	* dlls/dmime/audiopath.c:
	dmime: Make some data const and static.

	* dlls/dbghelp/module.c:
	dbghelp: Make some data const.

	* dlls/atl/registrar.c:
	atl: Make some data const.

	* dlls/winmm/wineoss/midi.c, dlls/winmm/wineoss/midipatch.c,
	  dlls/winmm/wineoss/mixer.c:
	wineoss: Make some data const.

2006-12-14  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Be a bit more verbose on failure.

2006-12-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/cond.y:
	Revert "msi: Comparisons with null in conditions are special."
	This reverts commit 9dce96b3155ce07dffa4f5b0712fbcaad9ba3e2c.

	* dlls/msi/tests/package.c:
	msi: Fix the condition test to not assume MsiNetAssemblySupport is empty.

2006-12-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/surface.c, dlls/d3d8/tests/device.c:
	d3d8: Release non implicit surfaces only if refcount is 0, with test.

2006-12-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdoclc/En.rc, dlls/shdoclc/shdoclc.h:
	shdoclc: Added print template strings.

	* dlls/mshtml/olecmd.c, dlls/mshtml/resource.h:
	mshtml: Set default print template in exec_print.

	* dlls/mshtml/nsio.c:
	mshtml: Fixed handling chrome protocol.

	* dlls/mshtml/nsio.c:
	mshtml: Don't do anything in SetNSContainer if new container is the same
	as previous.

	* dlls/mshtml/nsio.c:
	mshtml: Fix loading pages in containers without document.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Added nsACString_SetData function and use it instead of nsACString_Init
	when we return string value.

2006-12-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/tests/cstub.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Cast-qual warnings fix.

2006-12-13  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Fix FindExecutableW() to not check if lpResult after using it. It's
	supposed to cause a segfault anyway.
	Use SE_ERR_FNF rather than a numeric literal.

	* dlls/shell32/shlexec.c:
	shell32: Add some documentation for FindExecutableW().

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Fix FindExecutable() to return the executable path,  not the whole
	command.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Add FindExecutable() tests.

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: MSDN says ShellExecute() == 32 indicates an error. So fix
	the tests.

2006-12-13  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/tests/ole2.c:
	ole32: Fix named/nameless union compilation error.

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/tests/string.c:
	msvcrt: The tests link with msvcrt(d).dll now, so use GetModuleHandle() rather
	than LoadLibrary().

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added beginning of IDM_PRINT implementation.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Added test of CompareUrl.

2006-12-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Update cached cursor position after calling hook.

	* dlls/user32/tests/input.c, dlls/winex11.drv/mouse.c:
	winex11.drv: Only events with MOUSEEVENTF_MOVE flag should change mouse position.

2006-12-13  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/kernel32/locale.c:
	kernel32: Remove unneeded headers.

2006-12-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c, server/mapping.c:
	ntdll: Map the PE header up to the specified size, and clear the rest of
	the page.

2006-12-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Add the data that mimics the PE image which upack creates.

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Use pluggable protocol in CoInternetCompareUrl.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-msdownload mime filter.

2006-12-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/ntdll/rtl.c, dlls/ntdll/tests/rtl.c, include/winternl.h:
	ntdll/tests: Cast-qual warning fix.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed computation of viewport and scissor position.

2006-12-10  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/user32/driver.c, dlls/user32/user_private.h, dlls/user32/win.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec:
	user32: Factorize graphics driver SetParent into user32.

2006-12-11  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add tests and fix for ScriptXtoCP .

2006-12-12  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Use standard mouse data format instead of custom one.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Remove redundant parameter.

	* dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move mouse & keyboard user data format to base class.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move joystick user data format into base class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Add user data format into base class. Implement SetDataFormat.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/mouse.c:
	dinput: Move transform and offsets structures into base device class.

2006-12-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/main.c:
	winetest: Show correct filenames on test.winehq.org.

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: No need to return anything as we are using a global
	variable now.

2006-12-12  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/kernel32/locale.c:
	kernel32: Allow the preferred language to be different from the preferred
	locale on Mac OS X.

2006-12-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsservice.c:
	mshtml: Use HTMLWindow::alert in nsPromptService::Alert.

2006-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlwindow.c, dlls/mshtml/resource.h:
	mshtml: Added alert implementation.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	winex11.drv: Get rid of the display pointer in the GL context.

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c:
	opengl32: Don't use ENTER_GL/LEAVE_GL around calls to driver functions.
	This causes lock inversions when the driver accesses the DC.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c:
	opengl32: Avoid generating a wrapper for internal functions when we can call
	the internal one directly.

2006-12-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	winex11.drv: Correctly position and clip opengl child windows.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Get rid of the unused set_drawable function.

	* dlls/gdi32/clipping.c:
	gdi32: Use a more appropriate size for the default clip region.

	* dlls/gdi32/dc.c, dlls/winex11.drv/init.c:
	winex11.drv: Implemented DESKTOPHORZ/VERTRES device caps.

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/bitmap.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/xrender.c:
	winex11.drv: Make sure the drawable rect is always updated and use it where
	appropriate.

2006-12-07  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/winex11.drv/bitblt.c, dlls/winex11.drv/clipping.c,
	  dlls/winex11.drv/dce.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/graphics.c, dlls/winex11.drv/init.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/text.c,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrender.c,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  server/window.c:
	winex11.drv: Store window and drawable rects in X11DRV_PDEVICE.

2006-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Remove unused PropertyAliasMap variable.

2006-12-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a stub implementation for CorExitProcess and
	GetRequestedRuntimeInfo.

	* dlls/mscoree/Makefile.in, dlls/mscoree/mscoree_main.c:
	mscoree: Take advantage of an installed Mono for Windows to run .NET
	applications.

2006-12-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Don't treat having no printers as a failure.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Make default_printer a global variable.

2006-12-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt/tests: Cast-qual warnings fix.

	* dlls/msi/tests/install.c:
	msi/tests: Cast-qual warning fix.

2006-12-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/tests/treeview.c,
	  dlls/usp10/tests/usp10.c, dlls/winmm/tests/wave.c:
	Made some functions static.

2006-12-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for XcvClosePort.

	* dlls/localspl/tests/localmon.c, include/ddk/winsplp.h:
	localspl/tests: Add tests for XcvOpenPort.

2006-12-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell32.spec, dlls/shell32/shell32_main.c:
	shell32: Add a stub implementation for SHLoadNonloadedIconOverlayIdentifiers.

2006-12-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SEPARATEALPHABLENDENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move SRGBWRITEENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move tesselation to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_NORMALDEGREE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POSITIONDEGREE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Make WINED3DRS_DEBUGMONITORTOKEN a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_PATCHSEGMENTS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_PATCHEDGESTYLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_MULTISAMPLEMASK to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ANTIALIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_STIPPLEDALPHA to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_TEXTUREPERSPECTIVE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_DEPTHBIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SCISSORTESTENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_MULTISAMPLEANTIALIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_WRAPx to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSPRITEENABLE to the state table.

	* dlls/wined3d/device.c:
	wined3d: WINED3DRS_SOFTWAREVERTEXPROCESSING is a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LASTPIXEL to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LOCALVIEWER to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_COLORWRITEENABLEx to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move point scale render states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE_MAX to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE_MIN to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_POINTSIZE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_NORMALIZENORMALS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZBIAS to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LINEPATTERN to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_COLORVERTEX to the state table.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cryptdll/cryptdll.c:
	cryptdll: Change storage class of module handle to static.

2006-12-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move few helper functions and standardize them.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/mouse.c:
	dinput: Move internal function calculate_ids to where it's really used.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: No need to copy default constant format. Use already defined static
	instead.

2006-12-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shlfileop.c:
	shell32: Avoid using garbage data in wildcard expansion.

2006-12-10  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Make the WGL code independant of the number of supported pixel formats.

2006-12-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Properly handle GLX_DRAWABLE_TYPE queries.

2006-12-11  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Utilize IDirectInputDevice2AImpl_Acquire/Unacquire.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Ensure that the size of the dev caps pointer is large enough - no exact.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Silently ignore DIPROP_CALIBRATIONMODE.

2006-12-10  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c:
	dinput: Remove incorrect assumption about format.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Set WINED3DRS_INDEXEDVERTEXBLENDENABLE to state_nogl.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the unused tween factor stateblock member.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Remove the unused stateblock vertex blend member.

2006-12-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move wined3drs_fogdensity to the state table.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_FOGCOLOR to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Make WINED3DRS_RANGEFOGENABLE a nogl state.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move fog states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_STENCILWRITEMASK to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move stencil states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SPECULARENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_TEXTUREFACTOR to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_BLENDOP to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move clipping states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move alpha states to the state table.

	* dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::Reset.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/tests/util.c:
	mapi32/tests: Cast-qual warnings fix.

	* dlls/mapi32/tests/prop.c:
	mapi32/tests: Cast-qual warnings fix.

	* dlls/gdi32/tests/metafile.c:
	gdi32/tests: Cast-qual warning fix.

2006-12-10  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Reduce the number of error messages.

2006-12-10  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix imagelist regression from "comctl32: Remove Nx1 assumptions
	in ImageList_Read".

2006-12-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/cert.c, dlls/ddraw/tests/refcount.c,
	  dlls/dinput/tests/dinput_test.h, dlls/dinput/tests/joystick.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound_test.h,
	  dlls/dsound/tests/propset.c, dlls/gdi32/tests/bitmap.c,
	  dlls/gdi32/tests/mapping.c, dlls/gdi32/tests/metafile.c,
	  dlls/msi/tests/db.c, dlls/msvcrt/tests/data.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/string.c,
	  dlls/msxml3/tests/domdoc.c, dlls/ole32/tests/ole2.c,
	  dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/vartype.c, dlls/rpcrt4/tests/cstub.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/secur32/tests/main.c,
	  dlls/shell32/tests/shlfolder.c, dlls/user32/tests/dde.c,
	  dlls/user32/tests/edit.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/sysparams.c, dlls/user32/tests/win.c:
	made functions and variables static in some testcases.

2006-12-10  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Fix typo.

2006-12-09  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/joystick_linux.c:
	dinput: Fix processing of custom format.

2006-12-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmstyle/dmutils.c:
	dmstyle: Dangling references fix.

	* dlls/dmloader/debug.c:
	dmloader: Dangling references fix.

2006-12-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dmime/dmutils.c:
	dmime: Dangling references fix.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Cast-qual warnings fix.

2006-12-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/storage.c:
	dbghelp: Sparse array speed up.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.27.

----------------------------------------------------------------
2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Don't assume that the font codepages change with the user locale.
	Codepages can be set independently with LC_CTYPE.

	* dlls/msvcrt/locale.c:
	msvcrt: Use LOCALE_USER_DEFAULT to get the proper codepage for the Unix locale.

	* dlls/shlwapi/tests/string.c:
	shlwapi: Fixed string tests for non-English locales.

2006-12-08  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move blending related states to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_AMBIENT to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZFUNCENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZWRITEENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_DITHERENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_SHADEMODE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_CULLMODE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_ZENABLE to the state table.

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_LIGHTNING to the state table.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Disable the freetype mmap sharing on Mac OS.

2006-12-08  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comcat/comcat_private.h, dlls/comcat/manager.c:
	comcat: Remove const from COMCAT Manager.

2006-12-08  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define AVI resource 152.

2006-12-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Change the output for HRESULT's.

2006-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/stack.c:
	dbghelp: Avoid a printf format warning.

	* tools/winedump/pdb.c:
	winedump: Avoid printf format warnings.

2006-12-08  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/imm32/imm.c:
	imm32: Send the WM_IME_CHAR message, although ResultString has been read.

2006-12-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Cast-qual warnings fix.

	* dlls/crypt32/tests/store.c:
	crypt32/tests: Cast-qual warnings fix.

2006-12-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/state.c:
	wined3d: Move WINED3DRS_FILLMODE to the state table.

2006-12-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/state.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add render states to the state table.

2006-12-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/Makefile.in, dlls/wined3d/state.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Create the state table.

2006-12-07  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Downgrade SO_REUSEADDR fixme to a trace.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Check the NX compatibility flag for every loaded module.

	* tools/winebuild/build.h, tools/winebuild/main.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c,
	  tools/winebuild/winebuild.man.in:
	winebuild: Added --nxcompat option, and mark all modules as NX-compatible
	by default.

	* tools/winedump/pe.c:
	winedump: Print sizes and offsets in hex.

2006-12-07  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/download.c:
	wineps.drv: Don't try to download a non-scalable font.

2006-12-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for comparison to empty strings.

	* dlls/msi/cond.y:
	msi: Comparisons with null in conditions are special.

2006-12-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/lib.c:
	winedump: Dump section data of COFF library files, decode some import data.

	* tools/winedump/main.c, tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Add a possibility to dump raw section data.

	* tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Export dump_section() for use outside of pe.c.

	* tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Handle properly partial optional COFF headers.
	Export dump_file_header() and dump_optional_header() for use outside of pe.c.

	* tools/winedump/pe.c:
	winedump: IMAGE_SCN_ALIGN_??? are not the bit fields, but the values masked
	by IMAGE_SCN_ALIGN_MASK.

	* tools/winedump/pdb.c:
	winedump: Avoid returning void from a void function.

	* tools/winedump/pdb.c:
	winedump: Make output of dump_data fit into 80 columns.

	* dlls/kernel32/tests/loader.c:
	kernel32: Add PE images with section alignment 1 and 2 to the loader test.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/loader.c, dlls/ntdll/virtual.c:
	ntdll: Fix the failing loader tests.

2006-12-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Implement wglGetPixelFormatAttribfvARB.

2006-12-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Use LOCALE_NOUSEROVERRIDE in tests that depend on the decimal
	separator.

	* dlls/oleaut32/vartype.c:
	oleaut32: Use LOCALE_NOUSEROVERRIDE where necessary in variant conversions.

	* dlls/kernel32/locale.c:
	kernel32: For LOCALE_NOUSEROVERRIDE, check locale against the appropriate
	default lcid.

	* dlls/kernel32/tests/locale.c:
	kernel32/tests: Added LOCALE_NOUSEROVERRIDE flag on time tests that rely
	on AM/PM.

2006-12-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* documentation/README.ko:
	README: Updated Korean translation.

2006-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winecfg/Fr.rc:
	winecfg: A few fixes for the French translation.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* tools/winapi/msvcmaker:
	msvcmaker: Remove references to wine_unicode and to .spec.c files.

2006-12-07  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Add some documentation for CoCreateInstance.

	* dlls/wininet/http.c:
	wininet: Make a function for resolving the server name for an HTTP request
	and sending the appropriate callbacks and use it to remove some duplicated code.

	* dlls/wininet/http.c:
	wininet: Make HTTP_HandleRedirect no longer call HTTP_HttpSendRequestW.
	Make the redirect handling in HTTP_HttpSendRequestW iterate instead of recurse.

2006-12-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlwindow.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added get_parentWindow implementation.

	* dlls/shdoclc/En.rc, dlls/shdoclc/shdoclc.h:
	shdoclc: Added IDS_MESSAGE_BOX_TITLE string.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/pdf mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/java mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-zip-compressed filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added application/x-gzip-compression filter.

2006-12-06  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/rtl.c:
	ntdll/tests: Fix typo.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* include/wingdi.h:
	gdi32: Add a prototype for GetFontUnicodeRanges().

2006-12-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/freetype.c:
	gdi32: Only mmap a given font file once.
	FT_New_Face always creates a new mapping of the font file, so do the
	mapping by hand and use FT_New_Memory_Face instead.

2006-12-05  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/swapchain.c, dlls/d3d8/tests/device.c:
	d3d8: Fix implicit surface refcounting.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c:
	d3d8: Handle volume refcount forwarding in d3d8.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/surface.c, dlls/d3d8/tests/device.c, dlls/d3d8/texture.c:
	d3d8: Handle surface refcount forwarding in d3d8.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/surface.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit depth stencil surface destruction
	in IWineD3DDevice.

	* dlls/wined3d/directx.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit volume destruction in
	IWineD3DVolumeTexture.

	* dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit render target destruction in
	IWineD3DSwapChain.

	* dlls/wined3d/cubetexture.c, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit surface destruction in
	IWineD3DCubeTexture.

	* dlls/wined3d/directx.c, dlls/wined3d/texture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	d3d: Callback infrastructure for implicit surface destruction in IWineD3DTexture.

2006-12-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/list.h:
	wine/list.h: Added list_move_head and list_move_tail.

2006-12-06  Francois Gouget <fgouget@free.fr>

	* dlls/dmime/dmutils.c, dlls/dmime/dmutils.h:
	dmime: Remove resolve_STREAM_SEEK(), it is unused.

	* dlls/ole32/usrmarshal.c:
	ole32: Convert dump_user_flags() into debugstr_user_flags(), a proper debug
	trace function.

	* dlls/ole32/datacache.c:
	ole32: Convert dump_FORMATETC() into debugstr_formatetc(), a proper debug
	trace function.

	* tools/winapi/msvcmaker:
	msvcmaker: Link with msvcrt(d).dll rather than with the static C library.

	* tools/winapi/msvcmaker:
	msvcmaker: Tweak the .dsp formatting to better match Visual Studio.

	* tools/winapi/msvcmaker:
	msvcmaker: Remove unneeded -I.. for the msvcrt tests.

	* tools/winapi/msvcmaker:
	msvcmaker: Fix the code that sets __WINETEST_OUTPUT_DIR so it does not pollute
	$output_dir.

2006-12-05  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix for missing NV GLX extension.

2006-12-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: More tests for the SourceDir property.

	* dlls/msi/tests/package.c:
	msi: Add some tests for the ALTER query.

2006-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Added support for constant values passed by dbghelp.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/symbol.c:
	dbghelp: Added ability to internal store / reload a symbol with a constant value.
	Let dwarf and msc use this new feature.
	As we also add global symbol without addresses, don't take those
	constant symbols into account for searches by address.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/storage.c, dlls/dbghelp/symbol.c:
	dbghelp: Added a field to the hash table to store the number of elements in
	the hash table.
	Make use of it to get rid to module_compute_num_syms.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/symbol.c:
	dbghelp: In find_nearest, now return the symbol instead of its index in
	module->sorttable.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Simplify the way we find the debug header.

2006-12-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/dplayx/dplay.c:
	dplayx: Display requested provider.

2006-12-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Cleanup wglMakeCurrent.

2006-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/type42.c:
	wineps.drv: When we're using a GlyphDirectory we should clear the offsets and
	lengths of the loca and glyf tables in addition to changing their names.
	Should fix printing on Mac based cups servers.

2006-12-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for GetWindowsDirectory.

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Add tests for GetSystemDirectory.

2006-12-04  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/version/tests/info.c:
	version/tests: Free memory after use.

	* dlls/wininet/tests/url.c:
	wininet/test: Free memory after use.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Free memory after use.

2006-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/volume.c:
	kernel32: Always read a full block from the CD-ROM to avoid problems on raw
	devices.

2006-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/user32/listbox.c, dlls/user32/tests/listbox.c:
	user32: For LBS_OWNERDRAWVARIABLE listboxes return the fixed item height if
	the listbox is empty.

2006-12-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Initialize sid_str to NULL.

	* dlls/msi/database.c:
	msi: Fail if stg is NULL.

2006-12-05  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Rewrite setsockopt to be more readable.

2006-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Added support for the HEAP_CREATE_ENABLE_EXECUTE flag.

	* loader/kthread.c:
	kthread: Don't make the stack executable by default.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/virtual.c:
	ntdll: Force exec permissions on all mmaps unless the app is marked
	NX-compatible.

2006-12-05  Thomas Fitzsimmons <fitzsim@redhat.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Recognize DT_GNU_HASH.

2006-12-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/lsa.c:
	advapi32: Eliminate wild pointers.

	* dlls/comcat/tests/comcat.c:
	comcat/tests: Cast-qual warnings fix.

2006-12-04  Lei Zhang <thestig@google.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Move EM_EXSETSEL fix into ME_SetSelection.

2006-12-04  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/device_private.h:
	dinput: Remove no longer used GEN_EVENT.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Move joystick event queue into base device class.

	* dlls/dinput/mouse.c:
	dinput: Move mouse event queue into base device class.

	* dlls/dinput/keyboard.c:
	dinput: Move keyboard event queue into base device class.
	This removes [Get|Set]Property and GetDeviceData.

	* dlls/dinput/device.c, dlls/dinput/device_private.h:
	dinput: Implement [Get|Set]Property and GetDeviceData in base Device object.
	Also add queue_event to replace big macro GEN_EVENT.

2006-12-05  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h:
	msi: Examine the attributes of all features before setting a component's state.

	* dlls/msi/tests/package.c:
	msi: Add the names of features/components to debugging output.

2006-12-04  Francois Gouget <fgouget@free.fr>

	* dlls/avifil32/avifile_It.rc, dlls/comctl32/comctl_It.rc,
	  dlls/comdlg32/cdlg_It.rc, dlls/mpr/mpr_It.rc,
	  dlls/msacm32/msacm_It.rc, dlls/msi/msi_It.rc,
	  dlls/msrle32/msrle_It.rc, dlls/oleaut32/oleaut32_It.rc,
	  dlls/oledlg/oledlg_It.rc, dlls/serialui/It.rc, dlls/setupapi/It.rc,
	  dlls/shell32/shell32_It.rc, dlls/shlwapi/shlwapi_It.rc,
	  dlls/user32/resources/user32_It.rc, dlls/wineps.drv/wps_It.rc,
	  dlls/wininet/wininet_It.rc, dlls/winspool.drv/It.rc,
	  programs/clock/It.rc, programs/cmdlgtst/It.rc,
	  programs/notepad/It.rc, programs/progman/It.rc,
	  programs/regedit/It.rc, programs/start/It.rc, programs/view/It.rc,
	  programs/winecfg/It.rc, programs/wineconsole/wineconsole_It.rc,
	  programs/winemine/It.rc, programs/winhelp/It.rc:
	Consistently use SUBLANG_NEUTRAL for Italian resources.

	* README, dlls/gdi32/gdi_private.h, dlls/iphlpapi/ifenum.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/instr.c, dlls/kernel32/process.c,
	  dlls/kernel32/selector.c, dlls/msvcrt/tests/headers.c,
	  dlls/ole32/storage32.h, dlls/oleaut32/typelib.h,
	  dlls/rpcrt4/ndr_stubless.c, dlls/shell32/shell32_main.c,
	  dlls/user32/mdi.c, include/msvcrt/process.h, include/windef.h,
	  libs/wine/mmap.c, tools/widl/typelib_struct.h, tools/winedump/le.c,
	  tools/winedump/msc.c, tools/winegcc/winegcc.c:
	Assorted spelling fixes.

	* dlls/mshtml/editor.c:
	mshtml: Add '\n' to Wine trace.

	* dlls/msxml3/domdoc.c:
	msxml3: Add '\n' to Wine trace.

	* dlls/vmm.vxd/vmm.c:
	vmm.vxd: PC_WRITABLE spelling fix.

2006-12-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/atl/registrar.c:
	atl: Change storage class of dll_count to static.

2006-12-04  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/datacache.c:
	ole32: Implement the GetData function of the data cache to using the
	existing LoadData function and fix GetData to also return data that
	has been set, rather than loaded.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Fix HandsOffStorage in the data cache.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Implement the DiscardCache function in the data cache.

2006-12-04  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool.drv: Outlook 2003 relies on the buffer size returned by EnumPrintersA
	being big enough to hold the buffer returned by EnumPrintersW.

2006-11-23  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Add err for failure case in CheckDepthStencilMatch.

	* dlls/wined3d/directx.c:
	wined3d: Fix CreateFakeGLContext to work with a foreign context.

	* dlls/wined3d/directx.c:
	wined3d: Avoid XFree on NULL in CheckDeviceType.

	* dlls/wined3d/directx.c:
	wined3d: Rearrange code in CheckDeviceType.

	* dlls/wined3d/directx.c:
	wined3d: Add warn trace for INVALIDCALL case in CheckDeviceType.

2006-12-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/glut32/Makefile.in, dlls/glut32/glut.c, dlls/glut32/glut32.spec,
	  dlls/make_dlls:
	Remove glut32.

2006-12-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/ws2_32/tests/sock.c:
	ws2_32: Added tests for closesocket cancelling pending I/O operations.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* server/sock.c:
	server: Explicitly shutdown destroyed sockets to force pending poll() calls
	to return.

	* dlls/kernel32/locale.c:
	kernel32: Store the LC_MESSAGES value under the "Locale" value.
	Some apps depend on the value. Reported by Karsten Elfenbein.

2006-12-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Dwarf can emit REGREL symbol information, so handle it.
	Factorize a bit more some symbol handling code.

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/tgt_active.c:
	winedbg: Now that local variable computation depends on instruction
	pointer value, be sure to have the relevant insn ptr value when
	fetching the stack frames (spotted by Peter Oberndorfer).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Fixed value stored for register relative information
	(regression spotted by Peter Oberndorfer).

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Now that symbol's value computation depend on instruction
	pointer value, be sure to always store it (spotted by Peter
	Oberndorfer).

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/be_x86_64.c, programs/winedbg/debugger.h,
	  programs/winedbg/memory.c, programs/winedbg/stack.c:
	winedbg: Added some black magic to still handle register values on non
	current frame for some of the registers we know of (frame pointer,
	stack pointer).

	* programs/winedbg/symbol.c:
	winedbg: Remove some hassle from sgv_cb, and handle line number displacement
	where needed.

	* programs/winedbg/symbol.c:
	winedbg: No longer test filename in sgv_cb, but do it in the only place where
	we actually need it.

2006-12-02  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/datacache.c:
	ole32: Add some more traces to the data cache to make debugging easier.

	* dlls/ole32/tests/ole2.c:
	ole32: Add tests for invalid clipformat/tymed combinations in IOleCache:Cache
	and for caching formats with a clipformat of 0.

	* dlls/ole32/datacache.c:
	ole32: In the data cache, fmtetc->cfFormat and fmtetc->tymed can be 0 which
	means to match any clipformat/tymed.
	Therefore, keep the clipformat of the data in the data_cf field.
	Return an error from SetData if a non-zero clipformat hasn't been specified.
	Write out stgmedium.tymed instead of fmtetc.tymed, which is guaranteed
	to be non-zero if data has been set.

	* dlls/ole32/datacache.c:
	ole32: Check that the specified clipboard format and tymed are valid in
	IOleCache::Cache in the data cache.

2006-12-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/Makefile.in, dlls/spoolss/spoolss.spec:
	spoolss: Forward EnumPortsW to winspool.drv.

2006-12-04  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Rewrite getsockopt to make it more readable.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Allow module with extensions in forward specifications.

2006-12-04  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Double quotes are not valid in queries.

	* dlls/msi/tests/db.c:
	msi: Add tests for quoting in queries.

2006-12-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/volume.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/volume.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	d3d: Pass the superior creating object down to the callback functions.

2006-12-01  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* fonts/ms_sans_serif.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in MS Sans Serif font.

	* fonts/small_fonts.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in Small fonts.

	* fonts/courier.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in Courier font.

	* fonts/system.sfd:
	fonts: Add Ukrainian and Byelorussian symbols in System font.

2006-12-02  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/comctl32/header.c:
	comctl32: Destroy header information on WM_NCDESTROY instead of WM_DESTROY.

2006-12-02  Chris Robinson <chris.kcat@gmail.com>

	* dlls/winex11.drv/opengl.c:
	wgl: Don't return prematurely if ConvertPixelFormatWGLtoGLX receives an invalid
	pixel format.

2006-12-01  Charles Blacklock <charles@diagnos.co.uk>

	* dlls/oleaut32/vartype.c:
	oleaut32: Cleanup of previous VarBstrCmp patch.

2006-12-02  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/surface.c:
	wined3d/d3d9: Pitch for DXTn textures can not be 0. With tests.

2006-12-01  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Implement Poll for keyboard.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move critical section to the base device class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput: Move acquired flag to the base device class. Add tests.

2006-12-04  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/parser.c:
	winebuild: Check for illegal characters in entry point names.

2006-12-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/nonclient.c, dlls/user32/tests/win.c:
	user32: Add ShowWindow test, make it pass under Wine.

2006-12-03  Lei Zhang <thestig@google.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fixes and additional conformance tests for EM_EXSETSEL.

2006-12-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: (W)GL_NV_vertex_array_range.

2006-12-03  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/exception.c:
	ntdll: Fix single stepping over popf instruction.

2006-12-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/msc.c:
	winedump: Cast-qual warnings fix.

	* tools/winedump/lnk.c:
	winedump: Cast-qual warnings fix.

2006-12-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/reg.c:
	shell32: Forward SHDeleteKeyA directly to SHDeleteKeyW.

2006-12-01  James Hawkins <truiken@gmail.com>

	* dlls/shell32/shlexec.c:
	shell32: Move a NULL pointer check before the place where we dereference
	the pointer.

	* dlls/msi/action.c, include/msidefs.h:
	msi: Add handling for the StartServices action.

2006-12-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/imagehlp/access.c:
	imagehlp: MapAndLoad should do some useful stuff now.

2006-12-01  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/ole32_main.c:
	ole32: Set the mapping mode to anisotropic in OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: The width of the metafile drawn should be 3 times the icon width in
	OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: Fill in the xExt and yExt fields in OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: Use the default icon title font when writing the caption text out in
	OleMetafilePictFromIconAndLabel.

	* dlls/ole32/ole32_main.c:
	ole32: The METAFILEPICT created by OleMetafilePictFromIconAndLabel should have
	its mapping mode be anisotropic, not isotropic.

	* dlls/ole32/ole32_main.c:
	ole32: Call SetWindowOrgEx and SetWindowExtEx in OleMetafilePictFromIconAndLabel
	so that the created metafile scales correctly.
	Centre the icon and the label.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Implement saving of the data cache.
	Document a few of the unknown fields in the presentation data header.

	* dlls/ole32/datacache.c, dlls/ole32/tests/ole2.c:
	ole32: Add handling of the dirty state to the data cache and fix InitNew to
	not call Load.

	* dlls/ole32/datacache.c:
	ole32: Add documentation for CreateDataCache.

	* dlls/ole32/tests/ole2.c:
	ole32: Add some tests for the IViewObject, IOleCache2 and IPersistStorage
	interfaces of the OLE data cache.

	* dlls/ole32/datacache.c:
	ole32: The advise sink for the data cache should be primed with the passed in
	aspects value, not an arbitrarily selected value.

	* dlls/ole32/datacache.c:
	ole32: Implement the SetData function for the data cache.

	* dlls/ole32/datacache.c:
	ole32: Load cached data in the data cache into a STGMEDIUM type so it can be
	treated the same as set data.

	* dlls/ole32/datacache.c:
	ole32: Implement Cache and Uncache for the data cache.

	* dlls/ole32/datacache.c:
	ole32: Create a cache entry for each format in the data cache to allow
	for the future possiblity to add entries with IOleCache::Cache and
	IOleCache::SetData.

	* dlls/ole32/datacache.c:
	ole32: Implement DataCache_GetClassID.

	* include/ole2.h:
	include: Add some missing OLE defines and declarations to ole2.h.

2006-12-01  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix elf_load_module params on non elf system to reflect last change
	to its definition.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msacm32/pcmconverter.c:
	msacm32: Make some data const.

2006-12-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/winex11.drv/mouse.c:
	winex11.drv: Don't update the key state table in mouse related functions.

2006-12-01  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/device.c:
	d3d9: Remove unreachable return.

2006-11-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c:
	msi: Set the UserSID property.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for LookupAccountName.

2006-12-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comctl32/propsheet.c:
	comctl32: Do not crash when the startpage is invalid.

2006-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/file.c:
	kernel32/tests: Added test case for . and .. directory entries.

	* dlls/kernel32/file.c, dlls/ntdll/directory.c:
	ntdll: Always return . and .. as the first two entries in directory searches.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Skip the PE loader test under a Win9x platform.

2006-11-30  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/tests/exception.c:
	ntdll: Add more exception tests.

	* dlls/ntdll/tests/exception.c:
	ntdll: Run exception tests from executable memory.

	* dlls/ntdll/tests/exception.c:
	ntdll: Simplify exception tests.
	- create helper function to setup exception frame and run the test
	- lookup function ptr only once
	- make "code data" const
	- reuse global exception counter
	- change alignment test to use stack address to generate an alignment
	exception. This avoids
	the need to pass an argument, so it can use the created helper function.
	(as the stack is (at least) 4 byte aligned, this works equally well)

2006-12-01  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/device.c:
	d3d8: Use correct COM macros.

	* dlls/d3d9/device.c, dlls/d3d9/vertexdeclaration.c:
	d3d9: Use correct COM macros.

	* dlls/wined3d/directx.c:
	wined3d: Remove duplicated code.

	* dlls/ddraw/device.c:
	ddraw: Call wined3d's SetTextureStageState not the one of d3d7.

2006-11-30  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Relax the pixel format attribute conversion code a bit.

2006-11-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/editor.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added handling of right and left arrow keys in editing mode.

2006-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/user32/tests/class.c:
	user32: W2K3 returns ERROR_INVALID_PARAMETER.

2006-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Don't free the DOS area when a broken app passes a NULL pointer to
	NtFreeVirtualMemory.

2006-11-30  Charles Blacklock <charles@diagnos.co.uk>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	oleaut32: Add VarBstrCmp binary comparison for LCID==0.

2006-11-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/winetest/send.c:
	winetest: Make sure we can send larger files.

2006-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/dump.c, tools/winedump/lib.c:
	winedump: Restore the COFF library dumper functionality broken by the previous
	change.

2006-11-29  Lei Zhang <thestig@google.com>

	* configure, configure.ac, dlls/msxml3/domdoc.c, include/config.h.in:
	msxml3: Fix compiles for systems with libxml2 version 2.6.14 and below.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Load the local monitor only once.

2006-11-29  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Look for supported color depths icons only.

2006-11-30  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.".
	This reverts commit 167b83c28af73803462e92ee4dcb1a95f194a74d.

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c, dlls/wined3d/swapchain.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.".
	This reverts commit 478a414e5820c56fb7bb65d0c41c831932ca26e8.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.".
	This reverts commit a7518f6f5494558e80ad125d0b42a46b4744d448.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.".
	This reverts commit 18546a65e6e68427ed49c4ea5a601972fb8a4de0.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetTexture.".
	This reverts commit 274df6ef88fb16da6c61fc891db74042fec0bfc5.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.".
	This reverts commit 16b1e046d8da9b716975c1c483c149ea3826b690.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetIndices.".
	This reverts commit 5c4008719c60af52e9370023f09c7b86b7768e85.

	* dlls/d3d9/swapchain.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c:
	Revert "d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.".
	This reverts commit f84f687e6d3d8f432de2c5d9b2af13d2c5cedfb2.

	* dlls/wined3d/device.c:
	Revert "d3d: Fix partially applied patch: Remove AddRef from GetDirect3D.".
	Removing COM in d3d is not feasible as long as we use inheritance. So
	stick to the COM refcount rules.
	This reverts commit 3fd8fe089c5337c76c55c4beb74c53576f51776e.

2006-11-30  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, include/winsock.h:
	ws2_32: Implement SO_EXCLUSIVEADDRUSE for setsockopt.

2006-11-30  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/appdefaults.c:
	winecfg: Determine the current Windows version from the standard registry keys.
	Also avoid setting the HKCU\Software\Wine version value when not needed.

	* dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/filedlgbrowser.h:
	comdlg32: Moved prototypes to the header file and fixed declaration of
	FileOpenDlgInfosStr.

2006-11-30  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: SO_DONTROUTE is ignored on windows, fix comment and downgrade FIXME
	to TRACE.

2006-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/Makefile.in, dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp.c,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/image.c, dlls/dbghelp/memory.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Get rid of long int issues on 64bit platforms.

	* tools/winedump/Makefile.in, tools/winedump/msc.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: Added support for dumping types from PDB, CV... files.

	* tools/winedump/Makefile.in, tools/winedump/dump.c, tools/winedump/pdb.c,
	  tools/winedump/winedump.h:
	winedump: First shot at dumping PDB files contents.

	* dlls/dbghelp/msc.c, include/wine/mscvpdb.h:
	mscvpdb.h: Update some definitions (constants, structures) with latest
	information we have.

	* dlls/dbghelp/coff.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h,
	  include/wine/mscvpdb.h:
	dbghelp: Moved mscvpdb.h file to include/wine to allow sharing of the definitions
	with winedump.

	* tools/winedump/main.c:
	winedump: Make dump mode the default.

	* tools/winedump/dump.c, tools/winedump/emf.c, tools/winedump/main.c,
	  tools/winedump/winedump.h:
	winedump: Dump the EMF files as any other file types.
	Internally, make use of the PRD function for checking available file ranges.

	* tools/winedump/dump.c, tools/winedump/lnk.c, tools/winedump/main.c,
	  tools/winedump/winedump.h, tools/winedump/winedump.man.in:
	winedump: Use same scheme for dumping lnk files as the executables (through
	the PRD macro and a full mapped image).

	* tools/winedump/dump.c, tools/winedump/lib.c, tools/winedump/minidump.c,
	  tools/winedump/pe.c, tools/winedump/winedump.h:
	winedump: Use a uniform scheme for dumping file contents.

	* tools/winedump/debug.c, tools/winedump/dump.c, tools/winedump/pe.c,
	  tools/winedump/pe.h, tools/winedump/winedump.h:
	winedump: Header file pe.h is useless, get rid of it.

	* tools/winedump/dump.c, tools/winedump/le.c, tools/winedump/ne.c,
	  tools/winedump/pe.c, tools/winedump/pe.h, tools/winedump/winedump.h:
	winedump: Changed PE, NE, LE dumping so that they are consistent in terms of
	dump function signatures.
	Avoid passing around the base of the module, but use instead the PRD function.

2006-11-29  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/crypt.c:
	advapi32: Remove redundant NULL checks before CRYPT_Free.

	* dlls/msi/files.c:
	msi: Use mi->source if the source is not a full path.

2006-11-30  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Fix SetWindowPos parameters in the spec file.

2006-11-29  Konstantin Kondratyuk <kondratyuk@etersoft.ru>

	* fonts/system.sfd:
	fonts: Add Ukrainian symbols in System font.

	* fonts/courier.sfd:
	fonts: Add ukrainian symbols in Courier.

	* fonts/ms_sans_serif.sfd:
	fonts: Add Ukrainian symbols in MS Sans Serif.

	* fonts/small_fonts.sfd:
	fonts: Add Ukrainian symbols in Small fonts.

2006-11-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/action.c:
	msi: Add handling for the InstallODBC action.

	* dlls/msi/files.c:
	msi: Don't fail if we can't remove an existing install file.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add initial tests for AddPort.

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement AddPortW.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add initial test for DeletePort.

	* dlls/winspool.drv/info.c:
	winspool: Implement DeletePortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement DeletePortW.

2006-11-26  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/user32/driver.c, dlls/user32/message.c, dlls/user32/user_private.h,
	  dlls/user32/winpos.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/winpos.c,
	  dlls/winex11.drv/x11drv.h:
	user32: Factorize driver's SetWindowPos in user32.

2006-11-27  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Added AssertFail stub.

2006-11-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comdlg32/cdlg32.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/fontdlg.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg.h, dlls/comdlg32/printdlg16.c:
	comdlg32: Make some data const.

	* dlls/advapi32/registry.c:
	advapi32: Make some data const.

	* dlls/dsound/capture.c:
	dsound: Make some data const.

	* dlls/winedos/devices.c:
	winedos: Make some data const.

	* dlls/riched20/writer.c:
	riched20: Make some data const.

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c, dlls/quartz/main.c,
	  dlls/quartz/transform.c, dlls/quartz/transform.h:
	quartz: Make some data const and static.

	* dlls/mshtml/install.c:
	mshtml: Make some data const.

	* dlls/comctl32/rebar.c:
	comctl32: Make some data const.

	* dlls/winspool.drv/info.c:
	winspool.drv: Make some data const.

	* dlls/urlmon/binding.c:
	urlmon: Make some data const.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/regsvr.c:
	shdocvw: Make some data const.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/font.c,
	  dlls/msi/update.c:
	msi: Make some data const and static.

	* dlls/winex11.drv/xfont.c:
	winex11.drv: Make some data const.

	* dlls/ntdll/om.c, dlls/ntdll/path.c:
	ntdll: Make some data const.

2006-11-29  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Improve version detection, move all the version detection to ntlm.c.
	Also, as starting with Samba 3.0.24, ntlm_auth will have all the features
	we need, require that as minimal version and remove odd old-version
	compatibility hacks.

2006-11-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Update the UI in one place only in ACTION_ProcessComponents.

	* dlls/msi/action.c:
	msi: Advertise components of a feature that has the
	msidbFeatureAttributesFavorAdvertise property.

2006-11-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Cast-qual warnings fix.

2006-11-28  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c, dlls/ws2_32/tests/sock.c:
	ws2_32: Implement SO_GET_MAX_MSG_SIZE for getsockopt.

2006-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msi/msi.spec:
	msi: Synchronize msi exports with what PSDK has.

2006-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl: Add initial tests for AddPortW.

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Implement AllocSplStr + DllFreeSplStr.

2006-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/Makefile.in, tools/winedump/dump.c, tools/winedump/lib.c,
	  tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.h:
	winedump: Add partial COFF library support.

	* dlls/mlang/Makefile.in, dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c:
	mlang: Implement LcidToRfc1766 and GetRfc1766FromLcid.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/reg.c:
	shlwapi: Make some data const.

	* dlls/oleaut32/oaidl_p.c, dlls/oleaut32/typelib.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/usrmarshal.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/variant.h:
	oleaut32: Make some data const and static.

	* dlls/ole32/compobj.c:
	ole32: Make some data const.

	* dlls/shell32/cpanelfolder.c, dlls/shell32/recyclebin.c,
	  dlls/shell32/shell.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shpolicy.c,
	  dlls/shell32/xdg.c:
	shell32: Make some data static and const.

	* dlls/user32/cursoricon.c, dlls/user32/spy.c, dlls/user32/static.c:
	user32: Make some data const.

	* dlls/kernel32/lzexpand.c:
	kernel32: Make some data const.

	* tools/winedump/debug.c, tools/winedump/pe.c:
	winedump: Make some data const.

	* dlls/kernel32/tests/loader.c:
	kernel32: Add more obscure PE images that XP is able to load.

2006-11-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Set the initial FBO depth stencil when creating the device.

	* dlls/wined3d/device.c:
	wined3d: Delete the device's FBO when destroying the device.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use the texture sampling function in a few more instructions (GLSL).

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Use the texture sampling function in a few more instructions (ARB
	asm shaders).

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix the texm3x3tex instruction to sample properly.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Create a separate function for sampling a texture.

	* dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Select the right shader backend when creating the device.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move some code specific to the different shader backends into the
	respective source files.

2006-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/appsearch.c:
	msi: Use MSI_IterateRecords in ACTION_AppSearch.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchIni.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchDr.

2006-11-28  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_SETPARAFORMAT use ME_RewrapRepaint instead of ME_UpdateRepaint.

	* dlls/riched20/editor.c:
	riched20: Make EM_SETCHARFORMAT call ME_RewrapRepaint instead of
	ME_UpdateRepaint.

	* dlls/riched20/editor.c:
	riched20: Make WM_SETFONT call RewrapRepaint instead of UpdateRepaint.

2006-11-27  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: EM_EXLIMITTEXT: ignore wParam and properly cast lParam.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Make ME_StreamIn create undos properly.

2006-11-27  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/De.rc:
	winecfg: Update German translation.

2006-11-27  Kai Blin <kai.blin@gmail.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add WS_SIO_ADDRESS_LIST_QUERY stub to make native dplay error output
	more readable.

2006-11-27  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/editor.c:
	mshtml: Add missing '\n' in Wine trace.

2006-11-27  Francois Gouget <fgouget@codeweavers.com>

	* programs/cmdlgtst/Pt.rc:
	cmdlgtst: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/oledlg/oledlg_Pt.rc:
	oledlg: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/regedit/Pt.rc:
	regedit: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/wineconsole/wineconsole_Pt.rc:
	wineconsole: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winefile/Pt.rc:
	winefile: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shell32/shell32_Pt.rc:
	shell32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shdocvw/Pt.rc:
	shdocvw: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winecfg/Pt.rc:
	winecfg: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/winmm/winmm_Pt.rc:
	winmm: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/wininet/wininet_Pt.rc:
	wininet: Add a Portuguese translation (contributed by Americo Jose Melo).

	* programs/winemine/Pt.rc:
	winemine: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/user32/resources/user32_Pt.rc:
	user32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/shlwapi/shlwapi_Pt.rc:
	shlwapi: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/msrle32/msrle_Pt.rc:
	msrle32: Add a Portuguese translation (contributed by Americo Jose Melo).

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Unset the WINESERVERSOCKET variable after we have retrieved it.

2006-11-27  Pierre d'Herbemont <pdherbemont@free.fr>

	* include/winsock.h:
	winsock: Get rid of already disabled WS prefix, thus fix Wine compilation
	on big-endian.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c, include/mswsock.h, include/winsock2.h:
	winsock: Add WS_ prefix on WSAIoctl constants.

2006-11-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Silence typedefs children in sub program block.

2006-11-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Added basic support for printing 64bit wide entities.

	* programs/winedbg/memory.c, programs/winedbg/types.c:
	winedbg: Host references lookup.
	Since more and more information in now available through the CPU
	registers, those require DLV_HOST access to be a bit better handled
	than it is...

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	winedbg: Various information printing issues.
	- in backtraces, (void) functions should be listed with '()' as arguments
	instead of ''
	- factorized code for diplaying information about a local/parameter
	- fixed a couple of bugs here
	- rewrote format specifiers for print commands (do no waste space for padding
	data)
	- added support for new wine's dbghelp extension for local/parameter
	variables being out of scope

	* dlls/dbghelp/elf_module.c:
	dbghelp: Removed the alpha status FIXME for the dwarf code.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Correctly store the addresses of blocks.
	They are stored internally as offsets to the start of the function
	which embeds the block.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Properly handle the void type in some declarations.

	* dlls/dbghelp/dwarf.c:
	dbghelp: We can now remove the default name prefix as all the non conforming
	cases have been eliminated.
	Got rid of dwarf2_find_name which is now useless.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Extend support for inlined functions and handle them as generic blocks
	inside functions
	(except for parameters which are converted into local variables).
	Rewrote dwarf2_find_attribute so that it takes into account the
	abstract origin information when available.
	A+

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/type.c:
	dbghelp: Be a bit more strict on where we do actually expect default names to
	be generated
	(removed this feature for UDTs, structures' fields, enums, typedefs, compilands)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add support for a label in a subprogram block.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Register numbers in OP_piece don't need to be next to each other.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add support for deref operation in location computation.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Add ability to add a SymTagCustom element to a function.
	Make use of it to store the frame information for a dwarf function
	(either because frame's location is a location list, or because one of
	the function's variables is not properly computed at parse time).

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c,
	  dlls/dbghelp/type.c:
	dbghelp: Function points location is now expressed as a struct location.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Added infrastructure to compute variable location at runtime (as
	opposed to debug info parse time).
	Use it to send the variables depending on not known frame register at parse time.
	Made just a stub for the location computation function for dwarf2.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Use the location info structure thoughout the code to handle the
	location of a data variable.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c:
	dbghelp: Added struct location to help computing a location.
	Make use of it in dwarf.c to handle correctly variable location computation.
	Split code to handle both location with parse time computation
	(current code) and yet to come run-time computation

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/module.c:
	dbghelp: Pass .debug_loc section info from the ELF loader to the dwarf parser.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Store compiland's address in internal structures.

	* dlls/dbghelp/symbol.c:
	dbghelp: When looking up for a local variable (or parameter), pass the function
	pointer.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Added a process field to the modules pair structure.
	This makes the code simpler to read, a bit more efficient, and
	furthermore it'll be needed in future patches.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Simplify code with function to get section size.

2006-11-26  Kirill K. Smirnov <lich@math.spbu.ru>

	* dlls/ole32/storage32.c:
	ole32: Fix logic in Storage32Impl_SmallBlocksToBigBlocks function.

2006-11-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/crypt32/tests/main.c:
	crypt32: Add test for I_CryptInstallOssGlobal.

	* dlls/crypt32/main.c:
	crypt32: Better stub for I_CryptInstallOssGlobal.

2006-11-24  Vitaliy Margolen <wine-patches@kievinfo.com>

	* tools/wineshelllink:
	wineshelllink: Use FreeDesktop standard to create Wine menu structure.

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Downgrade some ERR to WARN.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi32/tests/bitmap.c, dlls/winex11.drv/dib.c:
	winex11.drv: Don't use the specified DC when mapping RGB colors for a DIB.
	The DC palette only matters for DIB_PAL_COLORS.

2006-11-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/pen.c:
	winex11.drv: Cast-qual warnings fix.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Cast-qual warnings fix.

	* dlls/winex11.drv/clipboard.c:
	winex11.drv: Cast-qual warnings fix.

2006-11-25  Vitaliy Margolen <wine-patches@kievinfo.com>

	* dlls/winex11.drv/mouse.c:
	winex11drv: State of side mouse buttons (X-buttons) is not returned from
	XQueryPointer.

2006-11-10  Francois Gouget <fgouget@codeweavers.com>

	* programs/winepath/winepath.c:
	winepath: Fix --unix so it works whether the Windows path refers to an existing
	file/directory or not.

2006-11-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/gphoto2.ds/gphoto2_i.h:
	gphoto2.ds: Don't warn about libjpeg if gphoto support is not enabled.

2006-11-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Unify pixel format code.

2006-11-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchReg.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchComponents.

	* dlls/msi/appsearch.c:
	msi: Use MSI_QueryGetRecord in ACTION_AppSearchGetSignature.

	* dlls/msi/package.c:
	msi: Use MSI_IterateRecords when cloning properties.

2006-11-25  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/paint.c:
	riched20: Only send EN_CHANGE when it is supposed to be sent.

2006-11-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/winedump/symbol.c:
	winedump: Constify some data.

	* tools/winedump/lnk.c:
	winedump: Fix a copy/paste typo.

	* tools/winedump/le.c:
	winedump: Remove a not needed include.

	* tools/winedump/dump.c:
	winedump: Make the implementation match the prototype.

	* include/winnt.h:
	include: Add some structures a definitions required for the COFF library dumper.

2006-11-26  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/oleview/No.rc, programs/oleview/rsrc.rc:
	oleview: Add Norwegian Bokmål translation.

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål translation.

2006-11-26  Kevin Koltzau <kevin@plop.org>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Process browser and multimedia key events.

	* dlls/user32/defwnd.c, dlls/user32/message.c:
	user32: Generate WM_APPCOMMAND messages for browser and multimedia keys.

	* include/winuser.h:
	winuser.h: Add some HSHELL and APPCOMMAND defines.

	* dlls/user32/spy.c, include/winuser.h:
	winuser.h: Define browser and multimedia keys.

2006-11-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/loader.c:
	kernel32: Improve the PE loader test.

2006-11-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Cast-qual warnings fix.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Cast-qual warnings fix.

	* dlls/wined3d/baseshader.c:
	wined3d: Cast-qual warnings fix.

2006-11-24  Francois Gouget <fgouget@codeweavers.com>

	* dlls/msi/msi_Pt.rc:
	msi: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/msacm32/msacm_Pt.rc:
	msacm32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/mpr/mpr_Pt.rc:
	mpr: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/comdlg32/cdlg_Pt.rc:
	comdlg32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/comctl32/comctl_Pt.rc:
	comctl32: Add a Portuguese translation (contributed by Americo Jose Melo).

	* dlls/avifil32/avifile_Pt.rc:
	avifil32: Add a Portuguese translation (contributed by Americo Jose Melo).

2006-11-24  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.26.

----------------------------------------------------------------
2006-11-22  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/device.c:
	d3d: Fix partially applied patch: Remove AddRef from GetDirect3D.

2006-11-24  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Simplify the code that finds the offset of the given linux event.

2006-11-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/oleaut.c:
	oleaut32: Protect against integer overflow in SysAllocStringLen.

2006-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/msvcrt/tests/data.c:
	msvcrt/tests: We cannot link with _initterm() with Visual C++, so we have to
	load it dynamically.

2006-11-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/wineoss/dscapture.c:
	winmm/wineoss: Cast-qual warning fix.

	* dlls/ws2_32/socket.c:
	ws2_32: Cast-qual warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Cast-qual warning fix + make function static.

2006-11-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for DeletePort.

	* dlls/localspl/localmon.c:
	localspl: Implement DeletePort.

2006-11-24  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Remove test that crashes on systems with IE7.

2006-11-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/editor.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_FONTSIZE) implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added missing break.

2006-11-23  Marcus Meissner <marcus@jet.franken.de>

	* dlls/kernel32/tests/codepage.c:
	kernel32/tests: Test -1 length for NULL ptr too.

2006-11-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/comdlg32/cdlg_Pt.rc:
	comdlg32: Moved a FIXME out of the user-visible string.

	* dlls/serialui/Pt.rc:
	serialui: Update the Portuguese translation (contributed by Americo Jose Melo).

	* programs/notepad/Pt.rc, programs/progman/Pt.rc, programs/start/Pt.rc,
	  programs/view/Pt.rc, programs/winhelp/Pt.rc:
	programs: Update the Portuguese translation (contributed by Americo Jose Melo).

	* dlls/avifil32/avifile_Pt.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/mpr/mpr_Pt.rc,
	  dlls/msacm32/msacm_Pt.rc, dlls/msi/msi_Pt.rc,
	  dlls/msrle32/msrle_Pt.rc, dlls/oleaut32/oleaut32_No.rc,
	  dlls/oleaut32/oleaut32_Pt.rc, dlls/oledlg/oledlg_Pt.rc,
	  dlls/shdocvw/Pt.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/user32/resources/user32_Pt.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/winmm/winmm_Pt.rc, programs/winecfg/Pt.rc,
	  programs/wineconsole/wineconsole_Pt.rc:
	Replace SUBLANG_DEFAULT with the specific SUBLANG_XXX constant for languages
	that have multiple sublanguages.

2006-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/user32/tests/dce.c, dlls/user32/tests/menu.c,
	  dlls/user32/tests/win.c:
	user32/tests: Remove unneeded NONAMELESS* macros.

	* dlls/msvcrt/tests/data.c, dlls/msvcrt/tests/file.c:
	msvcrt/tests: The tests must not include msvcrt.h because it contains
	declarations that may be incompatible with the PSDK headers.

	* dlls/comctl32/tests/dpa.c:
	comctl32/tests: Fix the CheckDPA() tests.
	There is no guarantee that the compiler will compute the function arguments
	in left-to-right order.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Remove unneeded NONAMELESS* macros.

	* dlls/shell32/tests/string.c:
	shell32/tests: Don't use the NONAMELESS* macros in the tests.

	* dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c:
	mapi32/tests: Remove unneeded NONAMELESS* macros.

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound/tests: Remove unneeded NONAMELESS* macros.

	* dlls/dinput/tests/joystick.c, dlls/dinput/tests/keyboard.c,
	  dlls/dinput/tests/mouse.c:
	dinput/tests: Remove unneeded NONAMELESS* macros.

	* dlls/comctl32/tests/propsheet.c:
	comctl32/tests: Don't use the NONAMELESS* macros in the tests.

2006-11-22  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove unused parameters from SHELL_FindExecutableByOperation().

2006-11-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Update Korean resource.

2006-11-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/playsound.c:
	winmm: Cast-qual warnings fix.

	* dlls/winmm/mci.c:
	winmm: Cast-qual warnings fix.

2006-11-20  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Use 'start.exe' to launch non .exe files.

2006-11-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/internet.c:
	wininet: Cast-qual warnings fix.

2006-11-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Treat the SourceDir folder the same as TargetDir.

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h:
	msi: Load all folders in one query, rather one per query.

2006-11-21  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/kernel32/locale.c:
	kernel32: Restore C locale for LC_NUMERIC.

2006-11-20  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/swapchain.c, dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c:
	d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetIndices.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetTexture.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/ddraw/ddraw.c, dlls/wined3d/swapchain.c:
	d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.

2006-11-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Only wait for custom actions that don't have msidbCustomActionTypeContinue
	specified.

	* dlls/msi/custom.c:
	msi: Split process_action_return_value into two different functions.

	* dlls/msi/custom.c:
	msi: Remove an unused parameter.

2006-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/static.c:
	user32: Restore the len == 0 check which got lost in a previous patch.

2006-11-21  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/hglobalstream.c, dlls/ole32/marshal.c,
	  dlls/ole32/memlockbytes.c, dlls/ole32/memlockbytes16.c:
	ole32: Spelling fixes.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: CoGetInterfaceAndReleaseStream shouldn't crash when passed a NULL stream.

2006-11-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shell32/systray.c:
	shell32: Pass number of wide chars, not bytes as last argument to MBtoWC().

2006-11-21  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: RPC_C_AUTHN_LEVEL_NONE and RPC_C_AUTHN_LEVEL_DEFAULT are
	handled at the binding level now instead of the message level, so
	remove this special handling in RPCRT4_Send.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Allow applications to specify authentication levels other than connect
	in RpcBindingSetAuthInfoA/W.
	Map the default authentication level and service to sane values.
	Don't create an RpcAuthInfo object if RPC_C_AUTHN_LEVEL_NONE is specified.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Setting the needs_close flag in server_get_unix_fd got lost in the
	previous change.

2006-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/static.c, dlls/user32/tests/msg.c:
	user32: Add a rudimentary WM_SETFONT message test for the static control,
	make it pass under Wine.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/tooltips.c:
	comctl32: Remove invalid NULL check.

2006-11-21  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/ntdll/tests/string.c:
	ntdll: Remove unused variables.

	* dlls/ntdll/tests/string.c:
	ntdll: Use intended variable.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove tests that crash on XP and W2K3.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove unused variables.

	* dlls/ntdll/tests/string.c:
	ntdll: Remove tests that crash on XP and W2K3.

2006-11-19  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/Cs.rc, programs/winecfg/It.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	winecfg: Remove some old dead code and associated language resources.

	* programs/winecfg/Ru.rc:
	winecfg: Update Russian translation.

2006-11-19  Matthew Kehrer <kehrermatt@gmail.com>

	* include/.gitignore, include/Makefile.in, include/ocmm.idl:
	mshtml: Add basic support for ITimer interface.

2006-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/dde_client.c, dlls/user32/dde_misc.c,
	  dlls/user32/dde_private.h, dlls/user32/dde_server.c:
	user32: Add support for DdeEnableCallback(EC_DISABLE) command.

2006-11-21  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/reader.c:
	riched20: Simplify an array size calculation.

	* dlls/msi/helpers.c, dlls/msi/tests/format.c:
	msi: Fix use of integer fields in MsiFormatRecord.

	* dlls/msi/record.c, dlls/msi/tests/record.c:
	msi: Test MsiRecordGetString on an integer record fields with a NULL output
	buffer.

	* dlls/msi/tests/format.c:
	msi: Add a test for formatting records with strings.

	* dlls/msi/dialog.c:
	msi: Don't access the list of controls after the dialog is destroyed.

	* dlls/msi/dialog.c:
	msi: Create a function to free control data.

	* dlls/msi/dialog.c:
	msi: Fix an access after freeing memory.

2006-11-20  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/wineconsole/wineconsole_No.rc:
	wineconsole: Updated Norwegian Bokmål translation.

	* programs/regedit/No.rc:
	regedit: Updated Norwegian Bokmål translation.

2006-11-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user32/tests/msg.c:
	user32: Add some optional messages to the button message test.

2006-11-20  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Set the result to IDOK on 'Finish'.

2006-11-21  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/audio.c:
	winecfg: Don't try to load the arts driver, the arts library is too buggy.

2006-11-18  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/theme.c:
	winecfg: Add ability to change colors and non-client sizes.

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc:
	winecfg: Move controls on "Desktop Integration" tab to make more room for the
	next patch.

2006-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Don't bother with async I/O on regular files.

	* dlls/ntdll/cdrom.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/tape.c, dlls/ntdll/virtual.c:
	ntdll: Store the fd type in the cache and return it in server_get_unix_fd.

	* include/wine/server_protocol.h, server/change.c, server/fd.c,
	  server/file.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/protocol.def, server/serial.c, server/sock.c, server/trace.c:
	server: Return an fd type in the get_handle_fd request.

2006-11-19  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/kernel32/nls/nor.nls, dlls/localspl/localspl.rc,
	  dlls/localspl/spl_No.rc, dlls/oledlg/oledlg_No.rc:
	Updated Norwegian Bokmål translations.

2006-11-17  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Correct the count of characters matching with layout.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Enable code for picking layout-independent vkey as second pass.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Changed indenting of some dead code.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Move some dead code from inside a loop to just after the loop.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Replace no-longer-existent VK_A, VK_Z, VK_0, and VK_9 constants.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Track which vkeys have already been assigned to keycodes.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Reset the keyc2vkey table to empty before rebuilding it.

2006-11-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split msi_set_sourcedir_props into a separate function.

	* dlls/msi/action.c:
	msi: Spelling fixes.

	* dlls/msi/tests/package.c:
	msi: Add another test for the SourceDir property.

	* dlls/msi/files.c:
	msi: Clean up parameters of msi_media_get_disk_info().

	* dlls/msi/files.c:
	msi: Fix some memory leaks.

	* dlls/msi/files.c:
	msi: Don't leak row handles.

2006-11-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel32/tests/path.c:
	kernel32/tests: Avoid crash on Win95 (GetLongPathNameW).

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Load tests on Win9x again (VirtualAllocEx+VirtualFreeEx).

2006-11-18  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add setupapi to fake dlls.

2006-11-18  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Only copy the depth buffer if there is one.

	* dlls/wined3d/device.c:
	wined3d: Make sure render target textures aren't bound when we start drawing.

	* dlls/wined3d/device.c:
	wined3d: Support cube map FBO attachments.

	* dlls/wined3d/baseshader.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Fix GL_ARB_texture_cube_map extension support.

2006-11-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/message16.c:
	winmm: Avoid using sizeof() in traces.

2006-11-17  James Hawkins <truiken@gmail.com>

	* dlls/kernel32/lzexpand.c:
	kernel32: Replace magic numbers with descriptive defines.

2006-11-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user32/hook.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/edit.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/dialog.c:
	user32: Cast-qual warnings fix.

	* dlls/user32/dde_client.c:
	user32: Cast-qual warnings fix.

2006-11-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/tape.c:
	ntdll: Converted bitmask into TRUE/FALSE.

	* dlls/kernel32/locale.c:
	kernel32: Added missing shift by 8.

2006-11-17  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Allow the depth buffer to be shared between onscreen and offscreen
	rendering modes.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add FBO support for offscreen rendering.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Make the offscreen render mode a registry setting.

	* dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Fix depth buffer formats to use actual depth textures.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rename renderUpsideDown to render_offscreen.

2006-11-17  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c:
	msxml3: Implement createElement.

2006-11-17  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/tests/query.c:
	setupapi: Add tests for SetupGet{SourceFileLocation, SourceInfo, TargetPath}.

2006-11-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl:
	mshtml: Remove nscstring and nscwstring typedefs.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmlstylesheet.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added semi-stub createStyleSheet implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added put_fontSize implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added put_backgroundColor implementation.

	* dlls/mshtml/htmlstyle.c:
	mshtml: Added put_fontFamily implementation.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlstyle.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Store nsIDOMCSSStyleDeclaration in HTMLStyle.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlstyle.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added get_style implementation.

2006-11-17  Alexandre Julliard <julliard@winehq.org>

	* include/Makefile.in:
	include: Install adshlp.h too.

	* dlls/wineps.drv/escape.c, dlls/wineps.drv/init.c,
	  dlls/winspool.drv/info.c, include/heap.h:
	include: Get rid of heap.h.

	* dlls/gdi32/bidi.c, dlls/gdi32/bitblt.c, dlls/gdi32/bitmap.c,
	  dlls/gdi32/brush.c, dlls/gdi32/clipping.c, dlls/gdi32/dc.c,
	  dlls/gdi32/dib.c, dlls/gdi32/driver.c, dlls/gdi32/enhmetafile.c,
	  dlls/gdi32/enhmfdrv/bitblt.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/graphics.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/enhmfdrv/objects.c, dlls/gdi32/env.c, dlls/gdi32/font.c,
	  dlls/gdi32/freetype.c, dlls/gdi32/gdi16.c, dlls/gdi32/gdi_main.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c, dlls/gdi32/mapping.c,
	  dlls/gdi32/metafile.c, dlls/gdi32/metafile16.c,
	  dlls/gdi32/mfdrv/bitblt.c, dlls/gdi32/mfdrv/graphics.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/mfdrv/mapping.c,
	  dlls/gdi32/mfdrv/metafiledrv.h, dlls/gdi32/mfdrv/objects.c,
	  dlls/gdi32/opengl.c, dlls/gdi32/painting.c, dlls/gdi32/palette.c,
	  dlls/gdi32/path.c, dlls/gdi32/pen.c, dlls/gdi32/printdrv.c,
	  dlls/gdi32/region.c, dlls/gdi32/wing.c, dlls/winex11.drv/x11ddraw.c,
	  dlls/winex11.drv/xrender.c, include/gdi.h, include/wingdi.h:
	gdi32: Get rid of the gdi.h include.

	* dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h, include/gdi.h:
	gdi32: Stop exporting GDI_GetObjPtr and GDI_ReleaseObj.

	* dlls/winex11.drv/palette.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Store the palette mapping in an X context instead of the GDI object.

	* dlls/gdi32/driver.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/gdi_private.h, dlls/gdi32/mfdrv/init.c,
	  dlls/gdi32/palette.c, include/gdi.h:
	gdi32: Get rid of the palette mapping handling and leave it up to the driver.

	* dlls/winex11.drv/palette.c:
	winex11.drv: Abstract accesses to the palette color mapping.

	* dlls/winex11.drv/palette.c:
	winex11.drv: Avoid some direct accesses to the PALETTEOBJ structure.

	* dlls/gdi32/palette.c, dlls/winex11.drv/palette.c, include/gdi.h:
	gdi32: Moved the system palette flags to winex11.drv.

	* dlls/gdi32/dib.c:
	gdi32: Avoid accessing the internal palette object from dib.c.

	* dlls/d3d9/d3d9_private.h:
	d3d9: Include wingdi.h, not gdi.h.

2006-11-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Cast-qual warnings fix.

2006-11-16  Vitaliy Margolen <wine-patches@kievinfo.com>

	* programs/winecfg/drive.c:
	winecfg: Allow editing of broken drive links.

2006-11-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Add _fstat64 and _stat64 to msvcrt.spec.

2006-11-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix a memory leak in load_folder().

	* dlls/msi/custom.c:
	msi: Remove unnecessary includes.

	* dlls/msi/helpers.c:
	msi: Remove a level of indent in resolve_folder().

	* dlls/msi/tests/package.c:
	msi: Add a test showing the _Properties table is a bit strange.

	* dlls/msi/tests/db.c:
	msi: Add a test showing which tables are special.

	* dlls/msi/helpers.c:
	msi: Remove some redundant else statements.

2006-11-16  Kevin Koltzau <kevin@plop.org>

	* tools/winedump/pe.c:
	winedump: Print new DLL characteristics.

	* include/winnt.h:
	winnt.h: Add AMD64 relocation types.

	* include/winnt.h:
	winnt.h: Add defines for new DLL characteristics.

2006-11-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/pi.c:
	msxml3: Implement createProcessingInstruction with a stub PI object.

2006-11-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/lcformat.c, dlls/kernel32/locale.c, dlls/kernel32/time.c:
	kernel32: Use the appropriate Unix locale for GetLocaleInfo when a default
	LCID is used.
	For instance LOCALE_SDATE is looked up in the lcid corresponding to
	LC_TIME, LOCALE_IDIGITS in the LC_NUMERIC lcid, etc.

	* dlls/kernel32/nls/afk.nls, dlls/kernel32/nls/ara.nls,
	  dlls/kernel32/nls/arb.nls, dlls/kernel32/nls/are.nls,
	  dlls/kernel32/nls/arg.nls, dlls/kernel32/nls/arh.nls,
	  dlls/kernel32/nls/ari.nls, dlls/kernel32/nls/arj.nls,
	  dlls/kernel32/nls/ark.nls, dlls/kernel32/nls/arl.nls,
	  dlls/kernel32/nls/arm.nls, dlls/kernel32/nls/aro.nls,
	  dlls/kernel32/nls/arq.nls, dlls/kernel32/nls/ars.nls,
	  dlls/kernel32/nls/art.nls, dlls/kernel32/nls/aru.nls,
	  dlls/kernel32/nls/ary.nls, dlls/kernel32/nls/aze.nls,
	  dlls/kernel32/nls/azl.nls, dlls/kernel32/nls/bel.nls,
	  dlls/kernel32/nls/bgr.nls, dlls/kernel32/nls/brf.nls,
	  dlls/kernel32/nls/cat.nls, dlls/kernel32/nls/chs.nls,
	  dlls/kernel32/nls/cht.nls, dlls/kernel32/nls/cor.nls,
	  dlls/kernel32/nls/csy.nls, dlls/kernel32/nls/cym.nls,
	  dlls/kernel32/nls/dan.nls, dlls/kernel32/nls/dea.nls,
	  dlls/kernel32/nls/dec.nls, dlls/kernel32/nls/del.nls,
	  dlls/kernel32/nls/des.nls, dlls/kernel32/nls/deu.nls,
	  dlls/kernel32/nls/div.nls, dlls/kernel32/nls/ell.nls,
	  dlls/kernel32/nls/ena.nls, dlls/kernel32/nls/enb.nls,
	  dlls/kernel32/nls/enc.nls, dlls/kernel32/nls/eng.nls,
	  dlls/kernel32/nls/eni.nls, dlls/kernel32/nls/enj.nls,
	  dlls/kernel32/nls/enl.nls, dlls/kernel32/nls/enp.nls,
	  dlls/kernel32/nls/ens.nls, dlls/kernel32/nls/ent.nls,
	  dlls/kernel32/nls/enu.nls, dlls/kernel32/nls/enw.nls,
	  dlls/kernel32/nls/enz.nls, dlls/kernel32/nls/eox.nls,
	  dlls/kernel32/nls/esa.nls, dlls/kernel32/nls/esb.nls,
	  dlls/kernel32/nls/esc.nls, dlls/kernel32/nls/esd.nls,
	  dlls/kernel32/nls/ese.nls, dlls/kernel32/nls/esf.nls,
	  dlls/kernel32/nls/esg.nls, dlls/kernel32/nls/esh.nls,
	  dlls/kernel32/nls/esi.nls, dlls/kernel32/nls/esl.nls,
	  dlls/kernel32/nls/esm.nls, dlls/kernel32/nls/esn.nls,
	  dlls/kernel32/nls/eso.nls, dlls/kernel32/nls/esp.nls,
	  dlls/kernel32/nls/esr.nls, dlls/kernel32/nls/ess.nls,
	  dlls/kernel32/nls/esu.nls, dlls/kernel32/nls/esv.nls,
	  dlls/kernel32/nls/esy.nls, dlls/kernel32/nls/esz.nls,
	  dlls/kernel32/nls/eti.nls, dlls/kernel32/nls/euq.nls,
	  dlls/kernel32/nls/far.nls, dlls/kernel32/nls/fin.nls,
	  dlls/kernel32/nls/fos.nls, dlls/kernel32/nls/fra.nls,
	  dlls/kernel32/nls/frb.nls, dlls/kernel32/nls/frc.nls,
	  dlls/kernel32/nls/frl.nls, dlls/kernel32/nls/frm.nls,
	  dlls/kernel32/nls/frs.nls, dlls/kernel32/nls/gae.nls,
	  dlls/kernel32/nls/gdh.nls, dlls/kernel32/nls/gdv.nls,
	  dlls/kernel32/nls/glc.nls, dlls/kernel32/nls/guj.nls,
	  dlls/kernel32/nls/heb.nls, dlls/kernel32/nls/hin.nls,
	  dlls/kernel32/nls/hrv.nls, dlls/kernel32/nls/hun.nls,
	  dlls/kernel32/nls/hye.nls, dlls/kernel32/nls/ind.nls,
	  dlls/kernel32/nls/isl.nls, dlls/kernel32/nls/ita.nls,
	  dlls/kernel32/nls/its.nls, dlls/kernel32/nls/jpn.nls,
	  dlls/kernel32/nls/kan.nls, dlls/kernel32/nls/kat.nls,
	  dlls/kernel32/nls/kkz.nls, dlls/kernel32/nls/knk.nls,
	  dlls/kernel32/nls/kor.nls, dlls/kernel32/nls/kyr.nls,
	  dlls/kernel32/nls/lth.nls, dlls/kernel32/nls/lvi.nls,
	  dlls/kernel32/nls/mar.nls, dlls/kernel32/nls/mki.nls,
	  dlls/kernel32/nls/mon.nls, dlls/kernel32/nls/msb.nls,
	  dlls/kernel32/nls/msl.nls, dlls/kernel32/nls/nlb.nls,
	  dlls/kernel32/nls/nld.nls, dlls/kernel32/nls/nls.nls,
	  dlls/kernel32/nls/non.nls, dlls/kernel32/nls/nor.nls,
	  dlls/kernel32/nls/pan.nls, dlls/kernel32/nls/plk.nls,
	  dlls/kernel32/nls/ptb.nls, dlls/kernel32/nls/ptg.nls,
	  dlls/kernel32/nls/rom.nls, dlls/kernel32/nls/rus.nls,
	  dlls/kernel32/nls/san.nls, dlls/kernel32/nls/sky.nls,
	  dlls/kernel32/nls/slv.nls, dlls/kernel32/nls/sqi.nls,
	  dlls/kernel32/nls/srb.nls, dlls/kernel32/nls/srl.nls,
	  dlls/kernel32/nls/sve.nls, dlls/kernel32/nls/svf.nls,
	  dlls/kernel32/nls/swk.nls, dlls/kernel32/nls/syr.nls,
	  dlls/kernel32/nls/tam.nls, dlls/kernel32/nls/tel.nls,
	  dlls/kernel32/nls/tha.nls, dlls/kernel32/nls/trk.nls,
	  dlls/kernel32/nls/ttt.nls, dlls/kernel32/nls/ukr.nls,
	  dlls/kernel32/nls/urd.nls, dlls/kernel32/nls/uzb.nls,
	  dlls/kernel32/nls/uzl.nls, dlls/kernel32/nls/vit.nls,
	  dlls/kernel32/nls/wal.nls, dlls/kernel32/nls/zhh.nls,
	  dlls/kernel32/nls/zhi.nls, dlls/kernel32/nls/zhm.nls:
	kernel32: Added the locale name entry to all locale definitions.

	* dlls/kernel32/locale.c, include/winnls.h:
	kernel32: Rewrote the locale matching to match more elements and to support
	Windows-format locale names.
	Added implementation for LocaleNameToLCID and LCIDToLocaleName.

2006-11-16  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: CoRegisterMessageFilter shouldn't crash on an uninitialized apartment.

2006-11-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/xdg.c:
	shell32: Fix a function name in a comment.

2006-11-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/loader.c:
	kernel32: Add a basic PE loader test.

2006-11-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec, include/setupapi.h:
	setupapi: Implement SetupGetTargetPath{A,W}.

2006-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add test for ConfigurePortW.

2006-11-16  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/user/Makefile.in, dlls/user/bidi16.c, dlls/user/button.c,
	  dlls/user/caret.c, dlls/user/class.c, dlls/user/clipboard.c,
	  dlls/user/combo.c, dlls/user/comm16.c, dlls/user/controls.h,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_private.h, dlls/user/dde_server.c,
	  dlls/user/ddeml.spec, dlls/user/ddeml16.c, dlls/user/defdlg.c,
	  dlls/user/defwnd.c, dlls/user/desktop.c, dlls/user/dialog.c,
	  dlls/user/dialog16.c, dlls/user/display.c,
	  dlls/user/display.drv.spec, dlls/user/driver.c, dlls/user/driver16.c,
	  dlls/user/edit.c, dlls/user/exticon.c, dlls/user/focus.c,
	  dlls/user/hook.c, dlls/user/hook16.c, dlls/user/icontitle.c,
	  dlls/user/input.c, dlls/user/kbd16.c, dlls/user/keyboard.drv.spec,
	  dlls/user/listbox.c, dlls/user/lstr.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/misc.c,
	  dlls/user/mouse.drv.spec, dlls/user/mouse16.c, dlls/user/msg16.c,
	  dlls/user/msgbox.c, dlls/user/network.c, dlls/user/nonclient.c,
	  dlls/user/painting.c, dlls/user/property.c, dlls/user/resource.c,
	  dlls/user/resources/display.rc, dlls/user/resources/mouse.rc,
	  dlls/user/resources/user32.rc, dlls/user/resources/user32_Bg.rc,
	  dlls/user/resources/user32_Ca.rc, dlls/user/resources/user32_Cs.rc,
	  dlls/user/resources/user32_Da.rc, dlls/user/resources/user32_De.rc,
	  dlls/user/resources/user32_En.rc, dlls/user/resources/user32_Eo.rc,
	  dlls/user/resources/user32_Es.rc, dlls/user/resources/user32_Fi.rc,
	  dlls/user/resources/user32_Fr.rc, dlls/user/resources/user32_Hu.rc,
	  dlls/user/resources/user32_It.rc, dlls/user/resources/user32_Ja.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/user/resources/user32_No.rc, dlls/user/resources/user32_Pl.rc,
	  dlls/user/resources/user32_Pt.rc, dlls/user/resources/user32_Ru.rc,
	  dlls/user/resources/user32_Si.rc, dlls/user/resources/user32_Sk.rc,
	  dlls/user/resources/user32_Sv.rc, dlls/user/resources/user32_Tr.rc,
	  dlls/user/resources/user32_Uk.rc, dlls/user/resources/user32_Wa.rc,
	  dlls/user/resources/user32_Zh.rc, dlls/user/resources/user32_bin.rc,
	  dlls/user/resources/version.rc, dlls/user/resources/version16.rc,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/tests/Makefile.in,
	  dlls/user/tests/class.c, dlls/user/tests/clipboard.c,
	  dlls/user/tests/cursoricon.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/generated.c,
	  dlls/user/tests/input.c, dlls/user/tests/listbox.c,
	  dlls/user/tests/menu.c, dlls/user/tests/monitor.c,
	  dlls/user/tests/msg.c, dlls/user/tests/resource.c,
	  dlls/user/tests/resource.rc, dlls/user/tests/sysparams.c,
	  dlls/user/tests/text.c, dlls/user/tests/win.c,
	  dlls/user/tests/winstation.c, dlls/user/tests/wsprintf.c,
	  dlls/user/text.c, dlls/user/uitools.c, dlls/user/user.exe.spec,
	  dlls/user/user16.c, dlls/user/user32.spec, dlls/user/user_main.c,
	  dlls/user/user_private.h, dlls/user/win.c, dlls/user/winhelp.c,
	  dlls/user/winpos.c, dlls/user/winproc.c, dlls/user/winproc.h,
	  dlls/user/winstation.c, dlls/user/wnd16.c, dlls/user/wsprintf.c,
	  dlls/user32/Makefile.in, dlls/user32/bidi16.c, dlls/user32/button.c,
	  dlls/user32/caret.c, dlls/user32/class.c, dlls/user32/clipboard.c,
	  dlls/user32/combo.c, dlls/user32/comm16.c, dlls/user32/controls.h,
	  dlls/user32/cursoricon.c, dlls/user32/dde_client.c,
	  dlls/user32/dde_misc.c, dlls/user32/dde_private.h,
	  dlls/user32/dde_server.c, dlls/user32/ddeml.spec,
	  dlls/user32/ddeml16.c, dlls/user32/defdlg.c, dlls/user32/defwnd.c,
	  dlls/user32/desktop.c, dlls/user32/dialog.c, dlls/user32/dialog16.c,
	  dlls/user32/display.c, dlls/user32/display.drv.spec,
	  dlls/user32/driver.c, dlls/user32/driver16.c, dlls/user32/edit.c,
	  dlls/user32/exticon.c, dlls/user32/focus.c, dlls/user32/hook.c,
	  dlls/user32/hook16.c, dlls/user32/icontitle.c, dlls/user32/input.c,
	  dlls/user32/kbd16.c, dlls/user32/keyboard.drv.spec,
	  dlls/user32/listbox.c, dlls/user32/lstr.c, dlls/user32/mdi.c,
	  dlls/user32/menu.c, dlls/user32/message.c, dlls/user32/misc.c,
	  dlls/user32/mouse.drv.spec, dlls/user32/mouse16.c,
	  dlls/user32/msg16.c, dlls/user32/msgbox.c, dlls/user32/network.c,
	  dlls/user32/nonclient.c, dlls/user32/painting.c,
	  dlls/user32/property.c, dlls/user32/resource.c,
	  dlls/user32/resources/display.rc, dlls/user32/resources/mouse.rc,
	  dlls/user32/resources/user32.rc, dlls/user32/resources/user32_Bg.rc,
	  dlls/user32/resources/user32_Ca.rc,
	  dlls/user32/resources/user32_Cs.rc,
	  dlls/user32/resources/user32_Da.rc,
	  dlls/user32/resources/user32_De.rc,
	  dlls/user32/resources/user32_En.rc,
	  dlls/user32/resources/user32_Eo.rc,
	  dlls/user32/resources/user32_Es.rc,
	  dlls/user32/resources/user32_Fi.rc,
	  dlls/user32/resources/user32_Fr.rc,
	  dlls/user32/resources/user32_Hu.rc,
	  dlls/user32/resources/user32_It.rc,
	  dlls/user32/resources/user32_Ja.rc,
	  dlls/user32/resources/user32_Ko.rc,
	  dlls/user32/resources/user32_Nl.rc,
	  dlls/user32/resources/user32_No.rc,
	  dlls/user32/resources/user32_Pl.rc,
	  dlls/user32/resources/user32_Pt.rc,
	  dlls/user32/resources/user32_Ru.rc,
	  dlls/user32/resources/user32_Si.rc,
	  dlls/user32/resources/user32_Sk.rc,
	  dlls/user32/resources/user32_Sv.rc,
	  dlls/user32/resources/user32_Tr.rc,
	  dlls/user32/resources/user32_Uk.rc,
	  dlls/user32/resources/user32_Wa.rc,
	  dlls/user32/resources/user32_Zh.rc,
	  dlls/user32/resources/user32_bin.rc,
	  dlls/user32/resources/version.rc, dlls/user32/resources/version16.rc,
	  dlls/user32/scroll.c, dlls/user32/spy.c, dlls/user32/static.c,
	  dlls/user32/sysparams.c, dlls/user32/tests/Makefile.in,
	  dlls/user32/tests/class.c, dlls/user32/tests/clipboard.c,
	  dlls/user32/tests/cursoricon.c, dlls/user32/tests/dce.c,
	  dlls/user32/tests/dde.c, dlls/user32/tests/dialog.c,
	  dlls/user32/tests/edit.c, dlls/user32/tests/generated.c,
	  dlls/user32/tests/input.c, dlls/user32/tests/listbox.c,
	  dlls/user32/tests/menu.c, dlls/user32/tests/monitor.c,
	  dlls/user32/tests/msg.c, dlls/user32/tests/resource.c,
	  dlls/user32/tests/resource.rc, dlls/user32/tests/sysparams.c,
	  dlls/user32/tests/text.c, dlls/user32/tests/win.c,
	  dlls/user32/tests/winstation.c, dlls/user32/tests/wsprintf.c,
	  dlls/user32/text.c, dlls/user32/uitools.c, dlls/user32/user.exe.spec,
	  dlls/user32/user16.c, dlls/user32/user32.spec,
	  dlls/user32/user_main.c, dlls/user32/user_private.h,
	  dlls/user32/win.c, dlls/user32/winhelp.c, dlls/user32/winpos.c,
	  dlls/user32/winproc.c, dlls/user32/winproc.h,
	  dlls/user32/winstation.c, dlls/user32/wnd16.c,
	  dlls/user32/wsprintf.c, programs/winetest/Makefile.in,
	  tools/winapi/tests.dat:
	user32: Renamed the user/ directory to user32.

2006-11-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d9/tests/device.c:
	d3d9: Forward port d3d8 refcount tests.

	* dlls/d3d8/tests/device.c:
	d3d8: Show that the implicit surfaces are not freed if refcount reaches 0.

2006-11-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/ordinal.c:
	shlwapi: Cast-qual warnings fix.

	* dlls/shlwapi/clist.c:
	shlwapi: Cast-qual warnings fix.

2006-11-16  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define a few more icon resources.

2006-11-16  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/ungif.h:
	oleaut32: Remove incorrect references to malloc.

	* dlls/kernel32/process.c:
	kernel32: Downgrade a FIXME to a WARN.

2006-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c:
	localspl: Replace number with a defined value (static buffer size).

	* dlls/localspl/localmon.c, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_De.rc, dlls/localspl/spl_En.rc,
	  dlls/localspl/spl_Ko.rc:
	localspl: Implement ConfigurePort.

2006-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/dde_client.c, dlls/user/dde_misc.c, dlls/user/dde_private.h,
	  dlls/user/dde_server.c:
	user: Use DDE critical section exclusively for instance list protection.

	* dlls/user/dde_client.c, dlls/user/dde_misc.c, dlls/user/dde_server.c:
	user: Set DDE errors in some failing cases.

2006-11-13  Clinton Stimpson <cjstimpson@utwire.net>

	* dlls/riched20/editor.c:
	riched20: Fix key handling in dialogs.

2006-11-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Implement SetupGetSourceInfo{A,W}.

2006-11-15  Rob Shearman <rob@codeweavers.com>

	* include/winbase.h:
	include: Add security QOS flags to winbase.h.

2006-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/imagelist.c:
	Revert "comctl32: Fix a potential regression in ImageList_ReplaceIcon()."
	This reverts commit 9e772d1369f0292cfb79d8cabc017611fc6d0369.

2006-11-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellpath.c, dlls/shell32/undocshell.h:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/shellole.c:
	shell32: Cast-qual warnings fix.

2006-11-15  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/user/edit.c:
	user32: Update the edit control when the IME composition string is emptied.

2006-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/process.c:
	kernel32/tests: Reserve some more memory for the environment.

2006-11-15  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use SecInvalidateHandle and SecIsValidHandle for handling
	RpcConnection::ctx instead of setting/comparing the field to 0.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add support for signing, verifying, encrypting and decrypting RPC
	packets.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a crash in RPCRT4_OpenBinding that can occur if
	RPCRT4_CreateConnection fails by checking the return value from the
	function and returning in this case.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add a FIXME for unsupported client protocol sequences.

2006-11-15  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Test AddRef with refcount==0.

	* dlls/d3d8/tests/device.c:
	d3d8: Test refcount forwarding.

	* dlls/d3d8/tests/device.c:
	d3d8: Back buffer is identical to the render target, test it only once.

2006-11-14  Sam Dennis <samuel.howard.dennis@gmail.com>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/wcs.c:
	msvcrt: Use the custom vsnprintf implementation for msvcrt.vsprintf too.

2006-11-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c, server/ptrace.c:
	ntdll: Fixed returned status for NtQueryThreadInformation's ThreadDescriptorTable
	(spotted by Peter Oberndorfer).

2006-11-06  Kovács András <andras@csevego.net>

	* dlls/mshtml/htmlelem.c:
	mshtml: HTMLElementCollection_item implementation.

2006-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Clean up a temp file.

	* dlls/shell32/shlfileop.c:
	shell32: Don't use the short path name to delete files in SHFileOperation.

2006-11-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shdoclc/Ko.rc:
	shdoclc: Updated Korean resource.

2006-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Split MSI_CreatePackage into two functions.

	* dlls/msi/package.c:
	msi: Delete the tempfile created by GetTempFileName.

	* dlls/msi/package.c:
	msi: Defer package deletion until after the database is closed.

	* dlls/msi/custom.c, dlls/msi/files.c, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h:
	msi: Remove track_tempfile()'s unused 2nd parameter.

	* dlls/msi/dialog.c:
	msi: Always delete temp files after creating them.

	* dlls/msi/helpers.c:
	msi: Print a message if we fail to delete a file.

2006-11-13  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/factory.c, dlls/msxml3/regsvr.c:
	msxml3: Support both v 2.x and 3.0 version independent clsids as well as the
	v 3.0 version dependent clsid.

	* dlls/msxml3/factory.c, dlls/msxml3/tests/domdoc.c, include/msxml2.idl:
	msxml3: Add the CLSID_DOMDocument define in msxml2.idl to match the PSDK.

	* dlls/msxml3/Makefile.in, dlls/msxml3/uuid.c:
	msxml3: Initialize the uuids that aren't in libuuid.

	* include/msxml2.idl:
	msxml3: Add a guard around DOMNodeType just like in the PSDK, so that we can
	include version 2 and version 3 msxml headers simultaneously.

2006-11-13  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt: printf buffer overrun tests.

	* dlls/msvcrt/wcs.c:
	msvcrt: Estimate required buffer size better in pf_vsnprintf.

	* dlls/msvcrt/wcs.c:
	msvcrt: Free correct buffer in pf_vsnprintf.

2006-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a redundant variable.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a potential regression in ImageList_ReplaceIcon().

	* dlls/comctl32/imagelist.c:
	comctl32: When removing an image, move the remaining images one forward,
	not one backwards.

	* dlls/user/win.c:
	user32: Print a fixme only once.

	* dlls/kernel32/locale.c:
	kernel32: Print a FIXME only once.

2006-11-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/files.c:
	msi: Notify the external UI handler when changing media.

2006-11-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/virtcopy.c:
	setupapi: Cast-qual warning fix.

	* dlls/secur32/util.c:
	secur32: Cast-qual warning fix.

	* dlls/rsaenh/implglue.c:
	rsaenh: Cast-qual warning fix.

2006-11-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi.spec, dlls/setupapi/setupapi_private.h,
	  include/setupapi.h:
	setupapi: Implement SetupGetSourceFileLocation{A,W}.

	* dlls/setupapi/install.c:
	setupapi: The inf section suffix that corresponds to __x86_64 is .ntamd64.

2006-11-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix handling of ISC_REQ* flags in InitializeSecurityContext.

2006-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update the X11 window position when the primary monitor origin
	changes.

2006-11-13  Rob Shearman <rob@codeweavers.com>

	* include/Makefile.in, include/wincred.h:
	include: Add wincred.h header file.

	* include/sspi.h:
	include: Fix a typo in the SecInvalidateHandle macro in sspi.h.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/ntdll/directory.c, include/config.h.in:
	ntdll: Added support for reading directories using the BSD getdirentries
	function.

2006-11-11  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Remove deadcode (Coverity).

2006-11-11  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleRegisterServer.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Implement AtlRegisterLoadTypeLib.

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleLoadTypeLib.

	* dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Fix incorrect prototypes.

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c:
	atl: AtlAxGetHost and AtlAxGetControl implementation.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleControlSite.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleInPlaceFrame.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleInPlaceSiteWindowless.

	* dlls/atl/atl_ax.c:
	atl: Host component implementation: IOleContainer.

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c:
	atl: Implement AtlAxAttachControl.

2006-11-10  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl_ax.c:
	alt: Host component implementation: IOleClientSite.

2006-11-13  Rob Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Re-enable the code that unregisters interfaces with the RPC runtime.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Implement RpcServerUnregisterIf.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Convert the server interfaces list into a standard Wine list.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a comment and move a WARN to where it really indicates a problem,
	rather than falsely triggering on normal conditions.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Use LC_NUMERIC instead of LC_ALL to determine the user locale.
	Passing LC_ALL to setlocale() doesn't do what we want.

2006-11-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/custom.c:
	msi: Only free a string in one place.

	* dlls/msi/custom.c:
	msi: Fix error handling.

	* dlls/msi/custom.c:
	msi: Track temp files as soon as they are created.

	* dlls/msi/custom.c:
	msi: Fail if we can't write out a temporary file.

	* dlls/msi/tests/suminfo.c:
	msi: Fix an uninitialized variable in the test cases.

	* dlls/msi/custom.c:
	msi: Clean upstore_binary_to_temp.

2006-11-12  Francois Gouget <fgouget@free.fr>

	* dlls/avifil32/api.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/tests/header.c, dlls/dplayx/dplayx_messages.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/msi/action.c, dlls/msi/custom.c,
	  dlls/msvfw32/msvideo_main.c, dlls/ntdll/handletable.c,
	  dlls/ole32/moniker.c, dlls/ole32/ole2_16.c, dlls/uxtheme/system.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/winex11.drv/dib_convert.c, dlls/winex11.drv/opengl.c,
	  dlls/winmm/wineoss/dscapture.c:
	Assorted spelling fixes.

	* dlls/advapi32/security.c, dlls/crypt32/oid.c, dlls/hlink/hlink_main.c,
	  dlls/infosoft/infosoft_main.c, dlls/inseng/inseng_main.c,
	  dlls/kernel32/heap.c, dlls/ntdsapi/ntdsapi.c, dlls/opengl32/wgl.c,
	  dlls/pstorec/pstorec.c, dlls/quartz/main.c, dlls/query/query_main.c,
	  dlls/rpcrt4/rpc_epmap.c, dlls/secur32/secur32.c:
	Add some documentation headers to make winapi_check happy.

	* dlls/ole32/ole2_16.c, dlls/ole32/storage.c:
	ole32: Standardize some documentation comments.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix some comments so they are properly formatted documentation
	headers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add some stub documentation headers to make winapi_check happy.
	Also fix some headers that identified internal APIs as external.

	* dlls/shell32/trash.c, dlls/shell32/xdg.c:
	shell32: Fix inclusion of conditional headers (spotted by winapi_check).

	* dlls/msi/table.c:
	msi: assert.h is not a local header (spotted by winapi_check).

	* dlls/ole32/tests/clipboard.c:
	ole32/tests: Don't use the NONAMELESS* macros in the tests.

2006-11-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/Makefile.in:
	ntdll: Alphabetically sort the Makefile entries.

2006-11-12  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Remove unused variable (Coverity).

	* dlls/rsaenh/rsa.c:
	rsaenh: Move type-check before len-check (Coverity).

	* dlls/msi/action.c:
	msi: Fix typo's (Coverity).

2006-11-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Fix a comment.

2006-11-13  Alexandre Julliard <julliard@winehq.org>

	* server/process.c:
	server: Fix list corruption caused by previous change.

2006-11-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/oleobj.c, dlls/mshtml/view.c:
	mshtml: Added border implementation.

2006-11-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_ORDERLIST implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_UNORDERLIST implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_HORIZONTALLINE implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_INDENT and IDM_OUTDENT implementation.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc,
	  dlls/mshtml/Hu.rc, dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc:
	mshtml: Remove menus that are in shdoclc.dll.

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/shdoclc/Bg.rc, dlls/shdoclc/De.rc, dlls/shdoclc/En.rc,
	  dlls/shdoclc/Es.rc, dlls/shdoclc/Fi.rc, dlls/shdoclc/Fr.rc,
	  dlls/shdoclc/Hu.rc, dlls/shdoclc/Ko.rc, dlls/shdoclc/Makefile.in,
	  dlls/shdoclc/Nl.rc, dlls/shdoclc/No.rc, dlls/shdoclc/Sv.rc,
	  dlls/shdoclc/Tr.rc, dlls/shdoclc/rsrc.rc, dlls/shdoclc/shdoclc.h,
	  dlls/shdoclc/shdoclc.spec:
	shdoclc: Added shdoclc.dll.

2006-11-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winmm/tests/Makefile.in, dlls/winmm/tests/capture.c,
	  dlls/winmm/tests/mixer.c, dlls/winmm/tests/mmio.c,
	  dlls/winmm/tests/timer.c, dlls/winmm/tests/wave.c:
	winmm/tests: Win64 printf format warning fixes.

	* dlls/winmm/tests/timer.c:
	winmm/tests: Fix the parameters of LPTIMECALLBACK functions.

	* dlls/dsound/Makefile.in, dlls/dsound/buffer.c, dlls/dsound/capture.c,
	  dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Win64 printf format warning fixes.

	* dlls/dsound/dsound_private.h, dlls/dsound/mixer.c:
	dsound: Fix the declaration/definition of DSOUND_timer().

2006-11-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: UrlEscapeA should fail with E_POINTER when querying the buffer size.

2006-11-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	wgl: Fix a typo in the pbuffer pixelformat enumeration code.

2006-11-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: The y coordinate should be offset agaist the height, not the width.

2006-11-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt_sha.c:
	advapi32: Constify a parameter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/quartz/pin.c, dlls/quartz/pin.h:
	quartz: Cast-qual warnings fix.

	* dlls/qcap/pin.c, dlls/qcap/pin.h:
	qcap: Cast-qual warnings fix.

2006-11-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Fix a heap corruption bug by resizing the src string before adding to it.

2006-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/tapi32/assisted.c, dlls/tapi32/line.c, dlls/tapi32/phone.c,
	  include/tapi.h:
	include/tapi.h: Add missing include directives.

2006-11-10  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/tests/monitor.c:
	user: Only perform the screen resolution changing tests in interactive mode.

2006-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/kernel32/tests/locale.c:
	kernel32: Fix the 'MAP_FOLDCZONE' ok() test.

2006-11-10  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/winhelp.c:
	winhelp: Use path of parent helpfile while looking for popup window.

	* programs/winhelp/winhelp.c:
	winhelp: Fix WINHELP_DeleteWindow.

	* programs/winhelp/winhelp.c:
	winhelp: Do not create popup window if file not found.

2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.25.

----------------------------------------------------------------
2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Avoid a sizeof in a trace.

2006-11-10  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Create one protseq object per used protocol sequence, not per
	RpcServerUseProtseq* function call.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Don't store the endpoint in the protseq.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix a crash in RpcServerUseProtseqEpExA/W when using an unsupported
	protseq.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Correctly align the results in the RPC Bind Ack packet.

2006-11-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/shlwapi/reg.c:
	shlwapi: Unify SHDeleteKeyW implementation with SHDeleteKeyA.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32: Constify some data.

2006-11-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/wgl.c:
	opengl32: Hack to make sure winex11 is loaded before getting function pointers.

	* dlls/advapi32/registry.c:
	advapi32: Fixed last error check in RegSaveKey.

	* server/process.c:
	server: Properly handle kill_thread recursion when killing a process.
	Spotted by Mike McCormack.

2006-11-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/quartz/filtergraph.c:
	quartz: Cast-qual warning fix.

2006-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Add GetContainer tests for implicit surfaces.

	* dlls/d3d9/tests/device.c:
	d3d9: Forwardport implicit surface tests.

2006-11-10  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/tests/Makefile.in, dlls/riched20/tests/editor.c:
	riched20: Flush the clipboard before exiting the test.

	* dlls/riched20/tests/editor.c:
	riched20: Add missing void to parameter list.

	* dlls/riched20/tests/editor.c:
	riched20: Remember to close windows after tests.

	* dlls/riched20/editor.c:
	riched20: Fix a memory leak.

	* dlls/riched20/editor.c:
	riched20: Set the correct number of initialized cursors.

	* dlls/riched20/editor.c:
	riched20: Fix an uninitialized variable.

	* dlls/msi/action.c:
	msi: Only log the Action, as it's the same as ActionRequest.

	* dlls/msi/action.c:
	msi: Check whether the component is enabled first.

	* dlls/msi/action.c:
	msi: Component attributes are bitmasks.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Use HeapAlloc/Free instead of alloc/free.

	* dlls/setupapi/setupcab.c:
	setupapi: Use HeapAlloc/Free instead of malloc/free.

	* dlls/shlwapi/path.c:
	shlwapi: Use HeapAlloc/Free instead of malloc/free.

	* dlls/oleaut32/ungif.c:
	oleaut32: Use HeapAlloc/Free instead of malloc/free.

2006-11-10  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Check for incompatible bpps and negative widths.

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Fix copying top-down/bottom-up DIBs.

2006-11-10  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: work around a bug in ntlm_auth that breaks RPC.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/olewnd.c:
	mshtml: Use popup menu from shdoclc.dll.

2006-11-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/rpcrt4_main.c,
	  dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Win64 printf format warning fixes.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_misc.h:
	rpcrt4: More "unsigned long" to "ULONG" changes in preparation of the removal
	of WINE_NO_LONG_AS_INT.

	* dlls/rpcrt4/ndr_clientserver.c, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Bring the function definitions in sync with their declaration.
	They got out of sync due to the unsigned long to ULONG changes in the headers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4/ndr_marshall.c: Bring the function definitions in sync with their
	declaration.
	Those got out of sync due to the unsigned long to ULONG migration in the headers.

2006-11-09  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* loader/Makefile.in:
	loader: Use plain binary name of git-describe to avoid junk in version output.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Replace || by |.

	* dlls/dmsynth/dmsynth_main.c:
	dmsynth: Fix one more instance of && instead of &.

2006-11-09  Marcus Meissner <meissner@suse.de>

	* dlls/user/text.c:
	user32: Replaced && 0xff by & 0xff.

	* dlls/dmscript/dmscript_main.c:
	dmscript: Replaced && 0xff by & 0xff.

	* dlls/dmusic/collection.c, dlls/dmusic/dmusic_main.c:
	dmusic: Replaced && 0xfff... by & 0xff.

	* dlls/dswave/dswave_main.c:
	dswave: Replaced && 0xff by & 0xff.

	* dlls/dmcompos/dmcompos_main.c:
	dmcompos: Replaced && 0xff by & 0xff.

2006-11-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* include/winsock.h:
	include: Remove duplicate definition.

2006-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/device.c:
	d3d8: Add refcount tests for implicit surfaces.

2006-11-09  Francois Gouget <fgouget@codeweavers.com>

	* programs/winepath/winepath.c:
	winepath: Fix --long option.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: GetColorDirectory: fixed incorrect A -> W conversions.

	* dlls/msi/registry.c:
	msi: Fixed bogus A -> W conversion.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/tests/pipe.c:
	kernel32/tests: Fixed the pipe test for MacOS.

2006-11-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_JUSTIFY*) implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Code clean up.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_JUSTIFYLEFT) and Exec(IDM_JUSTIFYRIGHT) implementataion.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_JUSTIFYCENTER) implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added IDM_FORECOLOR implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Added Exec(IDM_FONTSIZE) stub.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_FONTSIZE) implementation.

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added QueryStatus(IDM_FONTNAME) implementation.

2006-11-09  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Implement NTLM2 encryption.

2006-11-09  Francois Gouget <fgouget@free.fr>

	* include/shlwapi.h:
	shlwapi: Add a fixme for a missing include.

	* include/usp10.h:
	include/usp10.h: Add missing include directives.

	* include/oledlg.h:
	include/oledlg.h: Add missing include directives.

	* include/dshow.h:
	include/dshow.h: Add missing include directives.

	* include/d3d8.h, include/d3d9.h:
	include: Add missing include directives to d3d8.h and d3d9.h.

	* dlls/user/tests/msg.c, dlls/user/user_private.h, include/winuser.h:
	include: The PSDK headers don't define WM_SYSTIMER so we shouldn't either.

2006-11-09  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_Ko.rc:
	localspl: Added Korean resource.

2006-11-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for ConfigurePort.

2006-11-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Implement ConfigurePortA.

	* dlls/winspool.drv/info.c:
	winspool: Implement ConfigurePortW.

2006-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/volume.c:
	d3d8: Backport volume tests.

	* dlls/d3d8/volume.c:
	d3d8: Backport IDirect3DVolume9Impl_GetContainer.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/texture.c:
	d3d8: Backport texture tests.

	* dlls/d3d8/tests/device.c:
	d3d8: Backport missing device tests.

	* dlls/d3d8/device.c:
	d3d8: Backport null pointer check in SetCursorProperties.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/lolvldrv.c:
	winmm: Plug a memory leak.

	* dlls/ole32/tests/stg_prop.c:
	ole32: Don't use PropVariantClear to setup an unitialized variant.

	* dlls/msi/tests/suminfo.c:
	msi: Don't call PropVariantClear on uninitialized variants.

	* dlls/kernel32/nls/div.nls:
	kernel32: Changed encoding for Divehi (which has a 639-1 enconding).

	* dlls/comctl32/header.c:
	comctl32: header: fix bug found out by running valgrind on the regression tests.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c:
	kernel32: Fixed buffer overrun in get_registry_locale_info.

2006-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/user/win.c:
	user32: Downgrade a FIXME to a WARN.

	* dlls/comctl32/toolbar.c:
	comctl32: Downgrade an ERR to a WARN.

	* dlls/gdi32/freetype.c:
	gdi32: Downgrade a FIXME to a WARN.

2006-11-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/Makefile.in, dlls/winmm/driver.c, dlls/winmm/lolvldrv.c,
	  dlls/winmm/mci.c, dlls/winmm/message16.c, dlls/winmm/mmio.c,
	  dlls/winmm/mmsystem.c, dlls/winmm/playsound.c, dlls/winmm/sound16.c,
	  dlls/winmm/time.c, dlls/winmm/winemm.h, dlls/winmm/winmm.c:
	winmm: Remove WINE_NO_LONG_AS_INT.

2006-11-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: typelib - fix regression in MSFT typelib parsing.

2006-11-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Fix the warnings introduced by the "unsigned long" to "ULONG"
	header changes.

	* dlls/oleaut32/tmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix the warnings introduced by the "unsigned long" to "ULONG"
	header changes.

	* dlls/ole32/tests/marshal.c, dlls/ole32/usrmarshal.c:
	ole32: Fix the warnings introduced by the "unsigned long" to "ULONG" header
	changes.

	* include/rpcndr.h:
	rpcndr.h: Use ULONG/LONG/DWORD for Win64 compatibility instead of unsigned
	long/long.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserFree() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserUnMarshal() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserMarshal() functions. This is needed for Win64 compatibility.

	* dlls/ole32/usrmarshal.c, dlls/oleaut32/usrmarshal.c,
	  tools/widl/header.c:
	widl: Use ULONG instead of unsigned long when generating declarations for
	*_UserSize() functions. This is needed for Win64 compatibility.

2006-11-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h, dlls/secur32/util.c:
	secur32: Implement ntlmv2 signing.

	* dlls/secur32/hmac_md5.h:
	secur32: MD5 functions are WINAPI.

2006-11-08  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: For TCP endpoints, bind to all the address and ports that getaddrinfo
	for the machine.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use MaxCalls from the protseq when determining the backlog length to
	pass in to listen.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: The error code RPC_S_SERVER_UNAVAILABLE doesn't make much sense on
	the server side
	so replace it with some more appropriate endpoint error codes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Open the endpoint from the caller of RpcServerUseProtseq* instead of
	the protseq server thread.
	This allows errors to be returned to the caller and to create more than
	one connection for an endpoint.

	* include/rpcdce.h:
	include: Add RPC/DCE defines and structures related to RPC_SECURITY_QOS_V2.

2006-11-08  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Do not write to array element -1.

2006-11-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Add support for continuous cabinets.

	* dlls/msi/files.c:
	msi: Extract cabinets in ACTION_InstallFiles. ready_media is for finding and
	loading medi.

	* dlls/msi/files.c:
	msi: Move the file sequence check out of ready_media_info to avoid an unnecessary
	function call.

	* dlls/msi/files.c:
	msi: Factor out load_media_info from ready_media_for_file.

	* dlls/msi/files.c:
	msi: Use disk_prompt from the media_info structure instead of passing an extra
	parameter to msi_change_media.

	* dlls/msi/dialog.c:
	msi: Only add text to the scroll control if text is provided.

2006-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Re-add sys/ioctl.h that got lost in the PeekNamedPipe move.

2006-11-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/tests/process.c:
	kernel32: Add basic OpenProcess test.

	* include/winnt.h:
	include: Add the PROCESS_SUSPEND_RESUME definition.

2006-11-08  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/subclass.c:
	comctl32: Load function pointers by ordinal.

2006-11-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h:
	secur32: Use a helper function for creating the signature as this simplifies
	implementing NTLM2 signing a lot.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h:
	secur32: Delete session key and arc4 context when the session based security
	context is deleted.

2006-11-08  Ken Thomases <ken@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Fix off-by-one in map of non-char keysyms to vkeys.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Map XK_KP_Equal to VK_OEM_NEC_EQUAL.

2006-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/dib.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/x11drv.h:
	winex11.drv: Get rid of the DIB color table now that it's stored in gdi32.

	* dlls/gdi32/bitmap.c, dlls/gdi32/dib.c, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/tests/bitmap.c:
	gdi32: Remove call to CreateCompatibleDC() from GetDIBits() implementation.
	Based on a patch by Alex Villacís Lasso.

2006-11-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: varformat - Force LCID_US for conversion in VarFormatNumber.

2006-11-07  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/install.c, dlls/msi/msi.spec:
	msi: Added stub for MsiGetFeatureValidStatesA/W.

2006-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a regression in ImageList_AddMasked().

2006-11-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/varformat.c, dlls/oleaut32/vartype.c:
	oleaut32: Cast-qual warnings fix.

2006-11-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/rpcrt4/tests/cstub.c, include/rpcproxy.h:
	rpcproxy.h: Use LONG/ULONG for Win64 compatibility instead of long and
	unsigned long.

	* dlls/rpcrt4/ndr_misc.h:
	rpcrt4: For Win64 compatibility use a temp variable of the right type in
	ComputeVariance().

2006-11-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winhelp/Ko.rc:
	winhelp: Updated Korean resource.

2006-11-06  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/variant.c:
	oleaut32: variant - allow conversion of VT_DISPATCH into VT_BSTR in VarCat.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: olepicture - Support multiple redundant headers before picture data.

2006-11-06  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/module.c:
	dbghelp: Initialize BOOL elements with FALSE instead of 0.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Make dwarf2 parser only report file numbers when at least one
	compilation unit really has numbers.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c:
	dbghelp: Make dwarf2_parse_line_numbers handle missing line number section.

2006-11-06  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec,
	  dlls/shlwapi/tests/ordinal.c:
	shlwapi: Implement GetShellSecurityDescriptor and test for it.

2006-11-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: ScissorRect correction.

2006-11-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix failure of X11DRV_ChoosePixelFormat.

2006-11-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Factor out download_remote_cabinet and reuse extract_cabinet_file to
	extract a remote cabinet.

	* dlls/msi/files.c, dlls/msi/helpers.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/preview.c:
	msi: Store the base URL of the MSI package if it is downloaded.

	* dlls/msi/files.c:
	msi: Factor copy_install_file out of ACTION_InstallFiles.

	* dlls/msi/files.c:
	msi: Factor schedule_install_files out of ACTION_InstallFiles.

	* dlls/msi/files.c:
	msi: Model the media_info structure members after the columns in the media table.

	* dlls/msi/files.c:
	msi: Use msi_alloc_zero instead of a helper function that sets everything
	to zero.

	* dlls/msi/files.c:
	msi: Use the file's component instead of passing an extra parameter to
	set_file_source.

	* dlls/msi/files.c:
	msi: Use the media_info structure instead of passing in individual values
	to extract_cabinet_file.

	* dlls/msi/tests/install.c:
	msi: Add more tests for installing from cabinets.

2006-11-08  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c,
	  dlls/netapi32/access.c, dlls/netapi32/ds.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/wksta.c,
	  include/ntsecapi.h, include/sspi.h, include/winternl.h:
	Fix ntsecapi.h so it does not depend on winternl.h.

	* dlls/rpcrt4/rpc_epmap.c, dlls/secur32/tests/ntlm.c,
	  dlls/secur32/tests/secur32.c, include/sspi.h:
	secur32: sspi.h must not include wtypes.h.

	* dlls/setupapi/stringtable.c, dlls/setupapi/tests/stringtable.c,
	  include/setupapi.h:
	setupapi: setupapi.h must not define HSTRING_TABLE and the StringTable*
	prototypes.

	* dlls/uxtheme/draw.c, dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c,
	  dlls/uxtheme/property.c, dlls/uxtheme/system.c,
	  dlls/uxtheme/tests/system.c, include/winerror.h:
	uxtheme: winerror.h must not define the E_PROP_*_UNSUPPORTED macros.

	* dlls/shell32/shlexec.c:
	shell32: Add missing '\n' to Wine trace.

	* include/objbase.h:
	include/objbase.h: Add missing include directives.

	* dlls/comctl32/theming.c, dlls/user/class.c, dlls/user/controls.h,
	  dlls/user/desktop.c, dlls/user/dialog.c, dlls/user/dialog16.c,
	  dlls/user/icontitle.c, dlls/user/menu.c, dlls/user/spy.c,
	  dlls/user/tests/win.c, dlls/uxtheme/draw.c, dlls/uxtheme/system.c,
	  include/winbase.h, include/winuser.h, programs/explorer/desktop.c:
	include: The PSDK does not have the A/W variants of MAKEINTATOM() so we should
	not either.

	* include/winuser.h:
	user32/include: Don't define the window and control styles if NOWINSTYLES is set.

2006-11-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Call SetWindowPos with SWP_FRAMECHANGED set when switching from
	minimized state in X11DRV_MapNotify.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Map VK codes for arrow keys to an X11 keycode manually as we do
	for other keypad keys.

2006-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix a memory leak.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_Read.

2006-11-08  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/surface.c:
	wined3d: Fix regression in surface conversion.

2006-11-07  Huw Davies <huw@codeweavers.com>

	* dlls/winspool.drv/info.c:
	winspool.drv: Associate a printer driver with each printer, rather than share
	a common one between all printers.

	* dlls/winspool.drv/info.c:
	winspool.drv: Fix AddPrinterDriverA so that the strings actually get written.
	Include the size of the terminating zero in set_reg_szW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Implement DeletePrinterDriverExW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Forward DeletePrinterDriverExA -> DeletePrinterDriverExW.

	* dlls/winspool.drv/info.c:
	winspool.drv: Forward DeletePrinterDriver -> DeletePrinterDriverEx.

2006-11-07  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/string.c:
	comctl32: Beginning of some string related tests.

	* dlls/comctl32/string.c:
	comctl32: Fix return values of string functions.

2006-11-07  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11: Fix regression caused by client-side DIB copy patch.

2006-11-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/locale.c, dlls/kernel32/process.c:
	kernel32: Better workaround for the lack of locale environment variables
	on MacOS.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Detect an XLookupString that returns Latin-1 and avoid codepage
	mapping in that case.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Added mapping for Unicode keysyms in ToUnicodeEx.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Only load the keycode->keysym mapping once in DetectLayout,
	instead of once per supported layout.

2006-11-07  Francois Gouget <fgouget@free.fr>

	* dlls/user/button.c, dlls/user/combo.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/resources/user32.rc,
	  dlls/user/tests/menu.c, dlls/user/user16.c, include/winuser.h,
	  programs/explorer/desktop.c, programs/progman/main.c:
	user32/include: Don't define the OBM_*, OCR_* and OIC_* macros unless OEMRESOURCE
	is defined.

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Fix compilation with the PSDK headers.

	* dlls/advapi32/registry.c, dlls/comctl32/pager.c, dlls/ddraw/device.c,
	  dlls/ddraw/viewport.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dmstyle/commandtrack.c,
	  dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/kernel32/tests/thread.c,
	  dlls/localspl/tests/localmon.c, dlls/lz32/tests/lzexpand_main.c,
	  dlls/mapi32/prop.c, dlls/mciseq/mcimidi.c, dlls/msi/tests/db.c,
	  dlls/ntdll/virtual.c, dlls/ole32/hglobalstream.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/typelib.c,
	  dlls/opengl32/wgl.c, dlls/quartz/videorenderer.c,
	  dlls/shdocvw/shlinstobj.c, dlls/shell32/cpanelfolder.c,
	  dlls/user/exticon.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/winex11.drv/xfont.c,
	  dlls/winmm/winealsa/audio.c, dlls/ws2_32/socket.c, include/cvconst.h,
	  include/winternl.h, programs/winecfg/En.rc,
	  programs/wineconsole/wineconsole.c, tools/wrc/CHANGES:
	Assorted spelling fixes.

	* include/d3d.h, include/d3d8.h, include/d3d9.h, include/ddraw.h,
	  include/dinput.h, include/dmplugin.h, include/dmusicc.h,
	  include/dmusicf.h, include/dmusici.h:
	include: Some DirectX headers are supposed to define COM_NO_WINDOWS_H.

	* dlls/oleaut32/tests/typelib.c:
	oleau32: The PSDK's ELEMDESC's union is nameless, always. So use the U(x) macro.

	* dlls/comctl32/tests/toolbar.c:
	comctl32: Add missing '\n' to ok() call.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix spelling of the DPLAYX_AcquireSemaphore() macro.

	* dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/style.c:
	dmstyle: Fix spelling of the DMUS_PRIVATE_STYLE_MOTIF.dwRhythm field.

	* programs/taskmgr/perfdata.c, programs/taskmgr/perfdata.h:
	taskmgr: Fix spelling of the SYSTEM_PERFORMANCE_INFORMATION.MmTotalCommittedPages
	field.

2006-11-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: By default, install components locally.

	* dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix WHERE IS (NOT) NULL queries.

	* dlls/msi/tests/db.c:
	msi: Fix regression tests failing on Windows.

	* dlls/msi/action.c:
	msi: Split ACTION_CostFinalize into two functions.

2006-11-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_prop.c:
	ole32: Cast-qual warnings fix.

	* dlls/ntdll/server.c:
	ntdll: Cast-qual warning fix.

2006-11-06  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/surface.c:
	wined3d: Use width while converting surfaces.
	This fixes also a heap corruption with 1x1 and 2x2 surfaces.

	* dlls/wined3d/surface.c:
	wined3d: Use SURFACE_ALIGNMENT.

2006-11-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/atl_ax.c:
	atl: Move the storage specifier to the beginning of the declaration.

2006-11-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ntdll/handletable.c:
	ntdll: Clarify the documentation for HandleTable.

2006-11-06  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/Bg.rc, programs/winhelp/Cs.rc, programs/winhelp/Da.rc,
	  programs/winhelp/De.rc, programs/winhelp/En.rc,
	  programs/winhelp/Eo.rc, programs/winhelp/Es.rc,
	  programs/winhelp/Fi.rc, programs/winhelp/Fr.rc,
	  programs/winhelp/Hu.rc, programs/winhelp/It.rc,
	  programs/winhelp/Ko.rc, programs/winhelp/Nl.rc,
	  programs/winhelp/No.rc, programs/winhelp/Pl.rc,
	  programs/winhelp/Pt.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/Si.rc, programs/winhelp/Sk.rc,
	  programs/winhelp/Sw.rc, programs/winhelp/Tr.rc,
	  programs/winhelp/Va.rc, programs/winhelp/Wa.rc,
	  programs/winhelp/Zh.rc, programs/winhelp/macro.c,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h,
	  programs/winhelp/winhelp_res.h:
	winhelp: Rewrite LookupHelpFile function.
	Add ability for user to find file himself if winhelp cannot find it.
	Update resources.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed build without OpenGL headers.

2006-11-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/file.c:
	msvcrt: Cast-qual warnings fix.

2006-11-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msacm32/driver.c:
	msacm32: Cast-qual warnings fix.

2006-11-03  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Have SHELL_ArgifyW respect the length of the buffer passed in and
	report a needed buffer size.

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	shell32: Create dynamic buffers for expanded enviroment strings to allow for
	parameters and such longer than MAX_PATH.
	With help from Michael Moss.

2006-11-06  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/advapi32/tests/security.c:
	advapi32: Test for OpenProcessToken with MAXIMUM_ALLOWED access.

2006-11-06  Paul Chitescu <paulc@voip.null.ro>

	* dlls/mscoree/mscoree_main.c:
	mscoree: String returned by GetCORVersion starts with letter 'v'.

2006-11-06  Mike McCormack <mike@codeweavers.com>

	* dlls/user/user32.spec:
	user32: The string passed to ToUnicode(Ex) is for output.

	* dlls/winex11.drv/keyboard.c:
	user32: ToUnicodeEx should return 0 for an unknown key.

2006-11-05  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Make dwarf2 parser handle file paths relative to working dir better.

2006-11-04  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Test and fix DecryptMessage for multiple data buffers.

2006-11-04  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Add tests for EnumPorts.

	* dlls/winspool.drv/info.c:
	winspool: Implement EnumPortsA.

	* dlls/winspool.drv/info.c:
	winspool: Implement EnumPortsW.

	* dlls/winspool.drv/info.c:
	winspool: EnumPorts: Read driver from registry.

2006-11-04  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/winex11.drv/bitblt.c:
	winex11.drv: Added a basic client-side DIB copy optimization.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in:
	configure: Added missing DiskArbitration/DiskArbitration.h check.

	* loader/.gitignore, loader/Makefile.in, loader/main.c:
	loader: Update the reported version from the current git HEAD if available.

	* dlls/ntdll/loader.c, loader/main.c:
	ntdll: Moved command-line help to the loader binary.

	* dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Fixed definition of the MSIITERHANDLE type.

2006-11-06  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/icmp/icmp_main.c:
	icmp: Changed select to poll.

	* dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c:
	dinput: Changed select to poll.

2006-11-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Convert WS_select to use poll() instead of select(). Also fixes an
	fd leak.

2006-11-05  Phil Krylov <phil.krylov@gmail.com>

	* configure, configure.ac, programs/explorer/diskarb.c:
	explorer: Build on Darwin versions prior to 8.0.

2006-11-06  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/ntdll/tape.c:
	ntdll: Fix building on Darwin versions prior to 8.0.

2006-11-05  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Remove unnecessary quotes in traces, as debugstr_a and debugstr_w add
	them instead.

	* tools/winedump/output.c:
	winedump: Fix printf warning in the generated code.

2006-11-05  Gerald Pfeifer <gerald@pfeifer.com>

	* server/fd.c:
	server: Compilation fix.

2006-11-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/source.c:
	dbghelp: Fixed memory leak in source string handling.

2006-11-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added more tests.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Cal on_offlineconnected_change and on_silent_change in SetClientSite.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OnAmbientPropertyChange(DISPID_AMBIENT_OFFLINECONNECTED)
	implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Offline implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OnAmbientPropertyChange(DISPID_AMBIENT_SILENT) implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Ignore hwndParent in DoVerb.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Set parent window in activate_inplace.

	* dlls/mshtml/olecmd.c:
	mshtml: Fixed query_edit_status when Gecko is not available.

2006-11-05  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/list.c:
	riched20: Fix a leak in the undo stack.

	* dlls/riched20/string.c:
	riched20: Fix one more memory leak.

	* dlls/riched20/editor.c:
	riched20: Don't access memory after freeing it.

	* dlls/riched20/editor.c:
	riched20: Fixed memory leaks.

	* dlls/comctl32/imagelist.c:
	comctl32: Switch to a Nx4 tiling.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a Nx1 assuption in ImageList_AddMasked().

	* dlls/comctl32/imagelist.c:
	comctl32: Check if GetObject fails on bitmaps passed to us.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix Nx1 assumptions when adding multiple bitmaps with ImageList_Add.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix an Nx1 in ImageList_DrawIndirect().

	* dlls/comctl32/imagelist.c:
	comctl32: Remove another Nx1 assumption from ImageList_Remove().

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_Merge.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove Nx1 assumptions in ImageList_GetIcon().

	* dlls/comctl32/imagelist.c:
	comctl32: Use imagelist_copy_images() in ImageList_SetImageCount().

	* dlls/comctl32/imagelist.c:
	comctl32: Create a helper function to copy a block of images.

	* dlls/comctl32/imagelist.c:
	comctl32: Fix a regression.

2006-11-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Use HKCU instead of HKLM.

	* dlls/gdi32/driver.c, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	wgl: Fix WoW screen flickering.

2006-11-04  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Clear %gs again before calling the interpreter entry point.

	* dlls/kernel32/tests/change.c:
	kernel32/tests: Don't wait for overlapped result if the previous test failed.

2006-11-04  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/util.c:
	secur32: Fix handling of buffers that don't have the SECBUFFER_TOKEN as the
	first buffer.
	Thanks to Robert Shearman for catching this one and providing some of the
	test code.

	* dlls/secur32/tests/ntlm.c:
	secur32: Get rid of some HeapAlloc() calls to make code more readable.

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Avoid double HeapFree() of password and session key.

2006-11-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Remove glx context.

2006-11-03  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/device.c:
	d3d9/tests: Add refcount test for binding objects.

	* dlls/wined3d/device.c:
	wined3d: glReadPixels corrections.

2006-11-03  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: If the app asks for a single buffered pixel format, then it should
	be happy with a double buffered one.
	Likewise for mono vs stereo.
	Add some TRACEs so that we know what condition is failing.

2006-10-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c:
	wgl: Add extension checking code / glxGetProcAddress protection.

2006-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/mailslot.c,
	  server/protocol.def, server/trace.c:
	ntdll: Retrieve mailslot message info from the client side.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h:
	ntdll: FILE_GetDeviceInfo no longer needs to be public.

	* libs/wine/ldt.c, loader/preloader.c:
	preloader: Setup a fake thread-local storage block pointed to by %gs.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Added implementation of RtlDllShutdownInProgress.

2006-11-02  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Opengl init fix.

2006-11-01  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add a few more stubs.

2006-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Don't store the socket file descriptor in the async structure, retrieve
	it as needed.

	* dlls/ntdll/file.c:
	ntdll: Don't store the unix file descriptor in the async structure, retrieve
	it as needed.

	* dlls/ntdll/cdrom.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/tape.c, dlls/ntdll/virtual.c:
	ntdll: Added a server_get_unix_fd function that avoids doing a dup() of the
	fd when not required.

2006-11-02  Francois Gouget <fgouget@free.fr>

	* include/winbase.h:
	include: Fix the HeapQueryInformation() prototype.

	* programs/winhelp/macro.c:
	winhelp: Add missing '\n' in Wine trace.

2006-11-02  Rob Shearman <rob@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Make the path to ntlm_auth easier to change by moving the executable
	name to the top of ntlm.c.

	* dlls/wininet/internet.c:
	wininet: Don't return an error for INTERNET_OPTION_SEND/RECEIVE_TIMEOUT not
	being implemented
	on protocols other than HTTP, just print a FIXME. Reported by Michael Moss.

2006-10-30  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/atl/atl.spec, dlls/atl/atl_ax.c, dlls/atl/atliface.idl:
	atl: Implement AtlAxCreateDialogA and AtlAxCreateDialogW.

	* dlls/atl/Makefile.in, dlls/atl/atl.spec, dlls/atl/atl_ax.c,
	  dlls/atl/atl_main.c, dlls/atl/atlbase.h, dlls/atl/atliface.idl:
	atl: Implement AtlAxCreateControl and AtlAxCreateControlEx.

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	atl: Implement AtlModuleAddCreateWndData and AtlModuleExtractCreateWndData.

	* dlls/atl/Makefile.in, dlls/atl/atl_ax.c, dlls/atl/atl_main.c:
	atl: Implement AtlAxWinInit and AtlAxWin window procedure.

	* dlls/atl/Makefile.in, dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlPixelToHiMetric and AtlHiMetricToPixel.

2006-11-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added implementation of QueryStatus(IDM_UNDERLINE).

	* dlls/mshtml/olecmd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added implementation of QueryStatus(IDM_ITALIC).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more QueryStatus tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Added implementation of QueryStatus(IDM_BOLD).

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more edit mode tests.

	* dlls/mshtml/olecmd.c:
	mshtml: Load about:blank in exec_editmode.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Added beginning of set_progress task implementation.

	* dlls/mshtml/task.c:
	mshtml: Call SetStatusText in set_parsecomplete.

	* dlls/mshtml/persist.c:
	mshtml: Get DISPID_AMBIENT_SILENT and DISPID_AMBIENT_OFFLINECONNECTED property
	in IPersistMoniker::Load.

	* dlls/mshtml/persist.c:
	mshtml: Fix no longer valid ERR.

	* dlls/mshtml/nsio.c:
	mshtml: Added heuristic hack that decides if run the page from moniker or
	gecko channel.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Revert commit 760043c2455a90cd74178d98b7c81bfbfc81793f.
	After more testing I've checked that current code is bad, but my patch
	was also wrong and causes regression in WoW.

2006-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Implement PSM_GETRESULT.

	* dlls/comctl32/propsheet.c:
	comctl32: Fix return value of PropertySheet() for modal propsheets.

2006-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32/tests: Move the system menu test into its own test.

	* dlls/user/menu.c:
	user32: Check only for -1 and -2 as special values returned by
	MENU_ExecFocusedItem.

2006-11-02  Paul Chitescu <paulc@voip.null.ro>

	* dlls/msxml3/node.c:
	msxml3: Check parameters of IXMLDOMNode::insertBefore().

2006-11-02  Alexandre Julliard <julliard@winehq.org>

	* server/change.c, server/fd.c, server/file.c, server/file.h,
	  server/mailslot.c, server/mapping.c, server/named_pipe.c,
	  server/serial.c, server/sock.c:
	server: Refuse to close handles in other processes if they have an associated fd.

	* include/wine/server_protocol.h, server/console.c, server/debugger.c,
	  server/fd.c, server/handle.c, server/handle.h, server/named_pipe.c,
	  server/protocol.def, server/request.h, server/trace.c,
	  server/winstation.c:
	server: Get rid of the server-side file descriptor cache management.

	* dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c,
	  dlls/ntdll/server.c, include/wine/server_protocol.h, server/fd.c,
	  server/handle.c, server/protocol.def, server/trace.c:
	ntdll: Maintain a file descriptor cache on the client side.

2006-11-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: Add buttons size tests.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use the width of the current button instead of nButtonWidth
	to position the icon.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The SetButtonSize should not allow too small buttons.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The top margin should be computed and saved in CalcToolbar.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Add a LayoutToolbar that works like CalcToolbar but doesn't
	overwrite the button sizes.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix buttons heights.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: The string should be included in the height of a button-less
	toolbar only if there is a string in the pool.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Add support for WM_SETFONT.

2006-11-02  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/comctl32/comctl32undoc.c, dlls/comctl32/string.c:
	comctl32: Move documented functions to string.c.

2006-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user32/tests: Mask a not documented extended style 0x800 in WINDOWINFO before
	the comparison.

2006-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h:
	msi: Avoid a memory leak by freeing actions scripts in one place only.

	* dlls/msi/source.c:
	msi: Fix a memory leak.

	* dlls/msi/tests/db.c:
	msi: Fix a handle leak in the tests.

	* dlls/riched20/editor.c, dlls/riched20/reader.c, dlls/riched20/rtf.h:
	riched20: Initialize and free the RTF lookup table in DllMain to avoid memory
	leaks.

	* dlls/riched20/reader.c:
	riched20: Use WARN() not ERR() on unknown tokens.

	* dlls/kernel32/heap.c, dlls/kernel32/kernel32.spec:
	kernel32: Add a stub for HeapSetInformation.

	* include/winbase.h, include/winnt.h:
	kernel32: Declare HeapQueryInformation and HeapSetInformation.

	* dlls/comctl32/imagelist.c:
	comctl32: imagelist: Remove more 1xN assumptions.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove a redundant variable.

2006-11-01  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Use the full path of the INF file as the source directory if the CAB
	file is invalid.

2006-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/sync.c, dlls/ntdll/file.c, include/winioctl.h:
	kernel32: Moved PeekNamedPipe implementation to ntdll.

	* dlls/kernel32/file.c:
	kernel32: Reimplemented SetFilePointerEx on top of ntdll functions.

2006-11-01  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	imagelist: Move Nx1 assumptions about bitmaps dimensions into a single function.

	* dlls/msi/table.c:
	msi: Fix a typo.

	* dlls/msi/handle.c:
	msi: Don't print traces for addref and release.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Search the patch package for source cabinet files.

2006-10-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel32/profile.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/ne_segment.c:
	kernel32: Cast-qual warnings fix.

2006-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c, include/wine/server_protocol.h, server/fd.c,
	  server/protocol.def, server/trace.c:
	server: Compute the removable device flag on the server side.

	* dlls/ntdll/server.c:
	ntdll: Simplify wine_server_handle_to_fd.
	Now that we have a critical section, races are no longer possible.

	* dlls/ntdll/file.c:
	ntdll: Added NetBSD fstatvfs support.

2006-10-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/advpack/tests/install.c:
	advpack: Add another test.

	* dlls/advpack/tests/install.c:
	advpack: Fix typos.

2006-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Don't fail if ole is already initialised.

2006-10-31  Markus Amsler <markus.amsler@oribi.org>

	* programs/cmd/builtins.c:
	cmd: Check for argument in copy, mkdir, delete, goto, move, rmdir, rename, type.

2006-10-31  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set the AI_PASSIVE flag to getaddrinfo in rpcrt4_ip_tcp_open so that
	the bound-to port is connectable from other machines.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Improve the debug messages for failures in rpcrt4_ip_tcp_open.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Set the socket back to blocking in rpcrt4_conn_tcp_handoff as
	the read and write function for the protseq assume that syscalls will block.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix a typo in rpcrt4_ip_tcp_open that would cause the function
	to go into an infinite loop if getaddrinfo returned more than one entry.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Convert the named pipe server code to look directly into the
	connection to get at the wait handles, instead of using
	get_connect_wait_handle which isn't generic enough to be used for
	other protocols.
	Remove the unneeded get_connect_wait_handle function from the connection
	operations function list.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Eliminate the extra thread used for RPC over TCP/IP servers by adding
	socket-specific server protseq functions.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Fixed the prototype of many OpenGL functions.

2006-10-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/driver.c, dlls/gdi32/gdi_private.h, dlls/gdi32/opengl.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Route wglMakeContextCurrentARB through gdi32.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winedos/int21.c:
	winedos: Use NT instead of Unix calls to identify DOS device pseudo-files.

	* dlls/kernel32/vxd.c:
	kernel32: Use NT instead of Unix calls to identify VxD pseudo-files.

2006-10-31  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DLINEPATTERN to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DPATCHEDGESTYLE to the WINED3D namespace.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c:
	wined3d: Use D3DCUBEMAP_FACES consistently in the WINED3D namespace.

	* dlls/wined3d/device.c:
	wined3d: Use D3DDEGREE consistently in the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSTREAMSOURCE codes to the WINED3D namespace.

	* dlls/wined3d/device.c, include/wine/wined3d_types.h:
	wined3d: Add D3DCOLORWRITEENABLE codes to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCLEAR codes to the WINED3D namespace.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/texture.c, include/wine/wined3d_types.h:
	wined3d: Add D3DTSS_TCI codes to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DFVF codes to the WINED3D namespace.

2006-10-31  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/secur32/tests/schannel.c:
	secur32: Make sure crashing tests are not run.

2006-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c, dlls/kernel32/tests/file.c:
	kernel32: Fixed behavior of FindFirstFile for DOS devices.

2006-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test showing a join doesn't need a WHERE clause.

	* dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y, dlls/msi/tests/db.c:
	msi: Use a simpler algorithm for joins.

	* dlls/msi/tests/db.c:
	msi: Test the data returned by join queries in one ok().

	* dlls/msi/sql.y, dlls/msi/tokenize.c:
	msi: Remove tokens that aren't valid for MSI SQL.

	* dlls/msi/alter.c:
	msi: Fix a trace.

	* dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Fix the ALTER and FREE keywords in the tokenizer.

	* dlls/msi/action.c:
	msi: Mark components with missing or outdated files as incomplete.

	* dlls/comctl32/imagelist.c:
	comctl32: Remove some more Nx1 assumptions.

2006-10-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Inherit INET_CALLBACKW from parent handler.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Use handle stored in WININETHANDLEHEADER instead of WININET_FindHandle.

2006-10-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Remove duplicate HeapFree().

	* dlls/gdi32/metafile.c:
	gdi32: Cast-qual warnings fix.

	* dlls/gdi32/freetype.c:
	gdi32: Cast-qual warnings fix.

2006-10-30  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/file.c:
	msvcrt: Add stub for _setmaxstdio + tiny test.

2006-10-30  Kovács András <andras@csevego.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix introduced regression in shader_glsl_mnxn and vshader_hw_mnxn.

2006-10-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Add tests for EnumPorts.

2006-10-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localspl.rc, dlls/localspl/spl_De.rc:
	localspl: Add German resources.

2006-10-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c,
	  dlls/localspl/localspl.rc, dlls/localspl/localspl_private.h,
	  dlls/localspl/spl_En.rc:
	localspl: Implement EnumPortsW.

2006-10-27  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shell32_main.c:
	shell32: ABM_NEW was using parameters that are not set.

2006-10-30  Kirill K. Smirnov <lich@math.spbu.ru>

	* tools/wine.inf:
	wine.inf: Associate .hlp files with winhelp.

2006-10-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user32: Add a test for CreateWindow/DestroyWindow behaviour with WS_CHILD |
	WS_POPUP style, make it pass under Wine.

2006-10-30  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c:
	crypt32: Input parameter checking.

2006-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c, dlls/user/winpos.c:
	user32: SetWindowRgn should call SetWindowPos, not RedrawWindow.

	* dlls/winecrt0/delay_load.c:
	winecrt0: Fix delay load structure types for Win64.

2006-10-29  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DMATERIALCOLORSOURCE to the WINED3D namespace.

	* dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCMPFUNC to the WINED3D namespace.

	* dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSTENCILOP to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DFILLMODE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DCULL to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DSHADEMODE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DBLENDOP to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_types.h:
	wined3d: Add D3DFOGMODE to the WINED3D namespace.

2006-10-28  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Make GetTexture and GetSamplerState read from the correct stateblock.

	* dlls/wined3d/stateblock.c:
	wined3d: Set correct default for DMAPOFFSET sampler state.

	* dlls/wined3d/device.c:
	wined3d: Fix GetTexture() for uninitialized textures.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Make the "Tests executed" counter stable.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Pass test as argument to print handler.

2006-10-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Added put_innerHTML implementation.

	* dlls/shlwapi/ordinal.c:
	shlwapi: Added SHQueueUserWorkItem implementation.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: Call SendCallback in destructor instead of InternetCloseHandle.

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	wininet: Store handle in WININETHANDLEHEADER and use it in SendCallback.

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: Remove lpwhparent from WININETHANDLERHEADER.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Store WININETFTPSESSIONW pointer in WININETFTPFILEW.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Store WININETFTPSESSIONW pointer in WININETFTPFINDNEXTW.

	* dlls/wininet/ftp.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	wininet: Move ftp FindNextFile implementation to ftp.c.

	* dlls/wininet/dialogs.c, dlls/wininet/ftp.c, dlls/wininet/internet.c:
	wininet: Use lpAppInfo instead of lpwhparent where possible.

	* dlls/wininet/ftp.c, dlls/wininet/internet.h:
	wininet: Store WININETAPPINFOW pointer in WININETFTPSESSIONW.

	* dlls/wininet/dialogs.c, dlls/wininet/http.c:
	wininet: Use lpHttpSession instead of lpwhcalback where possible.

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Store pointer to WININETHTTPSESSIONW in WININETHTTPREQUESTW.

	* dlls/wininet/http.c:
	wininet: Use lpAppInfo instead of lpwhparent where possible.

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	wininet: Store WININETAPPINFOW pointer in WININETHTTPSESSIONW.

2006-10-29  Paul Vriens <paul.vriens.wine@gmail.com>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Cast-qual warnings fix.

2006-10-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/source.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/dbghelp/path.c:
	dbghelp: Cast-qual warnings fix.

2006-10-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi32/enhmetafile.c:
	gdi32: Cast-qual warnings fix.

	* dlls/gdi32/env.c:
	gdi32: Cast-qual warnings fix.

2006-10-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d9/device.c, dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Cast-qual warnings fix.

2006-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split ACTION_UpdateInstallStates into two separate functions.

2006-10-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Flush painting events harder in some places in order to avoid races
	in the message tests.

	* dlls/user/tests/msg.c:
	user32: Properly log HCBT_KEYSKIPPED hook event, make the message
	tests pass cleanly under fully up to date XP SP2.

2006-10-28  Detlef Riekenberg <wine.dev@web.de>

	* programs/control/params.h:
	control.exe: Remove unused define.

2006-10-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Print wine_gecko version in load_wine_gecko.

	* dlls/wininet/tests/http.c, include/wininet.h:
	wininet: Fixed declaration of INTERNET_STATUS_CALLBACK.

	* dlls/urlmon/tests/protocol.c:
	urlmon: Update winehq.org IP.

2006-10-28  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/drawprim.c:
	wined3d: Respect ARB_VERTEX_BUFFER_OBJECT in loadVertexData.

2006-10-27  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/dmusic/dmusic.c:
	dmusic: Do not write outside of array bounds.

2006-10-27  Huw Davies <huw@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	user32: The hiword of the return value from LB_ITEMFROMPOINT should be
	a hittest on the item that's returned and not a hittest on the client
	area as MSDN states.

2006-10-27  Stephen R. Veit <sveit@tradeharbor.com>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Fix GetAdaptersInfo return value for IpMask.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.24.

----------------------------------------------------------------
2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/directx.c:
	wined3d: Simplify some uses of the WineD3D_Context object.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: The WineD3D_GLContext structure doesn't need to be exported.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Fix a memory leak (spotted by Eric Pouech).

2006-10-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/oid.c:
	crypt32: Cast-qual warnings fix.

2006-10-26  Kirill K Smirnov <Kirill.K.Smirnov@star.math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/macro.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h:
	winhelp: Properly implement context help and JumpContext macro.

2006-10-24  Pierre d'Herbemont <pdherbemont@free.fr>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in, dlls/make_dlls,
	  dlls/winequartz.drv/Makefile.in,
	  dlls/winequartz.drv/quartzdrv_main.c,
	  dlls/winequartz.drv/winequartz.drv.spec, include/config.h.in:
	quartzdrv: Add the quartz (Mac OS X) video driver to the build system.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c:
	winedump: Avoid some dead code.

2006-10-25  Kovács András <andras@csevego.net>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/vertexshader.c:
	wined3d: Implement D3DSIO_MOVA in ARB backend.

2006-10-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi32/driver.c, dlls/gdi32/gdi32.spec, dlls/gdi32/gdi_private.h,
	  dlls/gdi32/opengl.c, dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move part of wglGetProcAddress to gdi32.

2006-10-26  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread on large buffers in ascii mode.

2006-10-26  Kevin Krammer <kevin.krammer@gmx.at>

	* programs/winebrowser/main.c:
	winebrowser: Support for Portland Initiative scripts.

2006-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/file.c:
	kernel32: Close the directory handle in FindNextFile as soon as we reach the
	end of the directory.

2006-10-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/d3d8/device.c, dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c:
	d3d8: Cast-qual warnings fix.

2006-10-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/install.c:
	msi: Extract cabinets based on DiskId, not LastSequence.

2006-10-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Test the order in which cab files are handled in the Media table.

	* dlls/msi/dialog.c, dlls/msi/files.c, dlls/msi/msipriv.h,
	  dlls/msi/tests/install.c:
	msi: Implement handling for the ErrorDialog and use it to change media.

2006-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	msi: Avoid crashing if writeout_cabinet_stream fails.

	* dlls/msi/action.c:
	msi: Remove redundant null checks before MSI_EvaluateCondition.

2006-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Move code assuming Nx1 into ImageList_CreateImage.

2006-10-26  Detlef Riekenberg <wine.dev@web.de>

	* tools/wine.inf:
	tools/wine.inf: Add default printer ports.

2006-10-26  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: The allocation hint in request and response packets is just that -
	a hint.
	It is not an error if the stub data exceeds this size, so reallocate the
	buffer with the newly calculated size and continue.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Don't terminate the loop on the buffer becoming filled, but when we
	receive a packet with the RPC_FLG_LAST flag set.
	This matches what is mentioned in the DCE/RPC specification.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix RPCRT4_Receive to accept authentication verifier data on any packets,
	not just bind packets.

	* dlls/ole32/rpc.c:
	ole32: Fix a memory leak on the error path of dispatch_rpc.

	* dlls/oleaut32/typelib.c:
	oleaut32: Update comments at the top of typelib.c and remove "stub" from
	several traces that are in implemented functions.

	* dlls/ole32/oleproxy.c:
	ole32: Fix some memory leaks in the class factory proxy.

	* dlls/ole32/oleproxy.c:
	ole32: Always call IRpcChannelBuffer_GetBuffer in the class factory stub.

2006-10-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/factory.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/urlhist.c:
	shdocvw: Added CUrlHistory stub implementation.

	* dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/urlhist.idl:
	include: Added urlhist.idl.

2006-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/mouse.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/xinerama.c:
	winex11.drv: Offset X11 coordinates with the primary monitor position.
	No longer force the primary monitor to contain the X11 (0,0) coordinate.

	* server/window.c:
	server: Always ignore the root window position when computing coordinates
	offsets.

2006-10-24  David Anderson <davea42@earthlink.net>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Avoid printing too many "What the heck" messages from winedbg.

2006-10-26  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/ddraw/device.c:
	ddraw: Add missing dereference operators.

2006-10-26  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mshtml/olecmd.c:
	mshtml: Moved release of dom_window to right place.

2006-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/join.c, dlls/msi/tests/db.c:
	msi: Fix the join algorithm.

	* dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/update.c:
	msi: Allow UPDATE queries without a condition.

	* dlls/msi/delete.c, dlls/msi/msipriv.h, dlls/msi/select.c,
	  dlls/msi/table.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Update tables using records, not integer by integer.

	* dlls/msi/alter.c, dlls/msi/delete.c, dlls/msi/join.c:
	msi: Remove some unused functions.

	* dlls/msi/insert.c, dlls/msi/query.h, dlls/msi/tests/db.c,
	  dlls/msi/update.c:
	msi: Fixed the UPDATE query to work with explicit values.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/events.c,
	  dlls/msi/helpers.c, dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Use msi_feature_set_state and msi_component_set_state where possible.

	* dlls/msi/action.c:
	msi: Create macro functions to set feature and component states.

2006-10-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for the UPDATE sql command.

2006-10-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Select the Filename edit box content after the user navigated to a
	directory by entering there the name.

2006-10-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_kor.mc:
	kernel32: Added winerr_kor.mc.

2006-10-25  Rob Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move transport-specific server functions to rpc_transport.c.

2006-10-25  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/commctrl.c, dlls/comctl32/tab.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Create tooltip windows with WS_POPUP style.

	* dlls/comctl32/status.c:
	comctl32: statusbar: Create tooltip window with WS_POPUP and TTS_ALWAYSTIP style.

2006-10-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/direct3d.c, dlls/ddraw/surface.c:
	ddraw: Forward the depth stencil buffer to wined3d.

2006-10-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winpos.c:
	user32: Fixed maximized window size on multi-monitor setups.

	* programs/winhelp/winhelp.c:
	winhelp: Properly handle negative coordinates for mouse events.

	* programs/winemine/main.c, programs/winemine/main.h:
	winemine: Properly handle negative coordinates for mouse events.

	* programs/winefile/winefile.c:
	winefile: Properly handle negative coordinates for mouse events.

	* programs/wineconsole/user.c:
	wineconsole: Properly handle negative coordinates for mouse events.

	* programs/regedit/childwnd.c:
	regedit: Properly handle negative coordinates for mouse events.

	* programs/oleview/pane.c:
	oleview: Properly handle negative coordinates for mouse events.

	* dlls/user/button.c, dlls/user/combo.c, dlls/user/listbox.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/win.c:
	user32: Properly handle negative coordinates for mouse events.

	* dlls/shell32/control.c:
	shell32: Properly handle negative coordinates for mouse events.

	* dlls/msi/dialog.c:
	msi: Properly handle negative coordinates for mouse events.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Properly handle negative coordinates for mouse events.

	* dlls/comctl32/header.c, dlls/comctl32/monthcal.c, dlls/comctl32/rebar.c,
	  dlls/comctl32/status.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/theme_combo.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/tooltips.c, dlls/comctl32/treeview.c:
	comctl32: Properly handle negative coordinates for mouse events.

2006-10-25  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Create a point from index function and use it.

2006-10-25  Kovács András <andras@csevego.net>

	* dlls/mlang/mlang.c:
	mlang: Set fnIMLangFontLink_GetStrCodePages stub return values.

2006-10-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/crl.c, dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Cast-qual warnings fix.

2006-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel32/process.c:
	kernel32: Exit from initial thread with ExitThread not by ExitProcess.

2006-10-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/xinerama.c:
	Revert "kernel32: Exit from initial thread with ExitThread not by ExitProcess."
	This reverts commit 5a1fd50db345c1de97d9d02133728a6080d2848b.
	I committed the wrong file.

2006-10-24  Aric Stewart <aric@codeweavers.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Only create a fontSet if we are going to be using it in the XIC.

2006-10-24  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/win.c:
	user: Remove wrong comment.

2006-10-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/xinerama.c:
	kernel32: Exit from initial thread with ExitThread not by ExitProcess.

2006-10-24  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, include/wine/wined3d_types.h:
	wined3d: Add D3DZBUFFERTYPE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DBLEND to the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTA masks to the WINED3D namespace.
	Also fix usage of D3DTSS/D3DTA in ddraw.

	* dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DVS_RASTOUT_OFFSETS to the WINED3D namespace.

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTADDRESS to the WINED3D namespace.

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/vertexbuffer.c:
	wined3d: D3DLOCK: Use consistently in the WINED3D namespace.

2006-10-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Add tests for ScriptStringCptoX and ScriptStringXtoCp for activation
	in later patches.

	* dlls/usp10/tests/usp10.c:
	usp10: Add tests for ScriptStringAnalyse and ScriptStringFree.

2006-10-24  Francois Gouget <fgouget@free.fr>

	* dlls/amstream/main.c, dlls/amstream/regsvr.c,
	  dlls/avicap32/avicap32_main.c, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/regsvr.c,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c,
	  dlls/comcat/comcat_private.h, dlls/comcat/regsvr.c,
	  dlls/comctl32/animate.c, dlls/comdlg32/cdlg.h,
	  dlls/comdlg32/cdlg16.h, dlls/comdlg32/filedlgbrowser.h,
	  dlls/d3dxof/main.c, dlls/d3dxof/regsvr.c,
	  dlls/devenum/devenum_private.h, dlls/dxdiagn/regsvr.c,
	  dlls/dxerr8/dxerr8.c, dlls/dxerr9/dxerr9.c, dlls/dxguid/dx8guid.c,
	  dlls/dxguid/dx9guid.c, dlls/dxguid/dxguid.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/mciavi32/private_mciavi.h,
	  dlls/msdmo/dmoreg.c, dlls/msdmo/dmort.c,
	  dlls/msrle32/msrle_private.h, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/objsel/objsel_private.h,
	  dlls/oledlg/oledlg_main.c, dlls/oledlg/pastespl.c,
	  dlls/olepro32/olepro32stubs.c, dlls/quartz/enummoniker.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shlinstobj.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/shlwapi/string.c,
	  dlls/strmiids/strmiids.c, dlls/urlmon/regsvr.c, dlls/urlmon/umon.c,
	  dlls/uuid/uuid.c, dlls/winex11.drv/event.c, dlls/wininet/urlcache.c,
	  include/mediaobj.idl:
	Don't include windows.h & co in the Wine sources.
	Remove uneeded COM_NO_WINDOWS_H defines.

2006-10-24  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a crash in dump_DispParms when running the typelib test with
	debug tracing on.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free the array subscript memory for type descriptions when freeing
	the typelib.

	* dlls/oleaut32/tests/typelib.c:
	oleaut32: Fix a reference count leak in the typelib test.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a reference count leak in CreateDispTypeInfo.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialise all members of the FUNCDESC structure in CreateDispTypeInfo.

2006-10-24  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xim.c:
	winex11.drv: Only initialize static variables once per process.

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Give XCloseIM another chance.

2006-10-24  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/oledlg/oledlg_Fr.rc:
	oledlg: Updated French translation.

	* programs/wineconsole/wineconsole_Fr.rc:
	wineconsole: Updated French translation.

2006-10-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/avifil32/avifile_Nl.rc, dlls/comctl32/comctl_Nl.rc,
	  dlls/comdlg32/cdlg_Nl.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/hhctrl.ocx/Nl.rc, dlls/mpr/mpr_Nl.rc, dlls/msacm32/msacm_Nl.rc,
	  dlls/mshtml/Nl.rc, dlls/msi/msi_Nl.rc, dlls/msrle32/msrle_Nl.rc,
	  dlls/oleaut32/oleaut32_Nl.rc, dlls/oledlg/oledlg_Nl.rc,
	  dlls/sane.ds/sane_Nl.rc, dlls/serialui/Nl.rc, dlls/setupapi/Nl.rc,
	  dlls/shdocvw/Nl.rc, dlls/shell32/shell32_Nl.rc,
	  dlls/shlwapi/shlwapi_Nl.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/wineps.drv/wps_Nl.rc, dlls/wininet/wininet_Nl.rc,
	  dlls/winmm/winmm_Nl.rc, dlls/winspool.drv/Nl.rc,
	  dlls/wldap32/wldap32_Nl.rc, programs/clock/Nl.rc, programs/cmd/Nl.rc,
	  programs/cmdlgtst/Nl.rc, programs/notepad/Nl.rc,
	  programs/progman/Nl.rc, programs/regedit/Nl.rc, programs/start/Nl.rc,
	  programs/taskmgr/Nl.rc, programs/view/Nl.rc, programs/winecfg/Nl.rc,
	  programs/wineconsole/wineconsole_Nl.rc, programs/winefile/Nl.rc,
	  programs/winemine/Nl.rc, programs/winhelp/Nl.rc,
	  programs/wordpad/Nl.rc:
	resources: Change Dutch sublanguage code to SUBLANG_NEUTRAL.

2006-10-24  Alexandre Julliard <julliard@winehq.org>

	* programs/notepad/main.c, programs/notepad/main.h:
	notepad: Fallback to default position if saved position if off-screen.

	* dlls/user/misc.c:
	user: Make sure the desktop window exists before calling monitor functions.

2006-10-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

2006-10-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/avifil32/avifile_De.rc, dlls/comctl32/comctl_De.rc,
	  dlls/comdlg32/cdlg_De.rc, dlls/crypt32/crypt32_De.rc,
	  dlls/devenum/devenum.rc, dlls/hhctrl.ocx/De.rc,
	  dlls/iccvid/iccvid_De.rc, dlls/kernel32/nls/winerr_deu.mc,
	  dlls/mpr/mpr_De.rc, dlls/msacm32/msacm_De.rc, dlls/mshtml/De.rc,
	  dlls/msi/msi_De.rc, dlls/msrle32/msrle_De.rc,
	  dlls/msvfw32/msvfw32_De.rc, dlls/msvidc32/msvidc32_De.rc,
	  dlls/oleaut32/oleaut32_De.rc, dlls/oledlg/oledlg_De.rc,
	  dlls/sane.ds/sane_De.rc, dlls/serialui/De.rc, dlls/setupapi/De.rc,
	  dlls/shdocvw/De.rc, dlls/shell32/shell32_De.rc,
	  dlls/shlwapi/shlwapi_De.rc, dlls/user/resources/user32_De.rc,
	  dlls/wineps.drv/wps_De.rc, dlls/wininet/wininet_De.rc,
	  dlls/winmm/winmm_De.rc, dlls/winspool.drv/De.rc,
	  dlls/wldap32/wldap32_De.rc, programs/clock/De.rc, programs/cmd/De.rc,
	  programs/cmdlgtst/De.rc, programs/notepad/De.rc,
	  programs/progman/De.rc, programs/regedit/De.rc, programs/start/De.rc,
	  programs/taskmgr/De.rc, programs/view/De.rc, programs/winecfg/De.rc,
	  programs/wineconsole/wineconsole_De.rc, programs/winefile/De.rc,
	  programs/winemine/De.rc, programs/winhelp/De.rc,
	  programs/wordpad/De.rc:
	resources: Change German sublanguage code to SUBLANG_NEUTRAL.

2006-10-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Split code to get a file's verion into a separate comment.

	* dlls/riched20/clipboard.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/reader.c,
	  dlls/riched20/richole.c:
	riched20: Create macro functions for allocating and freeing memory.

	* dlls/riched20/clipboard.c:
	riched20: Make sure to use GlobalAlloc with GlobalFree.

2006-10-23  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Fix the full path check.

	* dlls/msi/tests/install.c:
	msi: Add tests for installing from continuous cabinets.

	* dlls/msi/tests/install.c:
	msi: Allow more customization of install test files.

	* dlls/msi/tests/install.c:
	msi: Remove unused function pointer and definitions.

	* dlls/msi/tests/install.c:
	msi: Remove two unnecessary install tables.

	* dlls/msi/database.c, dlls/msi/tests/install.c:
	msi: Add support for localizable strings in MsiDatabaseImport.

2006-10-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added video/mpeg mime filter.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Code clean up.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added video/avi mime filter implementation.

2006-10-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/dde_client.c:
	user: Remove superfluous shadow variable.

	* dlls/crypt32/cert.c:
	crypt32: Cast-qual warnings fix.

2006-10-23  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Initialize data->xim to NULL if xim has been disabled.

2006-10-23  Paul Vriens <paul.vriens.wine@gmail.com>

	* programs/regedit/edit.c:
	regedit: Initialize a variable (Coverity).

2006-10-23  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/comctl32/tests/toolbar.c:
	comctl32/tests: Specify type of function argument and remove unused arguments.

2006-10-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/netapi32/wksta.c:
	netapi32: Fix the size of allocation for the string returned from
	NetpGetComputerName.

	* dlls/ole32/clipboard.c:
	ole32: Fixed some wrong conditions in OleFlushClipboard.

	* dlls/ole32/compobj.c:
	ole32: CoUninitialize: No longer access an object after it's been freed.

	* dlls/msxml3/nodelist.c:
	msxml: Fixed list walking in xmlnodelist_get_length.

	* dlls/gdi32/enhmfdrv/graphics.c:
	gdi32: Better error handling in enhanced metafile.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: As the min keycode is always greater or equal to 8, we
	don't need to scan XKeymapEvent.key_vector from 0 but from 8.

2006-10-22  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winmm/wineoss/midi.c:
	wineoss: On non-OSS systems define MidiExit too.

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: NetBSD needs sys/param.h.

2006-10-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localspl_main.c, dlls/localspl/localspl_private.h:
	localspl: Remember hInstance, needed for resources.

	* dlls/localspl/Makefile.in, dlls/localspl/localspl.rc:
	localspl: Add version resource.

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Fallback to localmon.dll on NT4.0.

2006-10-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/dialog.c, dlls/user/dialog16.c, dlls/user/misc.c,
	  dlls/user/tests/monitor.c, dlls/user/win.c:
	user: Fixed MonitorFromWindow behavior for an invalid window handle.

2006-10-23  Francois Gouget <fgouget@free.fr>

	* dlls/msi/tests/suminfo.c:
	msi/tests: Fix compilation with gcc 2.95.

	* programs/oleview/typelib.c:
	oleview: Fix compilation with gcc 2.95.

2006-10-23  Rob Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix a missing ITypeInfo::ReleaseTypeAttr in the typelib marshaling
	code.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix two more leaks on type info destruction.

	* dlls/oleaut32/typelib.c:
	oleaut32: Rewrite MSFT_ReadName and MSFT_ReadString to need one less allocation
	and to fix a memory leak.

	* dlls/oleaut32/typelib.c:
	oleaut32: Free allocated memory on typelib and typeinfo destruction.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix some reference count and memory leaks in the typelib marshaling
	code.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix memory leaks after calling ITypeInfo::GetNames.

	* dlls/ole32/tests/marshal.c:
	ole32: Fix some memory leaks in the marshal tests.

	* dlls/comctl32/tests/imagelist.c:
	comctl32: Fix imagelist leak in tests.

2006-10-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/class.c, dlls/user/tests/class.c:
	user32: Make the test pass for GetClassName called on a small buffer.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Make QueryPathOfRegTypeLib test pass under Wine.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/typelib.c:
	oleaut32: Add a test for QueryPathOfRegTypeLib.

2006-10-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/string.c, dlls/shlwapi/tests/string.c:
	shlwapi: Test and fix StrRStrI[AW].

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Disable the StrFromTimeInterval tests as they are
	language-dependent.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Enable the locale-dependent tests if the delimiters are correct.

	* dlls/shlwapi/tests/string.c:
	shlwapi/tests: Make the string.c tests compile in Visual C++.

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/En.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc:
	notepad: Fix ellipsis in menu items.

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Implement Find and Find Next.

	* programs/notepad/Makefile.in, programs/notepad/dialog.c,
	  programs/notepad/dialog.h:
	notepad: Add a generic function for message boxes with a string parameter.

2006-10-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Cast-qual warning fix.

	* dlls/comdlg32/colordlg.c:
	comdlg32: Cast-qual warnings fix.

2006-10-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/datetime.c:
	comctl32: Cast-qual warnings fix.

2006-10-22  Markus Amsler <markus.amsler@oribi.org>

	* dlls/msvcrt/heap.c:
	msvcrt: Speed up new operator.

2006-10-20  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/mshtml/nsembed.c:
	mshtml: Insert missing "return" operator.

2006-10-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Adapt system metrics for multi-monitor setups.

	* dlls/comctl32/tooltips.c:
	comctl32: Position the tooltip window correctly on multi-monitor setups.

	* dlls/user/winpos.c:
	user: Maximize windows to the right monitor on multi-monitor setups.

	* dlls/user/combo.c:
	user: Fixed combo box drop position on multi-monitor setups.

	* dlls/user/dialog.c, dlls/user/dialog16.c:
	user: Take multiple monitors into account when placing a dialog.

	* dlls/user/win.c:
	user: Take multiple monitors into account when placing a window.

	* dlls/user/menu.c:
	user: Take multiple monitors into account when placing a popup menu.

	* dlls/user/driver.c, dlls/user/misc.c, dlls/user/user_private.h,
	  dlls/winex11.drv/winex11.drv.spec, dlls/winex11.drv/xinerama.c:
	user: Moved GetMonitorInfo and EnumDisplayMonitors to the display driver.
	Added Xinerama support for these functions.

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/bitblt.c,
	  dlls/winex11.drv/desktop.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, dlls/winex11.drv/xinerama.c:
	winex11.drv: Preliminary support for Xinerama.

	* configure, configure.ac, include/config.h.in:
	configure: Check for the Xinerama extension.

2006-10-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

2006-10-23  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/class.c:
	user32: Add a test showing a problem in GetClassNameA.

2006-10-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix insertion of null integers into a table.

	* dlls/msi/tests/db.c, dlls/msi/tests/package.c, dlls/msi/tokenize.c:
	msi: Add the column type INTEGER as an alias for INT.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/suminfo.c:
	msi: Only apply transforms that are valid for a database.

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msipriv.h,
	  dlls/msi/suminfo.c:
	msi: Initialize the summary information from a storage interface, not a db.

2006-10-21  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/notepad/Ko.rc:
	notepad: Update Korean resources.

	* programs/oleview/Ko.rc:
	oleview: Update Korean resources.

	* programs/winefile/Ko.rc:
	winefile: Update Korean resources.

2006-10-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add stubs for DnsWriteQuestionToBuffer_{UTF8,W}.

2006-10-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/wineconsole_Pl.rc:
	wineconsole: Fix Polish translation.

	* programs/wineconsole/dialog.c:
	wineconsole: Check one of the radio buttons in the "Save settings" dialog.

	* programs/wineconsole/wineconsole_En.rc:
	wineconsole: En.rc: Enlarge the "save console settings" dialog to avoid cropping
	of text.

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Pl.rc: Enlarge the Find dialog to show the whole radio buttons text.

	* dlls/hhctrl.ocx/Pl.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Add Polish translation.

	* dlls/oledlg/oledlg_Pl.rc, dlls/oledlg/rsrc.rc:
	oledlg: Add Polish translation.

2006-10-22  Frank Richter <frank.richter@gmail.com>

	* programs/wineconsole/wineconsole_De.rc:
	wineconsole: Update German translation.

	* programs/oleview/De.rc, programs/oleview/rsrc.rc:
	oleview: Add German translation.

	* dlls/gphoto2.ds/gphoto2_De.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add German translation.

	* programs/winefile/De.rc:
	winefile: Update German translation.

	* programs/taskmgr/De.rc:
	taskmgr: Update German translation.

	* programs/regedit/De.rc:
	regedit: Update German translation.

	* programs/progman/De.rc:
	progman: Update German translation.

	* programs/notepad/De.rc:
	notepad: Update German translation.

	* programs/cmdlgtst/De.rc:
	cmdlgtst: Update German translation.

	* programs/clock/De.rc:
	clock: Update German translation.

	* dlls/oledlg/oledlg_De.rc:
	oledlg: Update German translation.

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Ko.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc:
	mshtml: Left-align Gecko download information message for better readability.

	* dlls/mshtml/Es.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Tr.rc:
	mshtml: Enlarge status text control ins some translated dialogs so all text
	is readable.

	* dlls/mshtml/De.rc:
	mshtml: Update German translation.

2006-10-20  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Only send the end dialog msg if the button is actually clicked.

2006-10-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/tiff mime filter.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Fix windows style of windows without parents.

2006-10-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Use HTTP_ADDHDR_FLAG_REPLACE flag in HTTP_HttpSendRequest to add
	Content-Length header.

	* dlls/mshtml/htmlelem.c:
	mshtml: Added IHTMLElement::get_className implementation.

	* dlls/mshtml/htmlselect.c:
	mshtml: Don't return empty string in IHTMLSelectElement::get_name.

2006-10-21  Jeff Latimer <lats@yless4u.com.au>

	* tools/runtest:
	tools: Add addtional help to runtest.

2006-10-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advapi32/lsa.c:
	advapi32: Fixed a couple items from previous patch (spotted by G Pfeifer).

	* programs/winedbg/be_i386.c:
	winedbg: Added a few more cases where we inspect if i386 instructions
	are actually calls (based on previous work by Jeff Latimer).

	* configure, configure.ac:
	configure: Now that we have dwarf support for debug info, don't force stabs
	as debug info format.

	* server/sock.c:
	winsock: Clear the held mask with the requested events so that they can be
	signaled.

	* dlls/advpack/advpack.c, dlls/advpack/files.c:
	advpack: Plug a couple of memory leaks.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Avoid non-portable types.

2006-10-18  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Added support for RPC TCP servers.

2006-10-18  Francois Gouget <fgouget@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: HttpSendRequestW() returns ERROR_IO_PENDING when called on an async
	socket. But that does not mean that it failed.

2006-10-18  Francois Gouget <fgouget@free.fr>

	* dlls/dinput/joystick_linuxinput.c, dlls/oleaut32/tmarshal.c:
	Add '\n's to Wine traces.

2006-10-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/heap.c:
	ntdll: Added debug support for notifying block allocation / freeing.

2006-10-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advapi32/lsa.c, dlls/advapi32/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32: Plug a couple of memory leaks.

2006-10-19  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/comctl32/comctl_Ko.rc,
	  dlls/comdlg32/cdlg_Ko.rc, dlls/crypt32/crypt32_Ko.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/hhctrl.ocx/Ko.rc,
	  dlls/iccvid/iccvid_Ko.rc, dlls/mpr/mpr_Ko.rc,
	  dlls/msacm32/msacm_Ko.rc, dlls/mshtml/Ko.rc, dlls/msi/msi_Ko.rc,
	  dlls/msrle32/msrle_Ko.rc, dlls/msvfw32/msvfw32_Ko.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/oleaut32/oleaut32_Ko.rc,
	  dlls/oledlg/oledlg_Ko.rc, dlls/sane.ds/sane_Ko.rc,
	  dlls/serialui/Ko.rc, dlls/setupapi/Ko.rc, dlls/shdocvw/Ko.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shlwapi/shlwapi_Ko.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/wineps.drv/wps_Ko.rc,
	  dlls/wininet/wininet_Ko.rc, dlls/winmm/winmm_Ko.rc,
	  dlls/winspool.drv/Ko.rc, dlls/wldap32/wldap32_Ko.rc,
	  programs/clock/Ko.rc, programs/cmd/Ko.rc, programs/cmdlgtst/Ko.rc,
	  programs/notepad/Ko.rc, programs/oleview/Ko.rc,
	  programs/progman/Ko.rc, programs/regedit/Ko.rc, programs/start/Ko.rc,
	  programs/taskmgr/Ko.rc, programs/uninstaller/Ko.rc,
	  programs/view/Ko.rc, programs/winecfg/Ko.rc,
	  programs/wineconsole/wineconsole_Ko.rc, programs/winefile/Ko.rc,
	  programs/winemine/Ko.rc, programs/winhelp/Ko.rc,
	  programs/wordpad/Ko.rc:
	Korean: Use SUBLANG_NEUTRAL in Korean resources.

2006-10-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/user.c:
	wineconsole: WM_RBUTTONDOWN lParam is in client coordinates not window
	coordinates.

	* programs/wineconsole/user.c:
	wineconsole: Make most keys cancel the selection.

	* programs/wineconsole/user.c:
	wineconsole: Allow making selections with a mouse also when not in the
	QuickEdit mode.

	* programs/wineconsole/user.c:
	wineconsole: Remove spaces from the ends of lines while copying to the clipboard.

	* programs/wineconsole/user.c:
	wineconsole: Change selection on WM_KEYDOWN not WM_KEYUP.

	* programs/wineconsole/wineconsole.c,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Pl.rc,
	  programs/wineconsole/wineconsole_res.h:
	wineconsole: Add usage message and more specific error messages.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/wineaudioio/Makefile.in, dlls/winmm/wineaudioio/audio.c:
	wineaudioio.drv: Win64 printf format fixes.

	* dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/coreaudio.c:
	winecoreaudio.drv: Win64 printf format fixes.

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/gdi/Makefile.in, dlls/gdi/bidi.c, dlls/gdi/bidi16.c,
	  dlls/gdi/bitblt.c, dlls/gdi/bitmap.c, dlls/gdi/brush.c,
	  dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/dib.c,
	  dlls/gdi/dispdib.c, dlls/gdi/dispdib.spec, dlls/gdi/driver.c,
	  dlls/gdi/enhmetafile.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gdi/enhmfdrv/dc.c, dlls/gdi/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi/enhmfdrv/graphics.c, dlls/gdi/enhmfdrv/init.c,
	  dlls/gdi/enhmfdrv/mapping.c, dlls/gdi/enhmfdrv/objects.c,
	  dlls/gdi/env.c, dlls/gdi/font.c, dlls/gdi/freetype.c,
	  dlls/gdi/gdi.exe.spec, dlls/gdi/gdi16.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_main.c, dlls/gdi/gdi_private.h, dlls/gdi/gdiobj.c,
	  dlls/gdi/icm.c, dlls/gdi/mapping.c, dlls/gdi/metafile.c,
	  dlls/gdi/metafile16.c, dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/dc.c,
	  dlls/gdi/mfdrv/graphics.c, dlls/gdi/mfdrv/init.c,
	  dlls/gdi/mfdrv/mapping.c, dlls/gdi/mfdrv/metafiledrv.h,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/mfdrv/text.c, dlls/gdi/opengl.c,
	  dlls/gdi/painting.c, dlls/gdi/palette.c, dlls/gdi/path.c,
	  dlls/gdi/pen.c, dlls/gdi/printdrv.c, dlls/gdi/region.c,
	  dlls/gdi/tests/Makefile.in, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/generated.c, dlls/gdi/tests/mapping.c,
	  dlls/gdi/tests/metafile.c, dlls/gdi/tests/palette.c,
	  dlls/gdi/tests/pen.c, dlls/gdi/version.rc, dlls/gdi/version16.rc,
	  dlls/gdi/wing.c, dlls/gdi/wing.spec, dlls/gdi32/Makefile.in,
	  dlls/gdi32/bidi.c, dlls/gdi32/bidi16.c, dlls/gdi32/bitblt.c,
	  dlls/gdi32/bitmap.c, dlls/gdi32/brush.c, dlls/gdi32/clipping.c,
	  dlls/gdi32/dc.c, dlls/gdi32/dib.c, dlls/gdi32/dispdib.c,
	  dlls/gdi32/dispdib.spec, dlls/gdi32/driver.c,
	  dlls/gdi32/enhmetafile.c, dlls/gdi32/enhmfdrv/bitblt.c,
	  dlls/gdi32/enhmfdrv/dc.c, dlls/gdi32/enhmfdrv/enhmetafiledrv.h,
	  dlls/gdi32/enhmfdrv/graphics.c, dlls/gdi32/enhmfdrv/init.c,
	  dlls/gdi32/enhmfdrv/mapping.c, dlls/gdi32/enhmfdrv/objects.c,
	  dlls/gdi32/env.c, dlls/gdi32/font.c, dlls/gdi32/freetype.c,
	  dlls/gdi32/gdi.exe.spec, dlls/gdi32/gdi16.c, dlls/gdi32/gdi32.spec,
	  dlls/gdi32/gdi_main.c, dlls/gdi32/gdi_private.h, dlls/gdi32/gdiobj.c,
	  dlls/gdi32/icm.c, dlls/gdi32/mapping.c, dlls/gdi32/metafile.c,
	  dlls/gdi32/metafile16.c, dlls/gdi32/mfdrv/bitblt.c,
	  dlls/gdi32/mfdrv/dc.c, dlls/gdi32/mfdrv/graphics.c,
	  dlls/gdi32/mfdrv/init.c, dlls/gdi32/mfdrv/mapping.c,
	  dlls/gdi32/mfdrv/metafiledrv.h, dlls/gdi32/mfdrv/objects.c,
	  dlls/gdi32/mfdrv/text.c, dlls/gdi32/opengl.c, dlls/gdi32/painting.c,
	  dlls/gdi32/palette.c, dlls/gdi32/path.c, dlls/gdi32/pen.c,
	  dlls/gdi32/printdrv.c, dlls/gdi32/region.c,
	  dlls/gdi32/tests/Makefile.in, dlls/gdi32/tests/bitmap.c,
	  dlls/gdi32/tests/brush.c, dlls/gdi32/tests/clipping.c,
	  dlls/gdi32/tests/dc.c, dlls/gdi32/tests/font.c,
	  dlls/gdi32/tests/gdiobj.c, dlls/gdi32/tests/generated.c,
	  dlls/gdi32/tests/mapping.c, dlls/gdi32/tests/metafile.c,
	  dlls/gdi32/tests/palette.c, dlls/gdi32/tests/pen.c,
	  dlls/gdi32/version.rc, dlls/gdi32/version16.rc, dlls/gdi32/wing.c,
	  dlls/gdi32/wing.spec, programs/winetest/Makefile.in,
	  tools/make_makefiles, tools/winapi/msvcmaker, tools/winapi/tests.dat:
	gdi32: Renamed the gdi directory to gdi32.

	* dlls/dmstyle/style.c, dlls/imm32/imm.c, dlls/kernel32/computername.c,
	  dlls/ole32/stg_prop.c, dlls/winspool.drv/info.c:
	Avoid usage of sizeof in traces that causes warnings on MacOSX.

2006-10-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/hmac_md5.h:
	secur32: Add include guard to hmac_md5.h.

2006-10-20  Christoph Frick <frick@sc-networks.de>

	* dlls/gdi/gdi32.spec:
	gdi32: Add wglShareList to gdi32.spec.

2006-10-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for integer column types.

	* dlls/msi/database.c, dlls/msi/tests/db.c, dlls/msi/tests/install.c:
	msi: Integer columns can have the 'NOT NULL' modifier too.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Allow more than one primary key in a table when importing a database.

2006-10-18  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	tools/wine.inf: Add the ProgramFilesPath registry entry.

2006-10-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi: Only initialize a component's state if it is linked with a feature.

	* dlls/msi/tests/install.c:
	msi: Use the ProgramFileDir reg value instead of ProgramFilesPath.

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Implement the InstallServices action.

2006-10-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/localmon.c, dlls/localspl/localspl_main.c:
	localspl: Implement InitializePrintMonitor.

2006-10-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Get function pointers from the monitor.

2006-10-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/tests/localmon.c:
	localspl/tests: Another test for InitializePrintMonitor.

2006-10-19  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Remove the structure window property when we quit.

	* dlls/oledlg/pastespl.c:
	oledlg: Return the appropiate value after the dialog is closed.

	* dlls/oledlg/pastespl.c:
	oledlg: Update the source text.

	* dlls/oledlg/pastespl.c:
	oledlg: Set nSelectedIndex on exit.

	* dlls/oledlg/pastespl.c:
	oledlg: Retrieve names from the OBJECTDESCRIPTOR structure.

	* dlls/oledlg/pastespl.c:
	oledlg: Call the hook proc if present.

	* dlls/oledlg/pastespl.c:
	oledlg: Set initial focus to the display list.

	* dlls/oledlg/pastespl.c:
	oledlg: Handle paste / link mode change.

	* dlls/oledlg/pastespl.c:
	oledlg: Minimal 'As Icon' handling. Just disable for now.

	* dlls/oledlg/pastespl.c:
	oledlg: Update the result text.

	* dlls/oledlg/oledlg_En.rc, dlls/oledlg/resource.h:
	oledlg: Add paste special string resources.

2006-10-18  Huw Davies <huw@codeweavers.com>

	* dlls/oledlg/pastespl.c:
	oledlg: Post OLEUI_MSG_HELP when the Help button is pressed and hide the Help
	button if the app doesn't want it.

	* dlls/oledlg/pastespl.c:
	oledlg: Send the OLEUI_MSG_ENDDIALOG messsage when closing the dialog.

	* dlls/oledlg/oledlg_main.c, dlls/oledlg/oledlg_private.h:
	oledlg: Register a couple of messages.

	* dlls/oledlg/pastespl.c:
	oledlg: Copy the appropiate list to the display list.

	* dlls/oledlg/pastespl.c:
	oledlg: Logic for initial selection of paste/pastelink radio buttons.

	* dlls/oledlg/pastespl.c:
	oledlg: Initialize the pastelink list.

	* dlls/oledlg/pastespl.c:
	oledlg: Initialize the paste list.

	* dlls/oledlg/pastespl.c:
	oledlg: Set the user supplied caption.

	* dlls/oledlg/pastespl.c:
	oledlg: Use the clipboard if the user doesn't pass an IDataObject.

	* dlls/oledlg/pastespl.c:
	oledlg: Initial management of private structure for dialog box control.

	* dlls/oledlg/oledlg_private.h, dlls/oledlg/pastespl.c:
	oledlg: Load the correct dialog template and add a skeleton dialog proc.

	* dlls/oledlg/oledlg_En.rc, dlls/oledlg/rsrc.rc:
	oledlg: Paste special dialog resource.

	* dlls/oledlg/pastespl.c:
	oledlg: Forward OleUIPasteSpecialA -> OleUIPasteSpecialW.

	* dlls/oledlg/pastespl.c:
	oledlg: Debugging code to dump the OLEUIPASTESPECIAL structure.

	* dlls/oledlg/oledlg_main.c, dlls/oledlg/oledlg_private.h:
	oledlg: Register a bunch of clipboard formats.

	* dlls/oledlg/Makefile.in, dlls/oledlg/oledlg_main.c,
	  dlls/oledlg/pastespl.c:
	oledlg: Move paste special dialog stubs to their own file.

	* include/oledlg.h:
	oledlg: Add the registered message name strings.

	* include/oledlg.h:
	oledlg: Add PS_MAXLINKTYPES.

	* include/oledlg.h:
	oledlg: Move the flag defines to under their respective structure definitions
	and remove some duplicates.

	* include/oledlg.h:
	oledlg: Add resource ids for the paste special dialog.

2006-10-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/graphics.c, dlls/winex11.drv/pen.c:
	winex11.drv: Avoid X error with unsupported pen styles.

2006-10-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/suminfo.c:
	msi: Fix an uninitialized variable causing random conformance test failures.

2006-10-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Es.rc, dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc,
	  dlls/mshtml/Hu.rc, dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/No.rc, dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc,
	  dlls/mshtml/resource.h:
	mshtml: Use mshtmcid.h defines where possible.

	* dlls/mshtml/htmlinput.c, dlls/mshtml/htmlselect.c:
	mshtml: Fix debug traces.

	* dlls/shdocvw/ie.c:
	shdocvw: Added WebBrowser::Navigate implementation.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Use navigate_url in WebBrowser::Navigate.

	* dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move common Navigate2 code to navigate_url.

2006-10-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Cast-qual warnings fix.

	* dlls/cabinet/fdi.c:
	cabinet: Cast-qual warnings fix.

2006-10-19  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/swapchain.c:
	wined3d: Fix the FrontBuffer content capturing.

	* dlls/wined3d/swapchain.c:
	wined3d: Correct the software cursor position if the app is running in
	windowed mode.

	* dlls/wined3d/surface.c:
	wined3d: BltOverride: Make sure that the content of the source rect is
	copied to the correct position in the destination rect.

2006-10-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Add tests for the InstallServices action.

2006-10-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the tests and handling of TB_SETHOTITEM on a disabled
	button.

2006-10-18  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Create tooltip on TB_GETTOOLTIPS message if not yet created.

2006-10-20  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Allow rows in the _Columns table to be unordered.

	* dlls/msi/table.c:
	msi: Reset the column number for each new table in a transform.

2006-10-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Update RelayExclude and add RelayFromExclude filter in order to
	avoid not useful APIs in the traces.

2006-10-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Hack to work around an Xlib bug when XInitThreads is used.

2006-10-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/stabs.c:
	dbghelp: Cast-qual warnings fix.

2006-10-18  Jesse Allen <the3dfxdude@gmail.com>

	* include/winuser.h:
	include: Fix out of place comment for DLGC_* codes.

2006-10-18  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/cert.c, dlls/d3d9/tests/stateblock.c,
	  dlls/ole32/tests/hglobalstream.c, dlls/shell32/recyclebin.c:
	Fix compilation with gcc 2.95.

2006-10-18  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/devenum/devenum.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/iccvid/iccvid_Fr.rc, dlls/msvfw32/msvfw32_Fr.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/wldap32/wldap32_Fr.rc:
	Use SUBLANG_NEUTRAL in French resources.

	* programs/taskmgr/Fr.rc:
	taskmgr: Fix an error in French translation.

2006-10-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the USERNAME and COMPANYNAME properties when initializing a package.

	* dlls/msi/dialog.c:
	msi: Run SetProperty events before all other events no matter what the order is.

2006-10-16  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Improved metafile support.

2006-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/registry.c:
	advapi32: Cast-qual warning fix.

2006-10-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/atl/registrar.c:
	atl: Cast-qual warnings fix.

2006-10-17  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Add stub for _getmaxstdio.

2006-10-16  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/winex11.drv/x11drv.h:
	x11drv: Fix a typo in x11drv.h about X11DRV_GetTextExtentExPoint.

2006-10-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/ntdll/Makefile.in, dlls/ntdll/atom.c, dlls/ntdll/cdrom.c,
	  dlls/ntdll/critsection.c, dlls/ntdll/debugbuffer.c,
	  dlls/ntdll/debugtools.c, dlls/ntdll/directory.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/loader.c, dlls/ntdll/misc.c,
	  dlls/ntdll/nt.c, dlls/ntdll/om.c, dlls/ntdll/path.c,
	  dlls/ntdll/process.c, dlls/ntdll/reg.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlbitmap.c,
	  dlls/ntdll/sec.c, dlls/ntdll/serial.c, dlls/ntdll/server.c,
	  dlls/ntdll/signal_i386.c, dlls/ntdll/sync.c, dlls/ntdll/tape.c,
	  dlls/ntdll/threadpool.c, dlls/ntdll/version.c, dlls/ntdll/virtual.c:
	ntdll: Win64 printf format warning fixes.

2006-10-17  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/stack.c:
	winedbg: Print frame address instead of duplicated bare address in backtrace.

2006-10-17  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/gdi32.spec:
	gdi32: Add missing spec file entry for wglDeleteContext.

2006-10-17  Cihan Altinay <bobbyg@gmx.net>

	* dlls/shdocvw/dochost.c:
	shdocvw: Make sure BSTR is allocated before calling sink.

2006-10-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/tests/db.c:
	msi/tests: Make sure to delete the test data file.

2006-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/mdi.c, dlls/user/tests/msg.c, dlls/winex11.drv/winpos.c:
	user: Add a test for ShowWindow(SW_MAXIMIZE) called on an invisible maximized
	MDI child, make it mostly pass under Wine.

2006-10-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/dde_client.c:
	user: Dead code fix (Coverity).

2006-10-17  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix dead code in ScriptItemize.

2006-10-15  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/tests/joystick.c:
	dinput: Add SetCooperativeLevel test for joystick.

	* dlls/dinput/tests/keyboard.c:
	dinput: Add SetCooperativeLevel tests to keyboard.

	* dlls/dinput/device.c, dlls/dinput/device_private.h, dlls/dinput/mouse.c:
	dinput: Move SetCooperativeLevel into base class.

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Move SetEventNotification and associated event into base class.

	* dlls/dinput/device_private.h, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c:
	dinput: Use dinput device as a base class for keyboard,  mouse and joystick.

2006-10-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Use SM_CYEDGE for heights in NCCalcSize.

2006-10-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Fix tables with binary data where the key is an integer.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Stream fields shouldn't be treated as strings.

	* dlls/msi/action.c:
	msi: Fix a memory leak.

	* dlls/msi/tests/db.c:
	msi: Add a test for modifying a table containing binary data.

	* dlls/msi/tests/suminfo.c:
	msi: Add a test for summary information.

2006-10-16  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Revert "msi: Perform button control events in greatest to least order."

2006-10-17  Markus Amsler <markus.amsler@oribi.org>

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/surface.c:
	d3d8: Backport d3d9 surface tests.

	* dlls/d3d8/device.c:
	d3d8: Fix wrong function name in FIXME.

2006-10-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/driver.c, dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c:
	wgl: Move wglDeleteContext to gdi32.

2006-10-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/directory.c:
	ntdll: Plug a memory leak.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/msvcrt/direct.h,
	  include/msvcrt/malloc.h, include/msvcrt/mbstring.h,
	  include/msvcrt/search.h, include/msvcrt/stddef.h,
	  include/msvcrt/stdio.h, include/msvcrt/string.h,
	  include/msvcrt/sys/types.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h:
	configure: Don't define _WIN64 on the command line to avoid trouble with
	system headers.

2006-10-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/rebar.c:
	comctl32: rebar: Don't return rectangles with negative width or height in
	NCCalcSize.

	* dlls/user/input.c:
	user32: Send a WM_MOUSELEAVE even if another window calls TrackMouseEvent
	before the timer proc is called.

2006-10-16  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel32/locale.c:
	kernel32: Add support for detecting the user locale preference from the system
	on Mac OS X.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Add a critical section to protect the connection list in each
	protseq to avoid taking the process-wide server_cs in the hot path for
	each protocol.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Convert the protseq list into a standard Wine list.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Abstract out the way incoming connections are waited for so that we
	no longer need to wait on Win32 handles.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Rename protseq_ops to connection_ops to reflect the fact that
	the functions operate on an RpcConnection object, not an
	RpcServerProtseq object.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_server.h:
	rpcrt4: Create a server thread for each protseq.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, configure, configure.ac, dlls/atl/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/ole32/Makefile.in, include/Makefile.in:
	Make.rules: Added support for building IDL client/proxy/server/iid files.

	* tools/makedep.c:
	makedep: Added support for generating dependencies of IDL client/proxy/server/iid
	files.

2006-10-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Update the scroll bars after resizing the last column.

2006-10-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix a typo.

2006-10-16  Hans Leidekker <hans@it.vu.nl>

	* programs/winhelp/winhelp.c:
	winhelp: Cast-qual warnings fix.

2006-10-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTURE[MIN/MAG].

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREADDRESS[U/V].

2006-10-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c:
	secur32: Stop leaking the session key memory.

2006-10-15  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/olepro32/Makefile.in, dlls/olepro32/version.rc:
	olepro32: Add version resource.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c:
	libuuid: Fixed typo in CLSID_SynchronizeContainer.

	* include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/trace.c:
	server: A window timer id should be an unsigned long.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user/input.c:
	user32: When calling TrackMouseEvent with TME_LEAVE the dwHoverTime may be
	uninitialized.

	* dlls/user/input.c:
	user32: Don't create timers with nEventId == 0 in TrackMouseEvent.

2006-10-15  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREHANDLE.

2006-10-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c:
	ddraw: Use real handles for state blocks.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c:
	ddraw: Make the surface list a standard wine list.

2006-10-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/driver.c, dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c:
	wgl: Move wglShareLists to gdi32.

	* dlls/gdi/gdi32.spec, dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move wglGetCurrentDC to gdi32.

	* dlls/gdi/gdi32.spec, dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	wgl: Move wglGetCurrentContext to gdi32.

2006-10-15  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/tests/registry.c, dlls/cabinet/cabinet_main.c,
	  dlls/kernel32/heap.c, dlls/mscms/mscms_priv.h,
	  dlls/msg711.acm/msg711.c, dlls/ole32/compobj.c,
	  dlls/ole32/errorinfo.c, dlls/ole32/marshal.c, dlls/ole32/ole2.c,
	  dlls/ole32/tests/storage32.c, dlls/oleaut32/dispatch.c,
	  dlls/oleaut32/oleaut.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/ungif.c, dlls/oleaut32/variant.c,
	  dlls/shell32/shlview.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h,
	  dlls/winmm/message16.c, tools/wmc/mcy.y, tools/wrc/genres.c:
	Assorted spelling fixes.

2006-10-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/urlmon/binding.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Create a message window for each binding to make sure they are cleaned
	up properly.

2006-10-15  Francois Gouget <fgouget@free.fr>

	* dlls/msi/table.c:
	msi: Remove spaces before '\n's.

	* programs/oleview/main.h:
	oleview: U(x) must be defined after winnt.h has had a chance to define
	NONAMELESSUNION. Fixes the compilation with gcc 2.95.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Remove '\0's in traces.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winetest/main.c:
	winetest: Don't start test programs with STARTUPINFO.wShowWindow = SW_HIDE.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Test and improve the custom draw and owner draw code.

	* dlls/comctl32/header.c:
	comctl32: header: Make all repaints pass through HEADER_Refresh.

	* dlls/comctl32/rebar.c:
	comctl32: rebar: bUnicode and NtfUnicode should be the same.

2006-10-15  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/secur32_priv.h:
	secur32: Get rid of NEGO_* helper modes, they will never be used. Negotiate
	should not be done via ntlm_auth.

2006-10-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/Makefile.in, dlls/secur32/hmac_md5.c,
	  dlls/secur32/hmac_md5.h:
	secur32: Implement RFC2104 (HMAC) with MD5 for NTLMv2.

2006-10-13  James Hawkins <truiken@gmail.com>

	* dlls/mscoree/mscoree.spec, dlls/mscoree/mscoree_main.c:
	mscoree: Add stub implementations of CorBindToRuntimeHost and GetCORVersion.

	* dlls/mscoree/mscoree.spec:
	mscoree: Add missing stubs to the spec file.

2006-10-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	d3d8: Implement CopyRects with BltFast.

2006-10-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added IDocHostUIHandler2 test.

	* dlls/mshtml/nsio.c:
	mshtml: Load page from moniker if AsyncOpen fails.

	* dlls/mshtml/task.c:
	mshtml: Don't crash in remove_doc_tasks if thread_data is not allocated.

2006-10-15  Hans Leidekker <hans@it.vu.nl>

	* dlls/secur32/Makefile.in, dlls/secur32/negotiate.c, dlls/secur32/ntlm.c,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/thunks.c, dlls/secur32/thunks.h, dlls/secur32/wrapper.c,
	  include/sspi.h:
	secur32: Win64 printf format warning fixes.

2006-10-15  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ole32/Makefile.in, dlls/ole32/antimoniker.c, dlls/ole32/bindctx.c,
	  dlls/ole32/classmoniker.c, dlls/ole32/clipboard.c,
	  dlls/ole32/compobj.c, dlls/ole32/compositemoniker.c,
	  dlls/ole32/datacache.c, dlls/ole32/dcom.idl,
	  dlls/ole32/defaulthandler.c, dlls/ole32/enumx.c,
	  dlls/ole32/errorinfo.c, dlls/ole32/filemoniker.c,
	  dlls/ole32/ftmarshal.c, dlls/ole32/git.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ifs.c, dlls/ole32/itemmoniker.c, dlls/ole32/marshal.c,
	  dlls/ole32/memlockbytes.c, dlls/ole32/memlockbytes16.c,
	  dlls/ole32/moniker.c, dlls/ole32/ole16.c, dlls/ole32/ole2.c,
	  dlls/ole32/ole2_16.c, dlls/ole32/ole2stubs.c, dlls/ole32/oleobj.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/rpc.c,
	  dlls/ole32/stg_bigblockfile.c, dlls/ole32/stg_prop.c,
	  dlls/ole32/stg_stream.c, dlls/ole32/storage.c,
	  dlls/ole32/storage32.c, dlls/ole32/stubmanager.c:
	ole32: Win64 printf format warning fixes.

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c,
	  dlls/dsound/tests/propset.c, dlls/infosoft/infosoft_main.c,
	  dlls/mshtml/main.c, dlls/ole32/tests/marshal.c,
	  dlls/oleaut32/tmarshal.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib16.c, dlls/shell32/classes.c,
	  dlls/shell32/debughlp.c, dlls/shell32/shfldr.h,
	  dlls/shlwapi/ordinal.c, dlls/urlmon/regsvr.c, include/guiddef.h,
	  include/wine/debug.h, tools/widl/header.c, tools/winedump/lnk.c:
	The Data1 member of the GUID struct needs to be an unsigned int too for Win64
	compatibility.

	* dlls/rpcrt4/rpc_message.c, dlls/winedos/module.c:
	janitorial: Remove redundant NULL checks before calling HeapFree wrappers.

2006-10-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and improve TB_SETHOTITEM.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use nHotItem not nOldHit for the hot item in MouseLeave.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't try to redraw buttons outside of the clipping rect.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Change the dwData from DWORD to DWORD_PTR.

2006-10-14  Jeff Latimer <lats@yless4u.com.au>

	* dlls/ole32/errorinfo.c:
	ole32: Remove dead code in errorinfo.c (Coverity).

2006-10-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: More workarounds for more kernel bugs in VFAT ioctl mapping on x86-64.

2006-10-13  Peter Oberndorfer <kumbayo84@arcor.de>

	* configure, configure.ac:
	configure: Detect mingw cross compiler in gentoo.

2006-10-13  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c:
	msi: Also set the SOURCEDIR property in MSI_InstallPackage.

	* dlls/cfgmgr32/main.c, dlls/setupapi/devinst.c, include/Makefile.in,
	  include/cfgmgr32.h, include/ddk/cfgmgr32.h:
	include: Move cfgmgr32.h to include/ to match the SDK.

	* dlls/clusapi/clusapi.c, include/Makefile.in, include/clusapi.h:
	clusapi: Add the clusapi.h public header.

2006-10-14  Mike McCormack <mike@codeweavers.com>

	* programs/winetest/send.c:
	winetest: Avoid calling fclose twice on the same file (Coverity).

2006-10-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/atom.c,
	  dlls/ntdll/tests/env.c, dlls/ntdll/tests/error.c,
	  dlls/ntdll/tests/exception.c, dlls/ntdll/tests/info.c,
	  dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/om.c,
	  dlls/ntdll/tests/path.c, dlls/ntdll/tests/port.c,
	  dlls/ntdll/tests/reg.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/tests/string.c:
	ntdll/tests: Win64 printf format warning fixes.

	* dlls/imm32/Makefile.in, dlls/imm32/imm.c:
	imm32: Win64 printf format warning fixes.

	* dlls/setupapi/Makefile.in, dlls/setupapi/devinst.c,
	  dlls/setupapi/devinst16.c, dlls/setupapi/dirid.c,
	  dlls/setupapi/install.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupcab.c, dlls/setupapi/setupx_main.c,
	  dlls/setupapi/stringtable.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/virtcopy.c:
	setupapi: Win64 printf format warning fixes.

2006-10-13  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/clipboard.c,
	  dlls/ole32/tests/compobj.c, dlls/ole32/tests/hglobalstream.c,
	  dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c,
	  dlls/ole32/tests/ole2.c, dlls/ole32/tests/propvariant.c,
	  dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c:
	ole32/tests: Win64 printf format warning fixes.

	* dlls/comctl32/Makefile.in, dlls/comctl32/animate.c,
	  dlls/comctl32/comboex.c, dlls/comctl32/comctl32undoc.c,
	  dlls/comctl32/commctrl.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/dpa.c, dlls/comctl32/draglist.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/imagelist.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/pager.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/smoothscroll.c,
	  dlls/comctl32/status.c, dlls/comctl32/tab.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c:
	comctl32: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/riched20/Makefile.in, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/paint.c,
	  dlls/riched20/richole.c, dlls/riched20/run.c, dlls/riched20/txtsrv.c,
	  dlls/riched20/writer.c:
	riched20: Win64 printf format warning fixes.

	* dlls/wininet/http.c:
	wininet: Cast-qual warnings fix.

2006-10-13  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Window style has not been initialized.

	* programs/winhelp/winhelp.c, programs/winhelp/winhelp.h:
	winhelp: Use color specified in .hlp file for background, not just WHITE_BRUSH.

2006-10-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.23.

----------------------------------------------------------------
2006-10-13  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/comboex.c,
	  dlls/comctl32/tests/dpa.c, dlls/comctl32/tests/header.c,
	  dlls/comctl32/tests/imagelist.c, dlls/comctl32/tests/listview.c,
	  dlls/comctl32/tests/mru.c, dlls/comctl32/tests/progress.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/tooltips.c:
	comctl32/tests: Win64 printf format warning fixes.

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/cdlg32.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/finddlg16.c,
	  dlls/comdlg32/finddlg32.c, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg16.c:
	comdlg32: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/winspool.drv/tests/Makefile.in, dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Win64 printf format warning fixes.

	* dlls/msxml3/tests/Makefile.in, dlls/msxml3/tests/domdoc.c:
	msxml3/tests: Win64 printf format warning fixes.

	* dlls/winspool.drv/Makefile.in, dlls/winspool.drv/info.c:
	winspool.drv: Win64 printf format warning fixes.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/oleaut32/Makefile.in, dlls/oleaut32/connpt.c,
	  dlls/oleaut32/dispatch.c, dlls/oleaut32/hash.c,
	  dlls/oleaut32/ole2disp.c, dlls/oleaut32/oleaut.c,
	  dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c,
	  dlls/oleaut32/recinfo.c, dlls/oleaut32/safearray.c,
	  dlls/oleaut32/stubs.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/typelib16.c,
	  dlls/oleaut32/typelib2.c, dlls/oleaut32/usrmarshal.c,
	  dlls/oleaut32/varformat.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/vartype.c:
	oleaut32: Win64 printf format warning fixes.

	* dlls/quartz/Makefile.in, dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c,
	  dlls/quartz/avisplit.c, dlls/quartz/control.c,
	  dlls/quartz/dsoundrender.c, dlls/quartz/enumfilters.c,
	  dlls/quartz/enummedia.c, dlls/quartz/enummoniker.c,
	  dlls/quartz/enumpins.c, dlls/quartz/enumregfilters.c,
	  dlls/quartz/filesource.c, dlls/quartz/filtergraph.c,
	  dlls/quartz/filtermapper.c, dlls/quartz/main.c,
	  dlls/quartz/memallocator.c, dlls/quartz/parser.c, dlls/quartz/pin.c,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/quartz/transform.c, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c:
	quartz: Win64 printf format warning fixes.

2006-10-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/wineps.drv/Makefile.in, dlls/wineps.drv/bitblt.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/brush.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/color.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/escape.c,
	  dlls/wineps.drv/font.c, dlls/wineps.drv/graphics.c,
	  dlls/wineps.drv/init.c, dlls/wineps.drv/pen.c, dlls/wineps.drv/ps.c,
	  dlls/wineps.drv/type1.c, dlls/wineps.drv/type42.c:
	wineps.drv: Win64 printf format warning fixes.

2006-10-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel32/Makefile.in, dlls/kernel32/actctx.c,
	  dlls/kernel32/change.c, dlls/kernel32/comm.c,
	  dlls/kernel32/computername.c, dlls/kernel32/console.c,
	  dlls/kernel32/cpu.c, dlls/kernel32/dosmem.c,
	  dlls/kernel32/editline.c, dlls/kernel32/environ.c,
	  dlls/kernel32/except.c, dlls/kernel32/file.c, dlls/kernel32/file16.c,
	  dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c,
	  dlls/kernel32/lcformat.c, dlls/kernel32/locale.c,
	  dlls/kernel32/lzexpand.c, dlls/kernel32/module.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/path.c, dlls/kernel32/powermgnt.c,
	  dlls/kernel32/process.c, dlls/kernel32/profile.c,
	  dlls/kernel32/relay16.c, dlls/kernel32/resource.c,
	  dlls/kernel32/resource16.c, dlls/kernel32/snoop16.c,
	  dlls/kernel32/stress.c, dlls/kernel32/sync.c,
	  dlls/kernel32/syslevel.c, dlls/kernel32/tape.c, dlls/kernel32/task.c,
	  dlls/kernel32/thread.c, dlls/kernel32/thunk.c, dlls/kernel32/time.c,
	  dlls/kernel32/toolhelp.c, dlls/kernel32/toolhelp16.c,
	  dlls/kernel32/utthunk.c, dlls/kernel32/version.c,
	  dlls/kernel32/volume.c, dlls/kernel32/vxd.c, dlls/kernel32/win87em.c,
	  dlls/kernel32/wowthunk.c:
	kernel32: Win64 printf format warning fixes.

	* dlls/gdi/tests/Makefile.in, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/mapping.c, dlls/gdi/tests/metafile.c,
	  dlls/gdi/tests/palette.c, dlls/gdi/tests/pen.c:
	gdi/tests: Win64 printf format warning fixes.

2006-10-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Avoid a compiler warning.

2006-10-13  Francois Gouget <fgouget@free.fr>

	* dlls/dmband/bandtrack.c, dlls/dmcompos/chordmaptrack.c,
	  dlls/dmcompos/signposttrack.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmime/seqtrack.c,
	  dlls/dmime/sysextrack.c, dlls/dmime/tempotrack.c,
	  dlls/dmime/timesigtrack.c, dlls/dmime/wavetrack.c,
	  dlls/dmscript/scripttrack.c, dlls/dmstyle/auditiontrack.c,
	  dlls/dmstyle/chordtrack.c, dlls/dmstyle/commandtrack.c,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/styletrack.c:
	Add '\n's to Wine traces.

	* dlls/d3d8/pixelshader.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/vertexshader.c,
	  dlls/imagehlp/integrity.c, dlls/msi/action.c, dlls/shlwapi/reg.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/url.c, dlls/usp10/usp10.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/texture.c, dlls/winex11.drv/dib.c,
	  tools/widl/write_msft.c:
	Assorted spelling fixes.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcrt4_main.c, include/rpcdce.h:
	rpcrt4: Add RPC_CSTR, RPC_WSTR and update the prototypes accordingly.

	* dlls/secur32/ntlm.c:
	secur32: Add missing '\n' in a Wine trace.

	* dlls/olepro32/olepro32stubs.c:
	olepro32: Mark stubs as such.

2006-10-13  Markus Amsler <markus.amsler@oribi.org>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread eof handling.

	* dlls/msvcrt/file.c:
	msvcrt: fread: Fill buffer on small reads.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add fread eof tests.

2006-10-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Add shader version/end masks to the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/utils.c, include/wine/wined3d_types.h:
	wined3d: Add D3DTEXTURETRANSFORMTYPE to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add D3DCLIPPLANE constants to the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DSHADER_ADDRMODE masks to the WINED3D namespace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Add D3DSI and other opcode masks to the WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add D3DVERTEXBLENDFLAGS to the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add D3DTEXTUREOP to the WINED3D namespace.

2006-10-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Do not let the a surface dimension fall to 0.

	* dlls/ddraw/ddraw.c:
	ddraw: Remove an incorrect size check.

2006-10-12  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/mciseq/Makefile.in, dlls/mciseq/mcimidi.c:
	mciseq: Win64 printf format warning fixes.

2006-10-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/shell32_De.rc:
	shell32: Fix typo in Run dialog.

2006-10-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/gdi/Makefile.in, dlls/gdi/bidi.c, dlls/gdi/bitblt.c,
	  dlls/gdi/bitmap.c, dlls/gdi/brush.c, dlls/gdi/clipping.c,
	  dlls/gdi/dc.c, dlls/gdi/dib.c, dlls/gdi/driver.c,
	  dlls/gdi/enhmetafile.c, dlls/gdi/enhmfdrv/graphics.c,
	  dlls/gdi/enhmfdrv/init.c, dlls/gdi/font.c, dlls/gdi/freetype.c,
	  dlls/gdi/gdi16.c, dlls/gdi/gdiobj.c, dlls/gdi/metafile.c,
	  dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/init.c, dlls/gdi/opengl.c,
	  dlls/gdi/painting.c, dlls/gdi/palette.c, dlls/gdi/path.c,
	  dlls/gdi/pen.c, dlls/gdi/printdrv.c, dlls/gdi/region.c,
	  dlls/gdi/wing.c:
	gdi: Win64 printf format warning fixes.

	* dlls/dmstyle/Makefile.in, dlls/dmstyle/auditiontrack.c,
	  dlls/dmstyle/chordtrack.c, dlls/dmstyle/commandtrack.c,
	  dlls/dmstyle/dmutils.c, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/style.c,
	  dlls/dmstyle/styletrack.c:
	dmstyle: Win64 printf format warning fixes.

	* dlls/msacm32/Makefile.in, dlls/msacm32/driver.c, dlls/msacm32/filter.c,
	  dlls/msacm32/format.c, dlls/msacm32/internal.c,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c:
	msacm32: Win64 printf format warning fixes.

	* dlls/dmusic/Makefile.in, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/download.c,
	  dlls/dmusic/downloadedinstrument.c, dlls/dmusic/instrument.c,
	  dlls/dmusic/port.c, dlls/dmusic/portdownload.c, dlls/dmusic/thru.c:
	dmusic: Win64 printf format warning fixes.

	* dlls/mciavi32/Makefile.in, dlls/mciavi32/info.c, dlls/mciavi32/mciavi.c,
	  dlls/mciavi32/mmoutput.c, dlls/mciavi32/wnd.c:
	mciavi32: Win64 printf format warning fixes.

	* dlls/msvfw32/Makefile.in, dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvideo16.c, dlls/msvfw32/msvideo_main.c:
	msvfw32: Win64 printf format warning fixes.

	* dlls/dmband/Makefile.in, dlls/dmband/band.c, dlls/dmband/bandtrack.c,
	  dlls/dmband/dmutils.c:
	dmband: Win64 printf format warning fixes.

	* dlls/dmloader/Makefile.in, dlls/dmloader/classfactory.c,
	  dlls/dmloader/container.c, dlls/dmloader/debug.c,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c:
	dmloader: Win64 printf format warning fixes.

	* dlls/mciwave/Makefile.in, dlls/mciwave/mciwave.c:
	mciwave: Win64 printf format warning fixes.

	* dlls/mpr/Makefile.in, dlls/mpr/multinet.c, dlls/mpr/nps.c,
	  dlls/mpr/pwcache.c, dlls/mpr/wnet.c:
	mpr: Win64 printf format warning fixes.

2006-10-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/sane.ds/sane_i.h:
	sane.ds: Get rid of the prototypes of some removed functions.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/itss/Makefile.in, dlls/itss/chm_lib.c, dlls/itss/itss.c,
	  dlls/itss/storage.c:
	itss: Win64 printf format warning fixes.

	* dlls/mapi32/tests/Makefile.in, dlls/mapi32/tests/imalloc.c,
	  dlls/mapi32/tests/prop.c, dlls/mapi32/tests/util.c:
	mapi32/tests: Win64 printf format warning fixes.

	* dlls/tapi32/Makefile.in, dlls/tapi32/assisted.c, dlls/tapi32/line.c,
	  dlls/tapi32/phone.c:
	tapi32: Win64 printf format warning fixes.

	* dlls/netapi32/Makefile.in, dlls/netapi32/access.c,
	  dlls/netapi32/apibuf.c, dlls/netapi32/ds.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/nbt.c,
	  dlls/netapi32/netapi32.c, dlls/netapi32/netbios.c,
	  dlls/netapi32/share.c, dlls/netapi32/wksta.c:
	netapi32: Win64 printf format warning fixes.

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/olefont.c,
	  dlls/oleaut32/tests/olepicture.c, dlls/oleaut32/tests/safearray.c,
	  dlls/oleaut32/tests/typelib.c, dlls/oleaut32/tests/usrmarshal.c,
	  dlls/oleaut32/tests/varformat.c, dlls/oleaut32/tests/vartest.c,
	  dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Win64 printf format warning fixes.

2006-10-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/shell32/shell32.spec, dlls/shell32/shellreg.c:
	shell32: Implement SHRegQueryValueA with RegQueryValueA.

2006-10-11  Srivatsa Kanchi, R <skanchi@nexthop.com>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Set correct LD_LIBRARY_PATH.

2006-10-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/gdi/opengl.c:
	opengl: Fix wglMakeCurrent bug.

2006-10-12  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/tests/Makefile.in, dlls/mscms/tests/profile.c:
	mscms/tests: Win64 printf format warning fixes.

2006-10-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/edit.c:
	regedit: Cast-qual warnings fix.

2006-10-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Handle the sign properly when converting integer data.

	* dlls/msi/table.c:
	msi: Improve error checking when applying transform data.

2006-10-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/service.c, dlls/crypt32/tests/encode.c,
	  dlls/dmime/tempotrack.c, dlls/shlwapi/tests/clist.c,
	  dlls/user/tests/class.c, tools/winedump/pe.c:
	Fixed some printf warnings caused by using sizeof.

	* loader/main.c:
	loader: Make sure the reserved area is protected on MacOSX too.

	* dlls/ws2_32/Makefile.in, dlls/ws2_32/async.c, dlls/ws2_32/socket.c,
	  include/winsock.h:
	ws2_32: Win64 printf format fixes.

	* dlls/ws2_32/socket.c, include/winsock.h, include/winsock2.h:
	winsock: Add a WS_ prefix to the BSD types.

2006-10-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Store dwBaseCustDraw and dwItemCDFlag in local variables.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge TOOLBAR_InsertButtonA and TOOLBAR_InsertButtonW.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Passing a string pointer in TB_INSERTBUTTON shouldn't change
	the strings table (with test case).

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Remove dwItemCustDraw from TOOLBAR_INFO and store it as a
	local variable.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't send NM_CUSTOMDRAW for separators.

	* dlls/comctl32/header.c:
	comctl32: header: Call DefWindowProcW not DefWindowProcA.

	* dlls/comctl32/header.c:
	comctl32: header: Invalidate the control after a WM_SETREDRAW with wParam
	== TRUE.

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't call ScrollColumn with an out of bounds index when
	resizing the last column.

2006-10-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Merge D3DDP_MAXTEXCOORD constants into one constant in WINED3D
	namespace.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DPRIMITIVETYPE types into one type in WINED3D namespace.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DCOLOR types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge D3DRECT types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/ddraw/executebuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge D3DMATRIX types into one type in WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: D3DTRANSFORMSTATETYPE: Consistently use in the WINED3D namespace.

	* dlls/ddraw/device.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: D3DRENDERSTATETYPE: Consistently use in the WINED3D namespace.

2006-10-11  Nickolay V. Shmyrev <nshmyrev@yandex.ru>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Always set window type.

2006-10-11  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/lz32/tests/Makefile.in, dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Win64 printf format warning fixes.

	* dlls/dinput/tests/Makefile.in, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c:
	dinput/tests: Win64 printf format warning fixes.

	* dlls/advpack/tests/Makefile.in, dlls/advpack/tests/advpack.c,
	  dlls/advpack/tests/files.c, dlls/advpack/tests/install.c:
	advpack/tests: Win64 printf format warning fixes.

2006-10-12  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* dlls/msi/msi_Es.rc:
	msi: Updated Spanish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Es.rc:
	wldap32: Added Spanish translation.

	* dlls/mshtml/Es.rc, dlls/mshtml/rsrc.rc:
	mshtml: Added Spanish translation.

2006-10-11  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/user/sysparams.c:
	user32: SPI_GETFONTSMOOTHINGORIENTATION and SPI_SETFONTSMOOTHINGORIENTATION
	are kown actions.

2006-10-11  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/fdi.c:
	cabinet: Make internal functions static.

	* dlls/crypt32/chain.c:
	crypt32: Make an internal function static.

	* dlls/comctl32/listview.c, dlls/comctl32/propsheet.c:
	comctl32: Make internal functions static.

	* dlls/gphoto2.ds/gphoto2_main.c:
	gphoto2.ds: Make an internal function static.

	* include/winbase.h, include/winreg.h:
	advapi32: Add missing declarations to the public headers.

	* dlls/advapi32/crypt_sha.c, dlls/advapi32/registry.c:
	advapi32: Make internal functions static.

2006-10-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* include/winnt.h:
	winedump: Cast-qual warnings fix (with thanks to Dmitry Timoshkov and Eric
	Pouech).

	* tools/winebuild/import.c:
	winebuild: Cast-qual warning fix.

2006-10-11  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/ws2_32/socket.c:
	winsock: Add mapping for SO_ACCEPTCONN.

2006-10-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Test transforms removing a row in a table.

2006-10-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Tests for transforms modifying rows in a table.

	* dlls/msi/table.c:
	msi: An empty string table entry should always have a zero refcount.

2006-10-10  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/gamma.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge GAMMARAMP types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge VIEWPORT types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Merge MATERIAL types into one type in WINED3D namespace.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/ddraw/device.c,
	  dlls/wined3d/device.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Merge LIGHT types into one type in WINED3D namespace.

	* dlls/wined3d/wined3d_private.h:
	wined3d: TEXTUREFILTERTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DDECLTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DQUERYTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c:
	wined3d: D3DTEXTURESTAGESTATETYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: D3DDEVTYPE: Consistently use in WINED3D namespace.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: D3DFORMAT: Consistently use WINED3D namespace.

2006-10-10  Ge van Geldorp <ge@gse.nl>

	* dlls/gdi/tests/generated.c, dlls/kernel32/tests/generated.c,
	  dlls/ntdll/tests/generated.c, dlls/rpcrt4/tests/generated.c,
	  dlls/shell32/tests/generated.c, dlls/shlwapi/tests/generated.c,
	  dlls/urlmon/tests/generated.c, dlls/user/tests/generated.c,
	  tools/winapi/tests.dat, tools/winapi/winapi_test:
	winapi_test: Regenerate tests.
	Remove structs from test list which have preprocessor directives in
	their definitions (winapi_test can't handle that).

2006-10-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Set the SourceDir and SOURCEDIR properties in the ResolveSource action.

	* dlls/msi/tests/package.c:
	msi: Clean up after the package tests.

2006-10-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msiquery.c:
	msi: Check transforms have the correct storage guid.

	* dlls/msi/tests/db.c:
	msi: Check that transforms return the correct data.

2006-10-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/spy.c, include/winuser.h:
	user: Add some missing messages to the message spy.

2006-10-10  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/mlang/tests/Makefile.in, dlls/mlang/tests/mlang.c:
	mlang/tests: Win64 printf format warning fixes.

	* dlls/usp10/tests/Makefile.in, dlls/usp10/tests/usp10.c:
	usp10/tests: Win64 printf format warning fixes.

	* dlls/psapi/tests/Makefile.in, dlls/psapi/tests/psapi_main.c:
	psapi/tests: Win64 printf format warning fixes.

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/tests/schannel.c,
	  dlls/secur32/tests/secur32.c:
	secur32/tests: Win64 printf format warning fixes.

2006-10-10  H. Verbeet <hverbeet@gmail.com>

	* programs/regedit/regproc.c:
	regedit: Format warning fixes.

	* programs/wordpad/wordpad.c:
	wordpad: Format warning fixes.

	* dlls/ddraw/Makefile.in, dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/device.c,
	  dlls/ddraw/direct3d.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gamma.c, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/palette.c, dlls/ddraw/parent.c,
	  dlls/ddraw/surface.c, dlls/ddraw/texture.c, dlls/ddraw/utils.c,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c:
	ddraw: Win64 printf format warning fixes.

	* dlls/d3d9/tests/surface.c:
	d3d9: Disable the surface pitch size test for now, just check alignment instead.

2006-10-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: WinME sometimes returns short filenames.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Be more verbose and aware of root directory.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: More checks for various LZOpenFile[AW] operations on existing files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Non-op cosmetics for LZOpenFile[AW] operations.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Test more last errors set by LZOpenFile[AW].

2006-10-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/tests/Makefile.in, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/ddrawmodes.c, dlls/ddraw/tests/dsurface.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw/tests: Win64 printf format warning fixes.

	* dlls/d3d9/Makefile.in, dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_main.c, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/resource.c, dlls/d3d9/stateblock.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Win64 printf format warning fixes.

	* dlls/d3d8/tests/Makefile.in, dlls/d3d8/tests/d3d8_main.c,
	  dlls/d3d8/tests/device.c:
	d3d8/tests: Win64 printf format warning fixes.

	* dlls/d3d8/Makefile.in, dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_main.c, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/pixelshader.c,
	  dlls/d3d8/resource.c, dlls/d3d8/stateblock.c, dlls/d3d8/surface.c,
	  dlls/d3d8/swapchain.c, dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Win64 printf format warning fixes.

	* dlls/wined3d/baseshader.c:
	wined3d: Improve shader_dump_decl_usage() TRACEs.

2006-10-10  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/query.c:
	wined3d: Corrected names in checkGLcall text.

2006-10-10  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Fix for DDSURFACEDESC param in CreateSurface.

2006-10-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/parser.l:
	widl: Cast-qual warning fix.

2006-10-10  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/tests/shreg.c:
	shlwapi: Cast-qual warnings fix.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Fix Win64 printf format warnings.

2006-10-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/appsearch.c,
	  dlls/msi/classes.c, dlls/msi/cond.y, dlls/msi/custom.c,
	  dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/files.c,
	  dlls/msi/font.c, dlls/msi/format.c, dlls/msi/helpers.c,
	  dlls/msi/install.c, dlls/msi/msi.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/source.c, dlls/msi/upgrade.c:
	msi: Merge action.h into msipriv.h.

	* dlls/msi/msipriv.h, dlls/msi/table.c:
	msi: Make msi_makestring static.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmime/Makefile.in, dlls/dmime/audiopath.c, dlls/dmime/dmutils.c,
	  dlls/dmime/graph.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/patterntrack.c, dlls/dmime/performance.c,
	  dlls/dmime/segment.c, dlls/dmime/segmentstate.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmime/seqtrack.c,
	  dlls/dmime/sysextrack.c, dlls/dmime/tempotrack.c,
	  dlls/dmime/timesigtrack.c, dlls/dmime/tool.c, dlls/dmime/wavetrack.c:
	dmime: Win64 printf format warning fixes.

	* dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/alloc.c,
	  dlls/kernel32/tests/atom.c, dlls/kernel32/tests/change.c,
	  dlls/kernel32/tests/codepage.c, dlls/kernel32/tests/comm.c,
	  dlls/kernel32/tests/console.c, dlls/kernel32/tests/directory.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/environ.c,
	  dlls/kernel32/tests/file.c, dlls/kernel32/tests/format_msg.c,
	  dlls/kernel32/tests/heap.c, dlls/kernel32/tests/locale.c,
	  dlls/kernel32/tests/module.c, dlls/kernel32/tests/path.c,
	  dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/process.c,
	  dlls/kernel32/tests/sync.c, dlls/kernel32/tests/thread.c,
	  dlls/kernel32/tests/time.c, dlls/kernel32/tests/toolhelp.c,
	  dlls/kernel32/tests/version.c, dlls/kernel32/tests/virtual.c:
	kernel32/tests: Win64 printf format warning fixes.

2006-10-08  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/input.c:
	user: Add test for LL mouse hook and [Get|Set]CursorPos.

2006-10-09  Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>

	* programs/regedit/edit.c, programs/regedit/regedit.c:
	programs/regedit: Fix format specifiers for _stscanf and fprintf.

2006-10-09  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP dest modifier related items into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP source modifier-related items into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSP_REG structures into the WINED3D namespace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private_types.h,
	  include/wine/wined3d_types.h:
	wined3d: Move D3DSP DCL-related structures into WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSPR structure into the WINED3D namespace.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  dlls/wined3d/wined3d_private_types.h:
	wined3d: Move D3DSIO structure into WINED3D namespace.

2006-10-10  Frank Richter <frank.richter@gmail.com>

	* dlls/kernel32/nls/winerr_enu.mc:
	kernel32: Fix typos in English messages.

2006-10-09  Michael Ploujnikov <ploujj@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/db.c,
	  dlls/msi/tests/format.c, dlls/msi/tests/install.c,
	  dlls/msi/tests/package.c:
	msi/tests: Win64 printf format warning fixes.

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/devinst.c,
	  dlls/setupapi/tests/parser.c, dlls/setupapi/tests/query.c,
	  dlls/setupapi/tests/stringtable.c:
	setupapi/tests: Win64 printf format warning fixes.

	* dlls/uxtheme/tests/Makefile.in:
	uxtheme: Win64 printf format warning fixes.

2006-10-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/itss/chm_lib.c, dlls/itss/lzx.c, dlls/msvcrt/tests/file.c,
	  dlls/oleaut32/ungif.c, dlls/winmm/winenas/audio.c, libs/wpp/ppl.l,
	  libs/wpp/wpp.c, programs/taskmgr/perfdata.c:
	janitorial: Remove remaining NULL checks before free() (found by Smatch).

	* tools/widl/parser.y, tools/winedump/msmangle.c, tools/winedump/search.c,
	  tools/winedump/symbol.c, tools/wmc/write.c, tools/wrc/parser.y:
	tools: Remove redundant NULL checks before free() (found by Smatch).

	* server/atom.c, server/change.c, server/console.c, server/hook.c,
	  server/mailslot.c, server/mapping.c, server/named_pipe.c,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/thread.c, server/token.c, server/window.c:
	server: Remove redundant NULL check before free() (found by Smatch).

2006-10-10  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Fix a memory leak.

	* dlls/msi/msiquery.c:
	msi: Avoid an unnecessary strdup.

	* dlls/msi/table.c:
	msi: Avoid reading the transform table data twice.

	* dlls/msi/tests/db.c, dlls/msi/tests/format.c, dlls/msi/tests/install.c,
	  dlls/msi/tests/package.c:
	msi: Fix handle leaks in the test cases.

	* dlls/msi/appsearch.c, dlls/msi/custom.c, dlls/msi/database.c:
	msi: Fix memory leaks and bad frees.

2006-10-10  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean resource.

2006-10-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/wined3d/directx.c:
	wined3d: Fix DEBUG_SINGLE_MODE.

2006-10-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: NULL-terminate dst on error.

	* dlls/msi/appsearch.c:
	msi: Add missing sizeof(WCHAR) multiplier.

2006-10-10  Frank Richter <frank.richter@gmail.com>

	* dlls/kernel32/Makefile.in, dlls/kernel32/kernel.rc,
	  dlls/kernel32/nls/winerr_deu.mc:
	kernel32: Added German translation of messages.

	* dlls/kernel32/nls/deu.nls:
	kernel32: Translated some more NLS strings to German.

2006-10-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dsound/tests/Makefile.in, dlls/dsound/tests/capture.c,
	  dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c:
	dsound/tests: Win64 printf format warning fixes.

	* dlls/dplayx/Makefile.in, dlls/dplayx/dplay.c, dlls/dplayx/dplaysp.c,
	  dlls/dplayx/dplayx_global.c, dlls/dplayx/dplayx_main.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c:
	dplayx: Win64 printf format warning fixes.

	* dlls/avifil32/Makefile.in, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/tmpfile.c,
	  dlls/avifil32/wavfile.c:
	avifil32: Win64 printf format warning fixes.

2006-10-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/mapi32/Makefile.in, dlls/mapi32/imalloc.c,
	  dlls/mapi32/mapi32_main.c, dlls/mapi32/prop.c,
	  dlls/mapi32/sendmail.c, dlls/mapi32/util.c:
	mapi32: Win64 printf format warning fixes.

	* dlls/version/tests/Makefile.in, dlls/version/tests/info.c,
	  dlls/version/tests/install.c:
	version/tests: Win64 printf format warning fixes.

	* dlls/mlang/Makefile.in, dlls/mlang/mlang.c:
	mlang: Win64 printf format warning fixes.

	* dlls/dmcompos/Makefile.in, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/signposttrack.c:
	dmcompos: Win64 printf format warning fixes.

	* dlls/msacm32.drv/Makefile.in, dlls/msacm32.drv/wavemap.c:
	msacm32.drv: Win64 printf format warning fixes.

	* dlls/mcicda/Makefile.in, dlls/mcicda/mcicda.c:
	mcicda: Win64 printf format warning fixes.

	* dlls/odbc32/Makefile.in, dlls/odbc32/proxyodbc.c:
	odbc32: Win64 printf format warning fixes.

2006-10-09  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the TB_ADDSTRING from resources for a NUL delimiter.

2006-10-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Merge AddButtonsA and AddButtonsW into AddButtonsT.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Create the tooltip control during WM_MOUSEMOVE so that the
	NM_TOOLTIPSCREATE is not sent too early.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Move add/remove/setrect tooltip code to separate functions.

2006-10-09  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Implement ITypeInfo_CreateInstance.

2006-10-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/main.c:
	ddraw: Remove the process counter.

	* dlls/ddraw/main.c:
	ddraw: Protect the ddraw list.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/main.c:
	ddraw: Make the ddraw list a wine list.

2006-10-09  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/editor.c:
	riched20: Don't crash if a colour isn't found.

2006-10-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Make internal functions static.

2006-10-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make the shader mode selections per device.

2006-10-07  Nick Burns <adger44@hotmail.com>

	* tools/winegcc/winegcc.c:
	winegcc: __stdcall__ and __cdecl__ defined safely for Mac OSX.

	* include/msvcrt/process.h:
	msvcrt/process.h: __stdcall__ defined safely for Mac OSX.

2006-10-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d9/tests/Makefile.in, dlls/d3d9/tests/device.c,
	  dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/texture.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/tests/volume.c:
	d3d9/tests: Printf format fixes for d3d9 tests.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Make d3d9 tests Wcast-qual compliant.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Remove unused device parameter.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Add init/teardown handlers for state tests.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Clean up get/set handler arguments.

2006-10-08  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user/misc.c:
	user32: Return a fake device notification handle in RegisterDeviceNotificationA.

	* dlls/msxml3/Makefile.in, dlls/msxml3/version.rc:
	msxml3: Add a version resource.

2006-10-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/winex11.drv/Makefile.in, dlls/winex11.drv/bitblt.c,
	  dlls/winex11.drv/bitmap.c, dlls/winex11.drv/brush.c,
	  dlls/winex11.drv/clipboard.c, dlls/winex11.drv/dce.c,
	  dlls/winex11.drv/desktop.c, dlls/winex11.drv/dib.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/graphics.c,
	  dlls/winex11.drv/keyboard.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/scroll.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/window.c,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11ddraw.c,
	  dlls/winex11.drv/xdnd.c, dlls/winex11.drv/xim.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrender.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11drv: Win64 printf format warning fixes.

2006-10-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* server/ptrace.c:
	server: Cast-qual warning fix.

2006-10-09  James Hawkins <truiken@gmail.com>

	* include/msi.h, include/msiquery.h:
	msi: Add missing declarations to the public headers.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/custom.c,
	  dlls/msi/files.c, dlls/msi/helpers.c, dlls/msi/install.c,
	  dlls/msi/msi.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/registry.c, dlls/msi/select.c:
	msi: Make internal functions static.

2006-10-06  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Perform button control events in greatest to least order.

2006-10-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/uninstaller/Pl.rc:
	uninstaller: Fix Polish translation.

	* programs/winefile/Pl.rc:
	winefile: Update Polish translation.

	* programs/clock/Pl.rc:
	clock: Update Polish translation.

	* programs/notepad/Pl.rc:
	notepad: Update Polish translation.

	* programs/progman/Pl.rc, programs/progman/rsrc.rc:
	progman: Add Polish translation.

2006-10-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dmscript/Makefile.in, dlls/dmscript/dmscript_main.c,
	  dlls/dmscript/script.c, dlls/dmscript/scripttrack.c:
	dmscript: Win64 printf format warning fixes.

	* dlls/rasapi32/Makefile.in, dlls/rasapi32/rasapi.c:
	rasapi32: Win64 printf format warning fixes.

	* dlls/rsaenh/Makefile.in, dlls/rsaenh/rsaenh.c:
	rsaenh: Win64 printf format warning fixes.

	* dlls/dswave/Makefile.in, dlls/dswave/dswave.c,
	  dlls/dswave/dswave_main.c:
	dswave: Win64 printf format warning fixes.

	* dlls/dpnet/Makefile.in, dlls/dpnet/address.c, dlls/dpnet/client.c,
	  dlls/dpnet/dpnet_main.c:
	dpnet: Win64 printf format warning fixes.

	* dlls/hlink/Makefile.in, dlls/hlink/browse_ctx.c,
	  dlls/hlink/hlink_main.c, dlls/hlink/link.c:
	hlink: Win64 printf format warning fixes.

	* dlls/qcap/Makefile.in, dlls/qcap/capturegraph.c, dlls/qcap/enummedia.c,
	  dlls/qcap/enumpins.c, dlls/qcap/pin.c, dlls/qcap/v4l.c,
	  dlls/qcap/vfwcapture.c:
	qcap: Win64 printf format warning fixes.

	* dlls/netapi32/tests/Makefile.in, dlls/netapi32/tests/access.c,
	  dlls/netapi32/tests/apibuf.c, dlls/netapi32/tests/ds.c,
	  dlls/netapi32/tests/wksta.c:
	netapi32: Win64 printf format warning fixes.

	* dlls/version/Makefile.in, dlls/version/info.c, dlls/version/install.c,
	  dlls/version/resource.c, dlls/version/ver16.c:
	version: Win64 printf format warning fixes.

	* dlls/uxtheme/Makefile.in, dlls/uxtheme/draw.c, dlls/uxtheme/main.c,
	  dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Win64 printf format warning fixes.

	* dlls/wintab32/Makefile.in, dlls/wintab32/context.c,
	  dlls/wintab32/manager.c, dlls/wintab32/wintab16.c,
	  dlls/wintab32/wintab32.c:
	wintab32: Win64 printf format warning fixes.

	* dlls/d3dxof/Makefile.in, dlls/d3dxof/d3dxof.c:
	d3dxof: Win64 printf format warning fixes.

	* dlls/vmm.vxd/Makefile.in, dlls/vmm.vxd/vmm.c:
	vmm.vxd: Win64 printf format warning fixes.

	* dlls/dmsynth/Makefile.in, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c:
	dmsynth: Win64 printf format warning fixes.

	* dlls/ws2_32/tests/Makefile.in, dlls/ws2_32/tests/sock.c:
	ws2_32/tests: Win64 printf format warning fixes.

	* dlls/pstorec/Makefile.in, dlls/pstorec/pstorec.c:
	pstorec: Win64 printf format warning fixes.

	* dlls/wsock32/Makefile.in, dlls/wsock32/service.c, dlls/wsock32/socket.c:
	wsock32: Win64 printf format warning fixes.

	* dlls/devenum/Makefile.in, dlls/devenum/createdevenum.c,
	  dlls/devenum/devenum_main.c, dlls/devenum/mediacatenum.c,
	  dlls/devenum/parsedisplayname.c:
	devenum: Win64 printf format warning fixes.

	* dlls/msrle32/Makefile.in, dlls/msrle32/msrle32.c:
	msrle32: Win64 printf format warning fixes.

	* dlls/imagehlp/Makefile.in, dlls/imagehlp/access.c,
	  dlls/imagehlp/integrity.c, dlls/imagehlp/modify.c:
	imagehlp: Win64 printf format warning fixes.

	* dlls/riched20/tests/Makefile.in, dlls/riched20/tests/editor.c:
	riched20/tests: Win64 printf format warning fixes.

2006-10-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Set the DDSCAPS2_MIPMAPSUBLEVEL flag on sublevels.

2006-10-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/rsaenh/tests/Makefile.in, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Win64 printf format warning fixes.

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Make hmac test run on all windows versions.

	* dlls/msi/tests/install.c:
	msi: Make tests run on Win98 again.

2006-10-08  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add ddeml.dll to fake dlls.

2006-10-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/Makefile.in, dlls/dinput/device.c,
	  dlls/dinput/dinput_main.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linux.c, dlls/dinput/joystick_linuxinput.c,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Win64 printf format warning fixes.

2006-10-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/tests/Makefile.in, dlls/shell32/tests/shelllink.c,
	  dlls/shell32/tests/shellpath.c, dlls/shell32/tests/shlexec.c,
	  dlls/shell32/tests/shlfileop.c, dlls/shell32/tests/shlfolder.c:
	shell32/tests: Win64 printf format warning fixes.

	* dlls/shell32/Makefile.in, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/classes.c, dlls/shell32/clipboard.c,
	  dlls/shell32/control.c, dlls/shell32/cpanelfolder.c,
	  dlls/shell32/dataobject.c, dlls/shell32/debughlp.c,
	  dlls/shell32/dialogs.c, dlls/shell32/dragdrophelper.c,
	  dlls/shell32/enumidlist.c, dlls/shell32/folders.c,
	  dlls/shell32/pidl.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shellstring.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfolder.c, dlls/shell32/shlfsbind.c,
	  dlls/shell32/shlmenu.c, dlls/shell32/shlview.c,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/systray.c:
	shell32: Win64 printf format warning fixes.

2006-10-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user/tests/Makefile.in, dlls/user/tests/class.c,
	  dlls/user/tests/clipboard.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/input.c,
	  dlls/user/tests/listbox.c, dlls/user/tests/menu.c,
	  dlls/user/tests/monitor.c, dlls/user/tests/msg.c,
	  dlls/user/tests/resource.c, dlls/user/tests/sysparams.c,
	  dlls/user/tests/text.c, dlls/user/tests/win.c,
	  dlls/user/tests/winstation.c, dlls/user/tests/wsprintf.c:
	user/tests: Win64 printf format warning fixes.

2006-10-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dxerr8/Makefile.in, dlls/dxerr8/dxerr8.c:
	dxerr8: Win64 printf format warning fixes.

	* dlls/olecli32/Makefile.in, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli_main.c:
	olecli32: Win64 printf format warning fixes.

	* dlls/dxerr9/Makefile.in, dlls/dxerr9/dxerr9.c:
	dxerr9: Win64 printf format warning fixes.

	* dlls/olesvr32/Makefile.in, dlls/olesvr32/olesvr_main.c:
	olesvr32: Win64 printf format warning fixes.

	* dlls/quartz/tests/Makefile.in, dlls/quartz/tests/filtergraph.c,
	  dlls/quartz/tests/memallocator.c:
	quartz/tests: Win64 printf format warning fixes.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/cstub.c,
	  dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4/tests: Win64 printf format warning fixes.

	* dlls/psapi/Makefile.in, dlls/psapi/psapi_main.c:
	psapi: Win64 printf format warning fixes.

2006-10-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/iphlpapi/Makefile.in, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/iphlpapi/tests/Makefile.in, dlls/iphlpapi/tests/iphlpapi.c:
	iphlpapi: Win64 printf format warning fixes.

2006-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/ole32/ole2.c, dlls/ole32/tests/ole2.c:
	ole32: Don't fail in OleCreate if created object doesn't implement
	IRunnableObject or IOleChache.

2006-10-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comdlg32/fontdlg16.c:
	comdlg32: Move NULL check before use (Coverity).

2006-10-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/tests/misc.c, dlls/mshtml/tests/protocol.c:
	mshtml: Win64 printf format warning fixes.

	* dlls/urlmon/tests/Makefile.in, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c:
	urlmon: Win64 printf format warning fixes.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/shortcut.c,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Win64 printf format warning fixes.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/Makefile.in, dlls/shlwapi/tests/clist.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/shlwapi/tests/path.c,
	  dlls/shlwapi/tests/shreg.c, dlls/shlwapi/tests/string.c:
	shlwapi/tests: Win64 printf format warning fixes.

2006-10-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winefile/winefile.c:
	winefile: Cast-qual warnings fix.

2006-10-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winebrowser/main.c:
	winebrowser: Cast-qual warnings fix.

	* programs/wineboot/wineboot.c:
	wineboot: Cast-qual warning fix.

2006-10-06  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shlwapi/shlwapi_main.c:
	shlwapi: Update info in DllGetVersion.

2006-10-07  Mike McCormack <mike@codeweavers.com>

	* dlls/d3d8/tests/d3d8_main.c:
	d3d8: Don't crash if d3d8 can't be loaded.

2006-10-06  James Hawkins <truiken@gmail.com>

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in PersistStorage_InitNew.

	* dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shell32_main.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shlexec.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/shlview.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/trash.c:
	janitorial: Remove redundant NULL checks before SHFree.

	* dlls/devenum/devenum_main.c, dlls/devenum/parsedisplayname.c,
	  dlls/msdmo/dmort.c, dlls/oleaut32/usrmarshal.c,
	  dlls/qcap/enummedia.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtermapper.c:
	janitorial: Remove redundant NULL checks before CoTaskMemFree (found by Smatch).

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c:
	advpack: Win64 printf format warning fixes.

2006-10-06  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/atl/Makefile.in, dlls/atl/atl_main.c, dlls/atl/registrar.c:
	atl: Win64 printf format warning fixes.

	* dlls/wnaspi32/Makefile.in, dlls/wnaspi32/aspi.c,
	  dlls/wnaspi32/winaspi16.c, dlls/wnaspi32/winaspi32.c:
	wnaspi32: Win64 printf format warning fixes.

	* dlls/wtsapi32/Makefile.in, dlls/wtsapi32/wtsapi32.c:
	wtsapi32: Win64 printf format warning fixes.

	* dlls/amstream/Makefile.in, dlls/amstream/amstream.c,
	  dlls/amstream/mediastream.c:
	amstream: Win64 printf format warning fixes.

	* dlls/vwin32.vxd/Makefile.in, dlls/vwin32.vxd/vwin32.c:
	vwin32.vxd: Win64 printf format warning fixes.

	* dlls/serialui/Makefile.in, dlls/serialui/confdlg.c:
	serialui: Win64 printf format warning fixes.

	* dlls/winemp3.acm/Makefile.in, dlls/winemp3.acm/mpegl3.c:
	winemp3.acm: Win64 printf format warning fixes.

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/container.c,
	  dlls/dxdiagn/dxdiag_main.c, dlls/dxdiagn/provider.c:
	dxdiagn: Win64 printf format warning fixes.

	* dlls/winmm/wineoss/Makefile.in, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/dscapture.c, dlls/winmm/wineoss/dsrender.c,
	  dlls/winmm/wineoss/midi.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c:
	winmm/wineoss: Win64 printf format warning fixes.

	* dlls/winmm/winealsa/Makefile.in, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c:
	winmm/winealsa: Win64 printf format warning fixes.

	* dlls/winmm/winearts/Makefile.in, dlls/winmm/winearts/audio.c:
	winmm/winearts: Win64 printf format warning fixes.

	* dlls/winmm/winenas/Makefile.in, dlls/winmm/winenas/audio.c:
	winmm/winenas: Win64 printf format warning fixes.

	* dlls/winmm/wineesd/Makefile.in, dlls/winmm/wineesd/audio.c:
	winmm/wineesd: Win64 printf format warning fixes.

	* dlls/winmm/winejack/Makefile.in, dlls/winmm/winejack/audio.c:
	winmm/winejack: Win64 printf format warning fixes.

2006-10-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winecfg/appdefaults.c, programs/winecfg/drive.c:
	winecfg: Cast-qual warnings fix.

2006-10-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Give XInitThreads another chance.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/winspool.drv/info.c:
	winspool.drv: Cast-qual warnings fix.

2006-10-06  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add support for cached client credentials.

2006-10-06  Paul Chitescu <paulc@voip.null.ro>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/mscoree/Makefile.in, dlls/mscoree/mscoree.spec,
	  dlls/mscoree/mscoree_main.c:
	mscoree: Initial stub implementation.

2006-10-06  Francois Gouget <fgouget@free.fr>

	* dlls/dmloader/container.c, dlls/dmloader/debug.c,
	  dlls/dmloader/loader.c:
	dmloader: Modify the debugstr_DMUS_* functions to return strings that never
	end with a '\n'.

	* dlls/oleaut32/variant.c, dlls/usp10/usp10.c, dlls/wintab32/context.c:
	Tweak TRACE()s to simplify '\n' checks.

	* dlls/wined3d/directx.c:
	wined3d: Fix '\n' typo.

2006-10-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add a stub implementation of ScriptStringValidate.

	* dlls/shlwapi/Makefile.in, dlls/shlwapi/assoc.c, dlls/shlwapi/clist.c,
	  dlls/shlwapi/istream.c, dlls/shlwapi/msgbox.c,
	  dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c, dlls/shlwapi/reg.c,
	  dlls/shlwapi/regstream.c, dlls/shlwapi/shlwapi_main.c,
	  dlls/shlwapi/stopwatch.c, dlls/shlwapi/string.c,
	  dlls/shlwapi/thread.c, dlls/shlwapi/url.c:
	shlwapi: Win64 printf format warning fixes.

2006-10-05  Christopher GAUTIER <krys@via.ecp.fr>

	* dlls/wined3d/surface.c:
	wined3d: Disable GL_REGISTER_COMBINERS_NV (if supported) in
	IWineD3DSurfaceImpl_BltOverride.

2006-10-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Make msi_dialog_dup_property return a copy of the property if the property
	is empty.

	* dlls/ddraw/device.c:
	ddraw: Set lplpDirect3DViewport3 to NULL before returning an error (found
	by Smatch).

	* dlls/dinput/mouse.c:
	dinput: Call missing LeaveCriticalSection in the error case (found by Smatch).

	* dlls/dbghelp/msc.c:
	dbghelp: Remove redundant NULL checks before pdb_free (found by Smatch).

	* dlls/advapi32/service.c:
	advapi32: Remove redundant NULL check before SERV_free (found by Smatch).

	* dlls/crypt32/protectdata.c:
	crypt32: Remove redundant NULL checks before CryptMemFree (found by Smatch).

2006-10-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmldoc3.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/install.c, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/nsservice.c, dlls/mshtml/olecmd.c, dlls/mshtml/oleobj.c,
	  dlls/mshtml/persist.c, dlls/mshtml/protocol.c,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Win64 printf format warning fixes.

2006-10-06  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/comboex.c:
	comctl32: Return the correct value for CB_GETLBTEXTLEN.

	* dlls/msi/table.c:
	msi: Fix transform traces.

	* dlls/msi/table.c:
	msi: Work around what appears to be a bug in native MSI's generation of
	transform data.

	* dlls/msi/table.c:
	msi: Transform the _Columns and _Tables tables first so the table metadata is
	present for new tables.

	* dlls/msi/table.c:
	msi: Handle null integers properly in transforms.

2006-10-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/cabinet/tests/extract.c:
	cabinet: Make tests run on Win98 again.

	* dlls/advpack/tests/files.c:
	advpack: Make tests run on Win98 again.

2006-10-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/protectdata.c:
	crypt32: Cast-qual warnings fix.

2006-10-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Pitch alignment for the pow2Size.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Define the surface alignment in the header.

	* dlls/wined3d/surface.c:
	wined3d: Honor the pitch in a few more places.

	* dlls/wined3d/surface.c:
	wined3d: No color keying on surfaces with an alpha channel.

2006-10-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/ddraw/ddraw.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DUSAGE_OVERLAY.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::UpdateOverlay.

	* include/wine/wined3d_types.h:
	wined3d: Add DDOVERLAYFX struct.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add UpdatOverlayZOrder.

2006-10-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::GetOverlayPosition.

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::SetOverlayPosition.

2006-10-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/classinfo.c,
	  dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/factory.c, dlls/shdocvw/ie.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/regsvr.c,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/view.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Win64 printf format warning fixes.

	* dlls/urlmon/Makefile.in, dlls/urlmon/binding.c, dlls/urlmon/file.c,
	  dlls/urlmon/format.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c,
	  dlls/urlmon/internet.c, dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Win64 printf format warning fixes.

2006-10-05  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/taskmgr/Fr.rc:
	taskmgr: Updated French translation.

	* programs/cmdlgtst/Fr.rc:
	cmdlgtst: Updated French translation.

2006-10-06  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add d3d9 to fake dlls.

2006-10-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/cabinet/tests/Makefile.in, dlls/cabinet/tests/extract.c:
	cabinet/tests: Win64 printf format warning fixes.

	* dlls/iccvid/Makefile.in, dlls/iccvid/iccvid.c:
	iccvid: Win64 printf format warning fixes.

	* dlls/msvcrt/tests/Makefile.in, dlls/msvcrt/tests/time.c:
	msvcrt/tests: Win64 printf format warning fixes.

	* dlls/msdmo/Makefile.in, dlls/msdmo/dmoreg.c, dlls/msdmo/dmort.c:
	msdmo: Win64 printf format warning fixes.

	* dlls/comcat/tests/Makefile.in, dlls/comcat/tests/comcat.c:
	comcat/tests: Win64 printf format warning fixes.

	* dlls/msacm32/tests/Makefile.in, dlls/msacm32/tests/msacm.c:
	msacm32/tests: Win64 printf format warning fixes.

	* dlls/powrprof/Makefile.in, dlls/powrprof/powrprof.c:
	powrprof: Win64 printf format warning fixes.

	* dlls/comdlg32/tests/Makefile.in, dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: Win64 printf format warning fixes.

	* dlls/msvidc32/Makefile.in, dlls/msvidc32/msvideo1.c:
	msvidc32: Win64 printf format warning fixes.

2006-10-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/tests/http.c:
	wininet/tests: Cast-qual warning fix.

2006-10-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/opengl_ext.h, include/wine/wgl.h:
	x11drv: Fix building issue.

2006-10-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Correctly name a variable.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/comctl32/comctl_Nl.rc, dlls/mpr/mpr_Pt.rc,
	  dlls/oledlg/oledlg_Nl.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/wineps.drv/wps_Nl.rc:
	Don't use utf-8 in rc files.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/crypt32/crypt32_Fr.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/hhctrl.ocx/Fr.rc, dlls/winspool.drv/Fr.rc,
	  programs/oleview/Fr.rc:
	French rc files must be encoded in iso-8859-1, not utf-8.

2006-10-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c:
	winex11.drv: Make all windows moveable by default.

2006-10-05  Paul Chitescu <paulc@voip.null.ro>

	* dlls/netapi32/ds.c, dlls/netapi32/netapi32.spec:
	netapi: Stub for DsGetDcNameA.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/bind.c:
	wldap32: Cast-qual warnings fix.

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Cast-qual warnings fix.

	* dlls/mscms/profile.c:
	mscms: Cast-qual warnings fix.

	* dlls/mscms/transform.c:
	mscms: Document the transform functions.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/atl/registrar.c, dlls/avicap32/avicap32_main.c,
	  dlls/comctl32/tab.c, dlls/comdlg32/printdlg.c, dlls/crypt32/main.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/pixelshader.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/ddraw/device.c, dlls/ddraw/main.c, dlls/dmstyle/style.c,
	  dlls/gdi/freetype.c, dlls/mapi32/prop.c, dlls/mapi32/sendmail.c,
	  dlls/mapi32/util.c, dlls/msvfw32/msvideo_main.c,
	  dlls/netapi32/netbios.c, dlls/oleaut32/olepicture.c,
	  dlls/rpcrt4/rpcrt4_main.c, dlls/secur32/ntlm.c,
	  dlls/setupapi/devinst.c, dlls/shlwapi/ordinal.c, dlls/urlmon/umon.c,
	  dlls/user/scroll.c, dlls/uxtheme/system.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/utils.c,
	  dlls/winmm/winealsa/audio.c, programs/cmdlgtst/cmdlgtst.c,
	  programs/winecfg/driveui.c, programs/winecfg/libraries.c,
	  programs/winecfg/theme.c, programs/winecfg/x11drvdlg.c,
	  programs/wineconsole/curses.c, programs/winedbg/types.c:
	Add missing '\n's to Wine traces.

2006-10-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c:
	crypt32: Correct the documentation.

	* dlls/crypt32/sip.c:
	crypt32: Change function declaration to overcome some cast-qual warnings in
	future patches.

	* dlls/crypt32/sip.c:
	crypt32: Move some defines to the top as they will be needed in more functions.

2006-10-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/dinput/dinput_main.c:
	dinput: Only register the window class once to avoid race conditions.

2006-10-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/wininet/Makefile.in, dlls/wininet/cookie.c, dlls/wininet/dialogs.c,
	  dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/netconnection.c, dlls/wininet/urlcache.c,
	  dlls/wininet/utility.c:
	wininet: Win64 printf format warning fixes.

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/http.c,
	  dlls/wininet/tests/internet.c, dlls/wininet/tests/url.c:
	wininet/tests: Win64 printf format warning fixes.

2006-10-05  Francois Gouget <fgouget@free.fr>

	* dlls/user/tests/sysparams.c:
	user/tests: It is perfectly valid for some sysparams registry fields
	to not be set if they have their default value. This is the case on
	Windows for instance.

	* programs/oleview/typelib.c:
	oleview: Fix the placement of a '\n'.

	* dlls/d3d8/device.c:
	d3d8: Fix '\n' typo.

	* programs/winecfg/driveui.c:
	winecfg: Remove unneeded memset() calls.

	* dlls/shell32/shlview.c:
	shell32: Don't forget to set stateMask when calling LVM_GETITEM/LVIF_STATE.
	Remove ZeroMemory() calls and instead set iSubItem = 0 manually.

	* dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Remove ZeroMemory() calls and instead set the relevant fields
	(usually just iSubItem) to zero manually.

	* programs/taskmgr/dbgchnl.c, programs/taskmgr/debug.c,
	  programs/taskmgr/endproc.c, programs/taskmgr/priority.c,
	  programs/taskmgr/procpage.c:
	taskmgr: Remove ZeroMemory() calls and instead set the relevant fields (usually
	just iSubItem) to zero manually.

	* programs/winecfg/appdefaults.c:
	winecfg: Remove ZeroMemory() calls and instead set iSubItem = 0 manually.
	Fix on_selection_change() and on_remove_app_click() so they do set iSubItem = 0.

	* include/commctrl.h, include/winuser.h:
	include: Add new Vista SDK constants and structures.

2006-10-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c, dlls/user/message.c, dlls/user/user_private.h:
	user32: Pass hook handle to the destination thread.

2006-10-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/hook.c, include/wine/server_protocol.h, server/hook.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Changed the get_next_hook request to allow retrieving the current
	hook too.

	* dlls/user/hook.c, dlls/user/user_private.h,
	  include/wine/server_protocol.h, server/hook.c, server/protocol.def,
	  server/trace.c:
	user32: Store the prev_unicode hook flag on the client side.

2006-10-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/dde.c:
	user/tests: Cast-qual warnings fix.

2006-10-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c, dlls/msxml3/node.c,
	  dlls/msxml3/parseerror.c:
	msxml3: Win64 printf format warning fixes.

	* dlls/midimap/Makefile.in, dlls/midimap/midimap.c:
	midimap: Win64 printf format warning fixes.

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/main.c:
	cfgmgr32: Win64 printf format warning fixes.

	* dlls/msg711.acm/Makefile.in, dlls/msg711.acm/msg711.c:
	msg711.acm: Win64 printf format warning fixes.

	* dlls/imaadp32.acm/Makefile.in, dlls/imaadp32.acm/imaadp32.c:
	imaadp32.acm: Win64 printf format warning fixes.

	* dlls/msadp32.acm/Makefile.in, dlls/msadp32.acm/msadp32.c:
	msadp32.acm: Win64 printf format warning fixes.

	* dlls/usp10/Makefile.in, dlls/usp10/usp10.c:
	usp10: Win64 printf format warning fixes.

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c:
	opengl32: Win64 printf format warning fixes.

2006-10-05  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel32/actctx.c:
	kernel32: Return some fake data in FindActCtxSectionStringW.

	* dlls/msi/table.c:
	msi: Only ignore the StringPool and StringData in a transform.

	* dlls/msi/table.c:
	msi: Only declare the szStringData and szStringPool strings once.

	* dlls/msi/table.c:
	msi: Remove an unused variable.

	* dlls/msi/Makefile.in, dlls/msi/action.c, dlls/msi/appsearch.c,
	  dlls/msi/custom.c, dlls/msi/database.c, dlls/msi/dialog.c,
	  dlls/msi/files.c, dlls/msi/format.c, dlls/msi/insert.c,
	  dlls/msi/msi.c, dlls/msi/msiquery.c, dlls/msi/package.c,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/source.c,
	  dlls/msi/suminfo.c, dlls/msi/table.c, dlls/msi/upgrade.c:
	msi: Win64 printf format warning fixes.

	* dlls/msi/tests/db.c:
	msi: Check that transforms preserve tables.

2006-10-05  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

2006-10-04  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Don't crash when setting CRYPT_KEY_PROV_INFO with empty names.

2006-10-04  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/d3d9/vertexdeclaration.c:
	d3d9: Fix typo in trace.

2006-10-04  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/oleview/Fr.rc:
	oleview: Updated French translation.

	* programs/regedit/Fr.rc:
	regedit: Updated French translation.

	* programs/taskmgr/Fr.rc:
	taskmgr: Updated French translation.

2006-10-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/winspool.drv/Pl.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: Add Polish translation.

	* programs/taskmgr/Pl.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Add Polish translation.

2006-10-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Fixed typo in serial.c.

	* dlls/user/win.c, include/win.h, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	user32: The per-window user data must be a DWORD_PTR.

	* include/wine/server_protocol.h, server/protocol.def, server/trace.c:
	server: Rearrange a few fields to avoid wasting padding space on 64 bits.

2006-10-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/crypt.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32/tests: Win64 printf format warning fixes.

2006-10-04  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertVerifyValidityNesting.

2006-10-04  James Hawkins <truiken@gmail.com>

	* dlls/user/dialog.c:
	user: Add missing sizeof(WCHAR) multiplier.

2006-10-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c,
	  dlls/wintrust/register.c, dlls/wintrust/wintrust_main.c:
	wintrust: Win64 printf format warning fixes.

	* dlls/crypt32/tests/sip.c:
	crypt32: More tests for CryptSIPLoad.

2006-10-04  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/infosoft/Makefile.in, dlls/infosoft/wordbreaker.c:
	infosoft: Win64 printf format warning fixes.

	* dlls/ifsmgr.vxd/Makefile.in, dlls/ifsmgr.vxd/ifsmgr.c:
	ifsmgr.vxd: Win64 printf format warning fixes.

	* dlls/comcat/Makefile.in, dlls/comcat/information.c:
	comcat: Win64 printf format warning fixes.

	* dlls/activeds/Makefile.in, dlls/activeds/activeds_main.c:
	activeds: Win64 printf format warning fixes.

2006-10-04  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

2006-10-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/mscms_priv.h:
	mscms: Restore the preprocessor hack.

2006-10-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Pass the data for message callbacks as vararg from the client side.

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c:
	server: Return the data for callback results in the varargs part of the
	get_message request.

	* dlls/user/message.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Return the data for winevent hooks in the varargs part of the get_message
	request.

2006-10-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Only apply the last font style in the list of styles.

	* dlls/msi/events.c:
	msi: Handle the SelectionBrowse event using ControlEvent_SpawnDialog.

	* dlls/msi/dialog.c:
	msi: Subscribe the SelectionTree control to the SelectionPath event.

	* dlls/msi/dialog.c:
	msi: Store the selected item in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Publish the SelectionDescription and SelectionPath events when the
	selection changes in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Properly initialize the SelectionTree control's attributes and property
	values.

	* dlls/msi/events.c:
	msi: Publish the SelectionPath event in the SetTargetPath event.

	* dlls/msi/action.h, dlls/msi/dialog.c, dlls/msi/events.c:
	msi: Provide a specific dialog to ControlEvent_SubscribeToEvent, as
	package->dialog does not always point to the same dialog.

	* dlls/msi/dialog.c:
	msi: Select the first item in the SelectionTree control.

	* dlls/msi/dialog.c:
	msi: Empty the window text if no text is provided.

	* dlls/msi/dialog.c:
	msi: Assign the property to path if the property is empty.

	* dlls/msi/dialog.c:
	msi: Don't ERR if a dialog doesn't provide control conditions, as they are
	not required.

	* dlls/msi/dialog.c:
	msi: Add missing '\n' to TRACE output.

2006-10-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	x11drv: Fix wgl pixel format bug.

	* dlls/gdi/driver.c, dlls/gdi/gdi32.spec, dlls/gdi/gdi_private.h,
	  dlls/gdi/opengl.c, dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	gdi32: Route WGL font code through gdi32.dll.

	* dlls/gdi/Makefile.in, dlls/gdi/driver.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_private.h, dlls/gdi/opengl.c,
	  dlls/opengl32/opengl32.spec, dlls/opengl32/wgl.c,
	  dlls/winex11.drv/opengl.c:
	gdi32: Route WGL context code through gdi32.dll.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/wineconsole/user.c:
	wineconsole: Make the user backend work on non-latin1 locales.

2006-10-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c:
	user: Move some common code into one function.

2006-10-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/base64.c, dlls/crypt32/cert.c,
	  dlls/crypt32/context.c, dlls/crypt32/crl.c, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/main.c, dlls/crypt32/oid.c,
	  dlls/crypt32/proplist.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/sip.c, dlls/crypt32/store.c, dlls/crypt32/str.c:
	crypt32: Win64 printf format warning fixes.

	* dlls/crypt32/crypt32.spec:
	crypt32: Forward CryptAcquireContextU to CryptAcquireContextW.

2006-10-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/capi2032/cap20wxx.c:
	capi: Fix compiler warnings.

2006-10-03  Marcus Meissner <marcus@jet.franken.de>

	* tools/wine.inf:
	wine.inf: Add some more fake binaries.

2006-10-03  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/treeview.c:
	comctl32: Set the TVIF_TEXT mask when notifying the parent window of a
	selection change.

2006-10-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/w32skrnl/Makefile.in, dlls/w32skrnl/w32sys.c,
	  dlls/w32skrnl/win32s16.c:
	w32skrnl: Win64 printf format warning fixes.

	* dlls/spoolss/Makefile.in, dlls/spoolss/spoolss_main.c:
	spoolss: Win64 printf format warning fixes.

	* dlls/query/Makefile.in, dlls/query/query_main.c:
	query: Win64 printf format warning fixes.

	* dlls/oleacc/Makefile.in, dlls/oleacc/main.c:
	oleacc: Win64 printf format warning fixes.

	* dlls/newdev/Makefile.in, dlls/newdev/main.c:
	newdev: Win64 printf format warning fixes.

	* dlls/nddeapi/Makefile.in, dlls/nddeapi/nddeapi.c:
	nddeapi: Win64 printf format warning fixes.

	* dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c:
	localspl/tests: Win64 printf format warning fixes.

	* dlls/hhctrl.ocx/Makefile.in, dlls/hhctrl.ocx/hhctrl.c,
	  dlls/hhctrl.ocx/main.c:
	hhctrl.ocx: Win64 printf format warning fixes.

	* dlls/d3dx8/Makefile.in, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Win64 printf format warning fixes.

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c:
	dinput8: Win64 printf format warning fixes.

	* dlls/cards/Makefile.in, dlls/cards/cards.c:
	cards: Win64 printf format warning fixes.

	* dlls/msvcrt/Makefile.in, dlls/msvcrt/cppexcept.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/file.c, dlls/msvcrt/locale.c, dlls/msvcrt/main.c:
	msvcrt: Win64 printf format warning fixes.

2006-09-22  Elie Morisse <lachienne@wanadoo.fr>

	* dlls/ddraw/surface.c:
	ddraw: Don't destroy complex attached surfaces even if explicitely
	requested as they will be liquidated anyway when the root is
	destroyed.

2006-09-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/oid.c, dlls/crypt32/store.c:
	crypt32: Include wine/port.h for strcasecmp.

2006-10-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Replace bad use of sprintf by 2 strcats.

	* dlls/ntdll/tests/exception.c:
	ntdll: More tests for exception handling.
	- Check if we really set the debug register.
	- Added unaligned access exception check.
	- Added single step exception check.

2006-10-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Make it clearer where alg ids come from in
	CryptVerifyCertificateSignatureEx.

2006-10-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c:
	wintrust: Win64 printf format warning fixes.

2006-10-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c, include/wine/server_protocol.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Implemented AmILastThread information class for NtQueryInformationThread.

	* programs/winedbg/source.c:
	winedbg: Rewrote the file handling to use SearchPath instead of home grown
	version.

2006-09-30  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel32/comm.c, dlls/ntdll/serial.c:
	ntdll-kernel32: WaitCommEvent.
	- implemented IOCTL_SERIAL_WAIT_ON_MASK for DeviceIoControl
	on serial lines in ntdll
	- now using thread pool (instead of simple thread) for the
	background operations (this should help some high load
	situations)
	- used this to implement WaitCommEvent on top NtDll functions
	- in kernel32, removed now the no longer used termios/ioctls...
	for comm devices

2006-09-29  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: Fix LVM_GETITEM/LVIF_STATE so it only returns the bits it
	has been asked for, and sets all the others to zero (with conformance
	test).

	* include/ntstatus.h:
	include: Add missing STATUS_CTX_ constants.

	* include/prsht.h:
	include: Add missing PSP_ constants.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Remove unnecessary casts.

2006-09-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c, dlls/msi/tests/install.c:
	msi: Implement MsiDatabaseImport.

2006-10-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi.c,
	  dlls/advapi32/crypt.c, dlls/advapi32/eventlog.c, dlls/advapi32/lsa.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	advapi32: Win64 printf format warning fixes.

2006-10-03  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use I_Rpc{Allocate, Free} instead of Heap{Alloc, Free} as that
	the former are exported by rpcrt4 seemingly to allow callers of tower
	functions to free the allocated memory.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: RpcBindingCopy is implemented.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Don't use HEAP_ZERO_MEMORY when most of the fields will be initialised
	to non-zero values.

2006-10-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user: Increase the time during which flush_events() waits for pending events.

2006-10-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Remove bogus tests.

2006-10-03  Francois Gouget <fgouget@free.fr>

	* dlls/shell32/tests/shelllink.c:
	shell32: Microsoft's EXP_DARWIN_LINK structure does not have a dbh
	field so cast it to DATABLOCK_HEADER to access the dwSignature
	field. Fixes the compilation with Visual C++ on Windows.

	* dlls/urlmon/file.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c:
	urlmon: Fix spelling of the 'origin' parameter in the *Protocol_Seek() functions.

	* dlls/kernel32/thunk.c, dlls/ole32/tests/storage32.c,
	  dlls/shlwapi/path.c, tools/winapi/winapi_check_options.pm:
	Assorted spelling fixes.

	* dlls/kernel32/tests/path.c, dlls/ntdll/tests/info.c,
	  dlls/rsaenh/tests/rsaenh.c:
	Add missing '\n's to ok() calls.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Remove space before '\n'.

2006-10-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/tests/exception.c:
	ntdll: Make test_debug_regs() print the actual Dr7 value it got.

2006-10-03  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/winedos/Makefile.in, dlls/winedos/dma.c, dlls/winedos/dosaspi.c,
	  dlls/winedos/dosvm.c, dlls/winedos/int10.c, dlls/winedos/int13.c,
	  dlls/winedos/int1a.c, dlls/winedos/int21.c, dlls/winedos/int25.c,
	  dlls/winedos/int26.c, dlls/winedos/int2f.c, dlls/winedos/int31.c,
	  dlls/winedos/interrupts.c, dlls/winedos/ioports.c,
	  dlls/winedos/module.c, dlls/winedos/soundblaster.c,
	  dlls/winedos/vxd.c, dlls/winedos/xms.c:
	winedos: Win64 printf format warning fixes.

2006-10-03  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/user/cursoricon.c, include/winuser.h:
	user: Fix CopyImage function declaration.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/filedlgbrowser.c:
	comdlg32: Load "Save" string from resources in filedlgbrowser.c.

2006-10-03  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: Avoid trailing slash in find, it breaks tags on MacOS.

	* dlls/ntdll/file.c:
	ntdll: Added error mapping for ENXIO.

	* dlls/ntdll/directory.c, server/fd.c:
	ntdll: Implement FSCTL_DISMOUNT_VOLUME for MacOSX.

	* configure, configure.ac, programs/explorer/Makefile.in,
	  programs/explorer/desktop.c, programs/explorer/device.c,
	  programs/explorer/diskarb.c, programs/explorer/explorer_private.h,
	  programs/explorer/hal.c:
	explorer: Added dynamic drive support for MacOSX.

	* programs/explorer/device.c:
	explorer: Avoid repeated notifications on device removal.

	* programs/explorer/Makefile.in, programs/explorer/device.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c:
	explorer: Split the device management to a separate file to make it usable
	independently of HAL support.

2006-10-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/info.c, programs/winedbg/tgt_active.c:
	winedbg: Fixed the auto mode.

2006-10-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ws2_32/socket.c:
	ws2_32: Avoid retrieving the fd twice in WSAIoctl.

2006-10-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ws2_32/socket.c:
	ws2_32: Implemented FIONBIO and FIONREAD in WSAIoctl.

	* dlls/ntdll/signal_i386.c:
	ntdll: Clear alignment check flag before entering exception handler.

2006-10-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CryptSignAndEncodeCertificate.

2006-10-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/resource.h:
	regedit: Remove the unused IDD_DIALOG2.

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/En.rc, programs/regedit/Es.rc,
	  programs/regedit/Fr.rc, programs/regedit/Hu.rc,
	  programs/regedit/It.rc, programs/regedit/Ja.rc,
	  programs/regedit/Ko.rc, programs/regedit/Nl.rc,
	  programs/regedit/No.rc, programs/regedit/Pl.rc,
	  programs/regedit/Pt.rc, programs/regedit/Ru.rc,
	  programs/regedit/Si.rc, programs/regedit/Tr.rc,
	  programs/regedit/framewnd.c, programs/regedit/resource.h:
	regedit: Add option to export only a specified branch.

	* programs/regedit/framewnd.c:
	regedit: Some import/export dialogs code cleanup.

2006-10-03  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/cmdlgtst/Fr.rc:
	cmdlgtst: Updated French translation.

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Fr.rc:
	crypt32: Initial French translation.

2006-10-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/cursoricon.c, dlls/user/exticon.c, dlls/user/spy.c:
	user: Cast-qual warnings fix.

2006-10-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/sip.c:
	crypt32/tests: Win64 printf format warning fixes.

	* dlls/msi/appsearch.c, dlls/msi/tests/package.c:
	msi: Implement msidbLocatorTypeFileName in RegLocator searches.

2006-10-02  Michael Stefaniuc <mstefani@redhat.de>

	* programs/winemenubuilder/Makefile.in,
	  programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Win64 printf format warning fixes.

	* programs/wineconsole/Makefile.in, programs/wineconsole/registry.c,
	  programs/wineconsole/user.c:
	wineconsole: Win64 printf format warning fixes.

	* programs/rpcss/Makefile.in, programs/rpcss/np_server.c:
	rpcss: Win64 printf format warning fixes.

	* programs/oleview/Makefile.in, programs/oleview/typelib.c:
	oleview: Win64 'incompatible pointer type' warning fix.

	* programs/icinfo/Makefile.in, programs/icinfo/icinfo.c:
	icinfo: Win64 printf format warning fixes.

	* programs/eject/Makefile.in, programs/eject/eject.c:
	eject: Win64 printf format warning fixes.

	* programs/cmdlgtst/Makefile.in, programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Win64 printf format warning fixes.

	* programs/winhelp/Makefile.in, programs/winhelp/hlpfile.c,
	  programs/winhelp/macro.c, programs/winhelp/winhelp.c:
	winhelp: Win64 printf format warning fixes.

	* programs/winecfg/Makefile.in, programs/winecfg/appdefaults.c,
	  programs/winecfg/drive.c, programs/winecfg/winecfg.c:
	winecfg: Win64 printf format warning fixes.

	* programs/wineboot/Makefile.in, programs/wineboot/shutdown.c,
	  programs/wineboot/wineboot.c:
	wineboot: Win64 printf format warning fixes.

2006-10-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Silence common invalid QueryInterface FIXMEs.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Silence common invalid QueryInterface FIXME.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Added begining implementation of IPersistStreamInit::Save.

	* dlls/mshtml/nsembed.c:
	mshtml: Code cleanup.

2006-10-02  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Report the correct number of available 4-component float vectors
	for GLSL.

	* dlls/wined3d/pixelshader.c:
	wined3d: Explicitly enable the GL_ARB_draw_buffers extension in GLSL shaders.

2006-10-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix ITypeInfo::GetFuncDesc to return the correct information for
	dual dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut32: Make ITypeInfo::GetDocumentation work for functions/variables in
	inherited interfaces.

2006-10-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/advapi32/tests/registry.c:
	advapi32: Make sure it's a real cleanup.

2006-10-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/regedit/Bg.rc, programs/regedit/Cs.rc, programs/regedit/De.rc,
	  programs/regedit/Es.rc, programs/regedit/Fr.rc,
	  programs/regedit/Hu.rc, programs/regedit/It.rc,
	  programs/regedit/Ja.rc, programs/regedit/Pt.rc,
	  programs/regedit/Ru.rc, programs/regedit/Si.rc:
	regedit: Fix some translated resources errors.

2006-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/Ru.rc:
	winecfg: Fix a typo in Russian translation.

2006-09-28  Peter Oberndorfer <kumbayo84@arcor.de>

	* programs/winedbg/tgt_active.c:
	winedbg: Don't try to read to invalid memory if winedbg does not find the thread.

	* dlls/ntdll/tests/info.c:
	ntdll: Add a test for NtReadVirtualMemory.

2006-09-29  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/kernel32/tests/path.c:
	kernel32: Add 2 simple tests for GetLongPathNameW.

	* dlls/kernel32/path.c:
	kernel32: Print an error instead of crashing in GetLongPathNameW if shortpath=0.

2006-09-29  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/base64.c,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/chain.c,
	  dlls/crypt32/tests/crl.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/main.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/tests/protectdata.c, dlls/crypt32/tests/store.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Win64 printf format warning fixes.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Ignore VT_ERROR arguments to WebBrowser_Navigate2.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Return S_OK from WebBrowser_put_RegisterAsDropTarget.

2006-09-30  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/Makefile.in, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/baseshader.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Win64 printf fixes.

2006-09-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/bind.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c, dlls/wldap32/extended.c, dlls/wldap32/init.c,
	  dlls/wldap32/main.c, dlls/wldap32/misc.c, dlls/wldap32/page.c,
	  dlls/wldap32/parse.c, dlls/wldap32/search.c:
	wldap32: Win64 printf format warning fixes.

	* dlls/mscms/Makefile.in, dlls/mscms/mscms_main.c,
	  dlls/mscms/mscms_priv.h, dlls/mscms/profile.c, dlls/mscms/stub.c,
	  dlls/mscms/transform.c:
	mscms: Win64 printf format warning fixes.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/main.c, dlls/dnsapi/query.c:
	dnsapi: Win64 printf format warning fixes.

2006-09-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/user/Makefile.in, dlls/user/bidi16.c, dlls/user/class.c,
	  dlls/user/clipboard.c, dlls/user/combo.c, dlls/user/comm16.c,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_server.c, dlls/user/defwnd.c, dlls/user/dialog.c,
	  dlls/user/dialog16.c, dlls/user/driver.c, dlls/user/driver16.c,
	  dlls/user/edit.c, dlls/user/exticon.c, dlls/user/hook.c,
	  dlls/user/input.c, dlls/user/listbox.c, dlls/user/mdi.c,
	  dlls/user/menu.c, dlls/user/message.c, dlls/user/misc.c,
	  dlls/user/nonclient.c, dlls/user/painting.c, dlls/user/resource.c,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/uitools.c, dlls/user/user16.c,
	  dlls/user/win.c, dlls/user/winhelp.c, dlls/user/winpos.c,
	  dlls/user/winproc.c, dlls/user/winstation.c:
	user: Win64 printf format warning fixes.

2006-09-29  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/resutils/Makefile.in, dlls/resutils/resutils.c,
	  dlls/resutils/resutils.spec:
	resutils: Implements stub dll for resutils.dll.

2006-09-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/tests/exception.c:
	ntdll: Added debug registers test case.

2006-09-18  Marcus Meissner <marcus@jet.franken.de>

	* dlls/mswsock/mswsock.c:
	mswsock: More debug output in AcceptEx().

2006-10-02  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Improve get_nearest_charset().

2006-10-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/tapi32/line.c:
	tapi32: Cast-qual warnings fix.

2006-10-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user/tests: Flush events before running mouse tests.

2006-10-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ws2_32/socket.c:
	ws2_32: Add a comment to ioctlsocket about 'bogus' ioctl 0x667e.

	* dlls/ws2_32/socket.c, include/winsock.h:
	ws2_32: Use a symbolic name instead of hand-made value.

2006-10-01  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove unused field in shader opcode_arg.

2006-09-30  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/devenum/devenum.rc, dlls/winspool.drv/No.rc,
	  dlls/winspool.drv/winspool.rc, programs/cmdlgtst/No.rc,
	  programs/regedit/No.rc:
	Updated Norwegian Bokmål translations.

2006-10-02  Alexandre Julliard <julliard@winehq.org>

	* include/winsock.h:
	winsock: Make sure to include sys/types.h in all cases.

2006-09-30  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32/tests: Print each 64-bit integers as two 32 bit integers.

2006-10-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shlfileop.c:
	shell32: Another cast-qual warning fix.

2006-09-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shlexec.c:
	shell32: Cast-qual warnings fix.

2006-09-29  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/rsaenh/tests/rsaenh.c:
	rsaenh/tests: import & export of a plaintext public key + algID check.

2006-09-29  Michael Stefaniuc <mstefani@redhat.de>

	* tools/winedump/Makefile.in, tools/winedump/debug.c, tools/winedump/le.c,
	  tools/winedump/lnk.c, tools/winedump/minidump.c, tools/winedump/ne.c,
	  tools/winedump/pe.c:
	winedump: Win64 printf format warning fixes.

	* tools/wrc/Makefile.in, tools/wrc/dumpres.c, tools/wrc/newstruc.c:
	wrc: Win64 printf format warning fixes.

	* server/Makefile.in, server/registry.c, server/trace.c:
	server: Win64 printf format warning fixes.

2006-09-29  Jason Green <jave27@gmail.com>

	* dlls/user/input.c, dlls/user/user32.spec:
	user32: Stub implementation of BlockInput.

2006-09-29  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Tweak a buffer declaration to fix the compilation with Visual C++.

	* dlls/riched20/tests/editor.c:
	riched20: Tweak a buffer declaration to fix the compilation with Visual C++.

	* dlls/rpcrt4/tests/cstub.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't return void values. This fixes Visual C++ warnings.

	* dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Only perform the screen resolution changing tests in interactive mode.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fixed compilation in the nameless union case.

	* dlls/comctl32/tests/toolbar.c, dlls/rpcrt4/tests/cstub.c:
	Add missing '\n's to ok() calls.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Don't use state.buffer_size before it has been initialized.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c,
	  dlls/mshtml/tests/htmldoc.c, dlls/shdocvw/navigate.c,
	  dlls/urlmon/binding.c, include/urlmon.idl:
	urlmon: Fix the case of the BINDINFO.cbstgmedData field. Fixes the htmldoc
	test compilation on Windows.

	* dlls/ddraw/tests/d3d.c:
	ddraw: Fix comparefloat() so it compiles with Visual C++ when given a negative
	value.

	* tools/winapi/msvcmaker:
	msvcmaker: The msvcrt tests need '..' in the include path.

	* dlls/ole32/tests/moniker.c:
	ole32: Fix invalid macro usage.

	* include/wincrypt.h:
	wincrypt: Fix the CERT_TRUST_PUB_AUTHENTICODE_FLAGS_VALUE_NAME declaration in
	the MSVC case.

	* include/security.h:
	secur32: Only include secext.h when asked to.

	* dlls/mshtml/tests/htmldoc.c, dlls/ole32/tests/compobj.c,
	  dlls/ole32/tests/marshal.c, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shell32/tests/shlfolder.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c,
	  include/rpcndr.h:
	Fix rpcndr.h so it takes CONST_VTABLE into account.
	Define CONST_VTABLE in the tests that need it. This fixes many Visual C++
	warnings.

	* tools/widl/header.c:
	widl: Use CONST_VTBL to declare lpVtbl.

2006-09-28  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/header.c, dlls/comctl32/listview.c,
	  dlls/comctl32/tests/listview.c, dlls/crypt32/tests/sip.c,
	  dlls/oleaut32/ungif.c, dlls/setupapi/tests/devinst.c,
	  dlls/wined3d/surface.c, dlls/wined3d/vertexbuffer.c,
	  dlls/winex11.drv/opengl.c:
	Assorted spelling fixes.

2006-09-29  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avicap32/avicap32_main.c, dlls/compstui/compstui_main.c,
	  dlls/crtdll/crtdll_main.c, dlls/cryptdll/cryptdll.c,
	  dlls/cryptnet/cryptnet_main.c, dlls/dpnhpast/main.c,
	  dlls/gphoto2.ds/gphoto2_main.c, dlls/hlink/tests/hlink.c,
	  dlls/localspl/localspl_main.c, dlls/mmdevldr.vxd/mmdevldr.c,
	  dlls/monodebg.vxd/monodebg.c, dlls/mprapi/mprapi.c,
	  dlls/msisys.ocx/msisys.c, dlls/msnet32/msnet_main.c,
	  dlls/msvcrtd/tests/debug.c, dlls/ntdsapi/ntdsapi.c,
	  dlls/odbccp32/odbccp32.c, dlls/oledlg/oledlg_main.c,
	  dlls/sane.ds/sane_main.c, dlls/sensapi/sensapi.c,
	  dlls/snmpapi/main.c, dlls/svrapi/svrapi_main.c,
	  dlls/twain_32/twain32_main.c, dlls/userenv/userenv_main.c,
	  dlls/vdhcp.vxd/vdhcp.c, dlls/vnbt.vxd/vnbt.c,
	  dlls/vnetbios.vxd/vnetbios.c, dlls/vtdapi.vxd/vtdapi.c,
	  dlls/winmm/joystick/joystick.c, programs/expand/expand.c,
	  programs/explorer/desktop.c, programs/msiexec/msiexec.c,
	  programs/uninstaller/main.c, tools/widl/hash.c:
	"One liners" printf format warning fixes for the migration of DWORD/LONG/ULONG
	from long to int.

	* include/wine/debug.h, include/wine/test.h:
	debug.h, test.h: Temporary add ifdefs around some printfs to avoid format.

	* include/windef.h, include/winnt.h:
	include: Make DWORD/LONG/ULONG an int to use the same type in Win32 and Win64.

	* dlls/activeds/Makefile.in, dlls/advapi32/Makefile.in,
	  dlls/advapi32/tests/Makefile.in, dlls/advpack/Makefile.in,
	  dlls/advpack/tests/Makefile.in, dlls/amstream/Makefile.in,
	  dlls/atl/Makefile.in, dlls/avifil32/Makefile.in,
	  dlls/cabinet/tests/Makefile.in, dlls/cards/Makefile.in,
	  dlls/cfgmgr32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comcat/tests/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comctl32/tests/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/crypt32/tests/Makefile.in, dlls/d3d8/Makefile.in,
	  dlls/d3d8/tests/Makefile.in, dlls/d3d9/Makefile.in,
	  dlls/d3d9/tests/Makefile.in, dlls/d3dx8/Makefile.in,
	  dlls/d3dxof/Makefile.in, dlls/dbghelp/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/ddraw/tests/Makefile.in,
	  dlls/devenum/Makefile.in, dlls/dinput/Makefile.in,
	  dlls/dinput/tests/Makefile.in, dlls/dinput8/Makefile.in,
	  dlls/dmband/Makefile.in, dlls/dmcompos/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmloader/Makefile.in,
	  dlls/dmscript/Makefile.in, dlls/dmstyle/Makefile.in,
	  dlls/dmsynth/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dnsapi/Makefile.in, dlls/dplayx/Makefile.in,
	  dlls/dpnet/Makefile.in, dlls/dsound/Makefile.in,
	  dlls/dsound/tests/Makefile.in, dlls/dswave/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/dxerr8/Makefile.in,
	  dlls/dxerr9/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/gdi/tests/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/iccvid/Makefile.in,
	  dlls/ifsmgr.vxd/Makefile.in, dlls/imaadp32.acm/Makefile.in,
	  dlls/imagehlp/Makefile.in, dlls/imm32/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/iphlpapi/Makefile.in,
	  dlls/iphlpapi/tests/Makefile.in, dlls/itss/Makefile.in,
	  dlls/kernel32/Makefile.in, dlls/kernel32/tests/Makefile.in,
	  dlls/localspl/tests/Makefile.in, dlls/lz32/tests/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mapi32/tests/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mlang/tests/Makefile.in, dlls/mpr/Makefile.in,
	  dlls/msacm32.drv/Makefile.in, dlls/msacm32/Makefile.in,
	  dlls/msacm32/tests/Makefile.in, dlls/msadp32.acm/Makefile.in,
	  dlls/mscms/Makefile.in, dlls/mscms/tests/Makefile.in,
	  dlls/msdmo/Makefile.in, dlls/msg711.acm/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/mshtml/tests/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msi/tests/Makefile.in,
	  dlls/msrle32/Makefile.in, dlls/msvcrt/Makefile.in,
	  dlls/msvcrt/tests/Makefile.in, dlls/msvfw32/Makefile.in,
	  dlls/msvidc32/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/msxml3/tests/Makefile.in, dlls/nddeapi/Makefile.in,
	  dlls/netapi32/Makefile.in, dlls/netapi32/tests/Makefile.in,
	  dlls/newdev/Makefile.in, dlls/ntdll/Makefile.in,
	  dlls/ntdll/tests/Makefile.in, dlls/odbc32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/ole32/tests/Makefile.in,
	  dlls/oleacc/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/tests/Makefile.in, dlls/olecli32/Makefile.in,
	  dlls/olesvr32/Makefile.in, dlls/opengl32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/psapi/Makefile.in,
	  dlls/psapi/tests/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/quartz/tests/Makefile.in, dlls/query/Makefile.in,
	  dlls/rasapi32/Makefile.in, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rpcrt4/tests/Makefile.in, dlls/rsaenh/Makefile.in,
	  dlls/rsaenh/tests/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/secur32/tests/Makefile.in, dlls/serialui/Makefile.in,
	  dlls/setupapi/Makefile.in, dlls/setupapi/tests/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shdocvw/tests/Makefile.in,
	  dlls/shell32/Makefile.in, dlls/shell32/tests/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/shlwapi/tests/Makefile.in,
	  dlls/spoolss/Makefile.in, dlls/tapi32/Makefile.in,
	  dlls/urlmon/Makefile.in, dlls/urlmon/tests/Makefile.in,
	  dlls/user/Makefile.in, dlls/user/tests/Makefile.in,
	  dlls/usp10/Makefile.in, dlls/usp10/tests/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/uxtheme/tests/Makefile.in,
	  dlls/version/Makefile.in, dlls/version/tests/Makefile.in,
	  dlls/vmm.vxd/Makefile.in, dlls/vwin32.vxd/Makefile.in,
	  dlls/w32skrnl/Makefile.in, dlls/wined3d/Makefile.in,
	  dlls/winedos/Makefile.in, dlls/winemp3.acm/Makefile.in,
	  dlls/wineps.drv/Makefile.in, dlls/winex11.drv/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/wininet/tests/Makefile.in,
	  dlls/winmm/Makefile.in, dlls/winmm/tests/Makefile.in,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/wineaudioio/Makefile.in,
	  dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winspool.drv/Makefile.in,
	  dlls/winspool.drv/tests/Makefile.in, dlls/wintab32/Makefile.in,
	  dlls/wintrust/Makefile.in, dlls/wintrust/tests/Makefile.in,
	  dlls/wldap32/Makefile.in, dlls/wnaspi32/Makefile.in,
	  dlls/ws2_32/Makefile.in, dlls/ws2_32/tests/Makefile.in,
	  dlls/wsock32/Makefile.in, dlls/wtsapi32/Makefile.in,
	  programs/cmdlgtst/Makefile.in, programs/eject/Makefile.in,
	  programs/icinfo/Makefile.in, programs/oleview/Makefile.in,
	  programs/rpcss/Makefile.in, programs/wineboot/Makefile.in,
	  programs/winecfg/Makefile.in, programs/wineconsole/Makefile.in,
	  programs/winedbg/Makefile.in, programs/winemenubuilder/Makefile.in,
	  programs/winhelp/Makefile.in, server/Makefile.in,
	  tools/winedump/Makefile.in, tools/wrc/Makefile.in:
	Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of
	DWORD/LONG/ULONG from long to int.

2006-09-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h,
	  dlls/msi/preview.c:
	msi: Return to the parent dialog when the argument to the EndDialog event
	is Return.

2006-09-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shelllink.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/shell32_main.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/pidl.c, dlls/shell32/regsvr.c:
	shell32: Cast-qual warnings fix.

	* dlls/shell32/brsfolder.c:
	shell32: Cast-qual warnings fix.

2006-09-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix typo that confuses winapi_check.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Don't deadlock if GL init fails.

2006-09-28  Detlef Riekenberg <wine.dev@web.de>

	* tools/winedump/winedump.man.in:
	winedump: Remove the shell script reference from the man-page.

2006-09-28  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Small fix in TOOLBAR_StyleChanged.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Set correcly hwndTrack in TrackMouseEvent call.

	* dlls/msvfw32/msvfw32_Pl.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Add Polish translation.

	* dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/gphoto2_Nl.rc,
	  dlls/gphoto2.ds/gphoto2_No.rc:
	gphoto2.ds: Use SS_CENTER to center a dialog string.

	* dlls/gphoto2.ds/gphoto2_Pl.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Add Polish translation.

	* dlls/sane.ds/sane_De.rc, dlls/sane.ds/sane_En.rc,
	  dlls/sane.ds/sane_Fi.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/sane.ds/sane_Ko.rc, dlls/sane.ds/sane_Nl.rc,
	  dlls/sane.ds/sane_No.rc:
	sane.ds: Use SS_CENTER to center a dialog string.

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Pl.rc:
	sane.ds: Add Polish translation.

2006-09-28  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Fix a typo.

	* dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/rsaenh.c:
	rsaenh: Correct signature checking.
	- pass desired key to encrypt_block_impl
	- don't change the alg id of imported keys
	- add a few traces

2006-09-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/sip.c:
	crypt32: Added some CryptSIP stub implementations.

2006-09-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add a stub implementation and a test for ScriptLayout.

2006-09-28  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.22.

----------------------------------------------------------------
2006-09-22  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: StgOpenStorage on non-existent file should create it (with test).

2006-09-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shlwapi/string.c:
	shlwapi: Add size parameters to function that takes array arguments.

2006-09-27  Thomas Weidenmueller <thomas@reactsoft.com>

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix RpcMgmtSetServerStackSize prototype.

2006-09-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: A small test to verify when to write function pointers.

2006-09-28  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in, configure, configure.ac, dlls/Makefile.in,
	  dlls/localspl/tests/Makefile.in, dlls/localspl/tests/localmon.c,
	  programs/winetest/Makefile.in, programs/winetest/winetest.rc:
	localspl/tests: Add initial test.

2006-09-27  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/clusapi/Makefile.in, dlls/clusapi/clusapi.c,
	  dlls/clusapi/clusapi.spec:
	clusapi: Implement stub dll for clusapi.

2006-09-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Follow state resolution rules when a feature parent saves a component.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: A feature state of INSTALLSTATE_ABSENT translates into a component state
	of INSTALLSTATE_UNKNOWN.

2006-09-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CertGetPublicKeyLength.

2006-09-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c, dlls/gdi/gdi_private.h:
	gdi32: Make GdiFont a proper C structure, with GdiFont* being a pointer.

2006-09-27  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Align stack to 4 bytes.

2006-09-27  Detlef Riekenberg <wine.dev@web.de>

	* dlls/localspl/Makefile.in, dlls/localspl/localmon.c,
	  dlls/localspl/localspl_main.c:
	localspl: Start implementation of InitializePrintMonitor.

2006-09-28  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean Resource.

	* dlls/winmm/winmm_Ko.rc:
	winmm: Updated Korean resource.

2006-09-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Tell gl about the surface alignment.

2006-09-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Cast-qual warnings fix.

	* dlls/secur32/secur32.c:
	secur32: Cast-qual warnings fix.

2006-09-27  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole32: Don't return from CoRegisterClassObject until we have created the
	named pipe.
	Also don't fail if the client connects to the pipe between CreateNamedPipe
	and ConnectNamedPipe.

2006-09-27  Robert Shearman <rob@codeweavers.com>

	* include/objidl.idl:
	include: Add types to objidl.idl used by COM contexts.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Make sure to free the allocated vtable when the tmarshal proxy
	is released.

	* dlls/ole32/stg_stream.c:
	ole32: Check the return value of IStream_SetSize so as to not blindly continue
	on and possibly corrupt the structured storage file.

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid crashing in check_atl_thunk if an execution exception was raised
	with a bad address.

	* dlls/ntdll/virtual.c:
	ntdll: NtAllocateVirtual with type of MEM_WRITE_WATCH fails with
	STATUS_NOT_SUPPORTED on Win2000 instead of STATUS_INVALID_PARAMETER.

	* include/winnt.h:
	include: Add recently added PSDK VM flags to winnt.h.

2006-09-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/tests/font.c:
	gdi32: Modify kerning scaling algorithm to the one which appears to better
	match what Windows does.

2006-09-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c, dlls/mshtml/persist.c, dlls/mshtml/task.c,
	  dlls/mshtml/tests/htmldoc.c:
	mshtml: Added get_readyState implementation.

	* dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Hu.rc,
	  dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc, dlls/mshtml/No.rc,
	  dlls/mshtml/Sv.rc, dlls/mshtml/Tr.rc, dlls/mshtml/resource.h,
	  dlls/mshtml/rsrc.rc:
	mshtml: Remove conflicts between resource.h and mshtmcid.h.

2006-09-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/tests/hglobalstream.c:
	ole32/tests: Avoid using sizeof in a trace.

	* dlls/d3d9/tests/stateblock.c:
	d3d9/tests: Don't test texture states beyond the supported maximum.

2006-09-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Test and fix TB_ADDSTRING from resource.

2006-09-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Fix typo in ResourceReleased.

2006-09-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c, dlls/crypt32/tests/sip.c:
	crypt32: Partly implement CryptSIPRetrieveSubjectGuid.

2006-09-27  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Fix some typos in error messages.

2006-09-27  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Read GL info and load constants into the same device.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move device pointer into the BaseShader class.

2006-09-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/netapi32/ds.c, dlls/netapi32/netapi32.spec, include/dsgetdc.h:
	netapi32: Add stubs for DsGetDcNameW and DsGetSiteNameW.

	* include/wintrust.h:
	wintrust.h: Remove duplicate definitions.  Spotted by Paul Vriens.

2006-09-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Another CryptSIPLoad test.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Added some CryptSIP stub implementations.

	* include/mssip.h:
	wintrust: Fix function prototype.

2006-09-27  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/clock/Fr.rc:
	clock: French translation improvements.

	* programs/notepad/Fr.rc:
	notepad: French translation improvements.

	* programs/progman/Fr.rc:
	progman: French translation improvements.

	* programs/winefile/Fr.rc:
	winefile: French translation improvements.

	* programs/taskmgr/Fr.rc:
	taskmgr: French translation improvements.

	* programs/regedit/Fr.rc:
	regedit: French translation improvements.

2006-09-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/view/view.c:
	view: Reset the image left-top corner to the window left-top corner after a
	Scale to Window.

	* programs/view/Cs.rc, programs/view/De.rc, programs/view/En.rc,
	  programs/view/Eo.rc, programs/view/Es.rc, programs/view/Fr.rc,
	  programs/view/It.rc, programs/view/Ko.rc, programs/view/Nl.rc,
	  programs/view/No.rc, programs/view/Pl.rc, programs/view/Pt.rc,
	  programs/view/Ru.rc, programs/view/Si.rc, programs/view/Tr.rc,
	  programs/view/resource.h, programs/view/view.c:
	view: Remove the Info > Hello menu item.

	* programs/view/Cs.rc, programs/view/De.rc, programs/view/En.rc,
	  programs/view/Eo.rc, programs/view/Es.rc, programs/view/Fr.rc,
	  programs/view/It.rc, programs/view/Ko.rc, programs/view/Nl.rc,
	  programs/view/No.rc, programs/view/Pl.rc, programs/view/Pt.rc,
	  programs/view/Ru.rc, programs/view/Si.rc, programs/view/Tr.rc,
	  programs/view/init.c, programs/view/resource.h:
	view: Remove IDS_APPNAME from resources.

	* programs/view/Pl.rc, programs/view/viewrc.rc:
	view: Add Polish translation.

	* programs/regedit/En.rc:
	regedit: Fix the English (Neutral) menu.

2006-09-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/Ru.rc:
	winecfg: Update Russian translation.

2006-09-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Comparing BOOLs against FALSE is redundant.

	* dlls/wined3d/directx.c:
	wined3d: Add a comment to clarify the point of max_sampler_stages.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Add support for native NPOT textures.

	* dlls/wined3d/wined3d_main.c, programs/winecfg/x11drvdlg.c:
	wined3d: Enable pixel shaders by default.

	* dlls/wined3d/wined3d_main.c, dlls/wined3d/wined3d_private.h:
	wined3d: Fix the default values for wined3d_settings.

	* dlls/wined3d/vertexshader.c:
	wined3d: Don't overwrite the position y offset in ARB vertex programs.

	* dlls/wined3d/device.c:
	wined3d: Cleanup ActiveRender some more.

	* dlls/wined3d/device.c:
	wined3d: Render upside down when rendering offscreen, even if the backbuffer
	is used to render to.

	* dlls/wined3d/device.c:
	wined3d: Show the MESSAGE in device_find_fbconfigs() only once.

2006-09-26  Juan Lang <juan_lang@yahoo.com>

	* include/wintrust.h:
	wintrust.h: Add missing defines.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Encode/decode authority key ids.

2006-09-27  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmdlgtst/Ko.rc:
	cmdlgtst: Updated Korean resource.

2006-09-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Cast-qual warnings fix.

	* dlls/rsaenh/mpi.c, dlls/rsaenh/rsa.c, dlls/rsaenh/tomcrypt.h:
	rsaenh: Cast-qual warnings fix.

2006-09-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/uninstaller/Pl.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Polish translation.

	* dlls/winmm/winmm_En.rc:
	winmm: Use English (US) instead of English (Neutral) for resources.

	* dlls/comctl32/comctl_Pl.rc:
	comctl32: Update Polish translation.

	* dlls/msrle32/msrle32.c, dlls/msrle32/msrle_Cs.rc,
	  dlls/msrle32/msrle_Hu.rc:
	msrle32: Show correctly the authors surname in some non-latin1 languages.

	* dlls/iccvid/iccvid_Pl.rc, dlls/iccvid/rsrc.rc, dlls/msrle32/msrle_Pl.rc,
	  dlls/msrle32/rsrc.rc, dlls/msvidc32/msvidc32_Pl.rc,
	  dlls/msvidc32/rsrc.rc:
	video codecs: add Polish translation.

2006-09-26  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmband/bandtrack.c, dlls/dmband/dmutils.c:
	dmband: Print 64bit integers with wine_dbgstr_longlong.

2006-09-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: If the feature linked to a component has a state of INSTALLSTATE_UNKNOWN,
	the component's state should match.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: Only specifically resolve the TARGETDIR directory once.

	* dlls/msi/tests/package.c:
	msi: Add tests for setting the target path of TARGETDIR (based on a patch by
	Andrey Turkin).

	* dlls/msi/database.c, dlls/msi/install.c, dlls/msi/msipriv.h,
	  dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Store the full path to the database file in the MSIDATABASE structure.

2006-09-21  Nicolas Delcros <nicolas@dyalog.com>

	* dlls/user/property.c, include/winuser.h:
	winuser.h: Fix PROPENUMPROCEXA/W types declarations.

2006-09-21  Damjan Jovanovic <damjan.jov@gmail.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/devinst.c:
	setupapi: Brace the guid in SetupDiOpenClassRegKeyExW.

2006-09-26  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in, programs/explorer/hal.c:
	explorer: Work around the latest HAL binary compatibility breakage.

2006-09-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/sip.c:
	crypt32: Add tests for CryptSIPRetrieveSubjectGuid.

2006-09-22  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/queue.c:
	setupapi: Fix a typo.

2006-09-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/d3d8_main.c:
	d3d8: Remove no longer used imports.

	* dlls/d3d9/d3d9_main.c:
	d3d9: Remove no longer used imports.

2006-09-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/mssip.h:
	mssip.h: Added function definition.

2006-09-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/font.c:
	gdi32: Add a test for GetKerningPairs.

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/gdi_private.h:
	gdi32: Implement GetKerningPairs for TrueType fonts.

2006-09-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Use a proper protector for X11/XKBlib.h.

2006-09-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Fixed regression in gdb startup (especially gdb proxy).

	* programs/winedbg/memory.c:
	winedbg: Put back the %d format for printing integral values even for
	64bit internal values as the default format in winebdg command imposes.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Added support for a couple of compiland's children.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Fix location computation when attribute has a constant form instead
	of a block form.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Change the definition of an attribute so that we can pass around
	the form.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Move the attribute union (now nameless) into a structure called
	attribute.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Added support for DW_OP_breg* operations in location computation.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Variables & registers.
	- more strickling differentiation variable location between
	a register, and the dereferenced address defined by a
	register (and possibly an offset)
	- added a parameter to symt_add_func_local (and internal symbol
	data struct) to help differentiate
	- fix all debug parsers to confer to this new scheme

2006-09-25  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Try to open nonexisting compressed files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Add more cases for opening compressed files.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Move indirect opening of compressed files into separate functions.
	Also rename W-string variable to get some naming consistency.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Compare result to predefined compressed file name, not calculated
	one.

2006-09-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/cert.c:
	crypt32: Reduce indent level of tests.

2006-09-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Use GL_EXTCALL.
	That fixes compilation with gl headers that do not know about glUniform4fvARB.

2006-09-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.Drv: Remove unneeded wgl exports.

2006-09-25  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: fgetc needs to use unsigned parameters.
	Spotted by and adapted from test written by Tobias Ringström.

2006-09-25  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/dmcompos_main.c,
	  dlls/dmcompos/signposttrack.c:
	dmcompos: Print 64bit integers with wine_dbgstr_longlong.

2006-09-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/cpsf.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Cast-qual warnings fix.

	* dlls/riched20/reader.c:
	riched20: Cast-qual warning fix.

2006-09-25  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/notepad/Tr.rc:
	notepad: Update Turkish resources.

	* programs/clock/Tr.rc:
	clock: Update Turkish resources.

	* dlls/shell32/shell32_Tr.rc:
	shell32: Update Turkish resources.

2006-09-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* programs/regedit/listview.c:
	regedit: Remove dead code.

2006-09-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_types.h:
	wined3d: Add the missing gamma cap.

2006-09-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Implement SoftpubDllRegisterServer.

2006-09-22  Ivan Leo <ivanleo@gmail.com>

	* dlls/dinput/mouse.c:
	dinput: Add some error checks to mouse.c.

2006-09-22  Frank Richter <frank.richter@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Duplicate behaviour of native SetupGetInfInformation with NULL
	ReturnBuffer and certain ReturnBufferSizes.

2006-09-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/comctl32.h, dlls/comctl32/commctrl.c,
	  dlls/comctl32/toolbar.c:
	comctl32: toolbar: If wParam in TB_ADDBUTTON is large, enlarge the
	bitmap before ImageList_AddMasked rather then call
	ImageList_SetImagesCount after.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Resize the imagelist icons after a TB_SETBITMAPSIZE.

2006-09-25  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid ebx being clobbered in exception handler.

2006-09-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added more loading tests.

	* dlls/mshtml/navigate.c:
	mshtml: Set dwOptions in GetBindInfo to 0x80000 to make test pass.

	* dlls/mshtml/nsembed.c:
	mshtml: Initialize url in OnStartURIOpen.

	* dlls/mshtml/persist.c:
	mshtml: Remove FIXMEs and fix a typo.

	* dlls/mshtml/navigate.c, dlls/mshtml/task.c:
	mshtml: Added PARSECOMPLETE task implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Store BSCallback in HTMDocument.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Store IBinding interface in BSCallback.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c, dlls/mshtml/task.c:
	mshtml: Add SETDOWNLOADSTATE task implementation and use it in
	IPersistMoniker::Load.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/task.c, dlls/mshtml/view.c:
	mshtml: Create one "Internet Explorer_Hidden" window per thread.

2006-09-25  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/devenum/devenum.rc, dlls/shell32/shell32_Fr.rc:
	dlls: Assorted French translation improvements.

2006-09-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winefile/Pl.rc:
	winefile: Update Polish translation.

	* dlls/user/resources/user32_Pl.rc:
	user32: Update Polish translation.

	* programs/regedit/Pl.rc:
	regedit: Update Polish translation.

	* programs/cmdlgtst/En.rc, programs/cmdlgtst/Ru.rc:
	cmdlgtst: Move the PageSetup_Flags_Dialog from Ru.rc to En.rc.

	* dlls/mshtml/rsrc.rc, dlls/msi/msi.rc, dlls/shdocvw/shdocvw.rc,
	  programs/oleview/rsrc.rc, programs/uninstaller/rsrc.rc:
	resources: Mark common resources as LANG_NEUTRAL, SUBLANG_NEUTRAL.

2006-09-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/tests/surface.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Surface data is 32 bit aligned.

2006-09-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Avoid wasting a uniform.

	* dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Stop fixing up a VBO if the declaration changes too often.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Verify the VBO vertex declaration every draw.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix a typo.

2006-09-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/quartz/acmwrapper.c, dlls/quartz/avidec.c:
	quartz: Cast-qual warnings fix.

2006-09-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/typelib.c:
	oleaut32: Cast-qual warnings fix.

2006-09-22  Andrey Turkin <pancha@mail.nnov.ru>

	* programs/msiexec/msiexec.c:
	msiexec: Should recognize /xpackage syntax.

2006-09-21  Aric Stewart <aric@codeweavers.com>

	* dlls/user/edit.c:
	user: Correct buffer overflows in IME processing code.

2006-09-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/dialog.c:
	msi: Support more dialog groups.

2006-09-25  Nicolas Delcros <nicolas@dyalog.com>

	* tools/wrc/wrc.c:
	wrc: Fixed typo for the --pedantic argument.

2006-09-25  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wincrypt.h:
	wincrypt.h: A few more defines.

2006-09-22  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: glBlend* fixes.

2006-09-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Better IDM_PARSECOMPLETE test.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/tests/webbrowser.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Silent implementation.
	As we don't have any dialog in WebBrowser implemented yet, all we have to do
	is to store silent value.

2006-09-21  Huw Davies <huw@codeweavers.com>

	* dlls/advapi32/security.c:
	advapi32: Fix ADVAPI_GetComputerSid to work correctly if a sid doesn't exist
	in the registry.
	This makes the tests run correctly on first invocation.

	* dlls/gdi/tests/font.c:
	gdi32: Make the bitmap font tests locale aware.

	* dlls/gdi/tests/font.c:
	gdi32: Win 2000 and Win XP behave differently if there's a '\n' in the string,
	so remove the width test completely.

2006-09-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/secur32.c:
	secur32: Stop loading Negotiate until it is actually working.

2006-09-24  Alexandre Julliard <julliard@winehq.org>

	* programs/.gitignore, programs/make_progs, tools/make_makefiles:
	make_makefiles: Merged the make_progs script into make_makefiles.

2006-09-20  Detlef Riekenberg <wine.dev@web.de>

	* include/msvcrt/sys/types.h, include/winsock.h:
	include: Open Watcom compatibility (Fix _BSDTYPES_DEFINED typo).

2006-09-22  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Moved the libGL.a check to the final warnings.

	* Makefile.in, configure, configure.ac, include/.gitignore:
	Makefile: Automatically update config.h if configure changed.

	* tools/make_makefiles:
	make_makefiles: Parse the makefiles to find the correct rules file dependency.

	* tools/makedep.c:
	makedep: Update dependencies even with no source files.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/resource.c, dlls/user/tests/resource.c,
	  dlls/user/tests/resource.rc:
	user: Fix handling of high bits of resource id in LoadString, reported by
	Andrey Turkin.

2006-09-17  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Allow null streams in the vertex declaration.

2006-09-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Tell the user if ntlm_auth is not found or outdated.

2006-09-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm32/driver.c:
	msacm: acmDriverPriority() compares dwPriority against negative values.
	This issue was spotted by Andrew Talbot.

2006-09-15  Benjamin Arai <me@benjaminarai.com>

	* Makefile.in, configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/nddeapi/Makefile.in, dlls/nddeapi/nddeapi.c,
	  dlls/nddeapi/nddeapi.spec:
	nddeapi: Implement stub dll for nddeapi.

2006-09-14  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/comdlg32/fontdlg.c:
	comdlg32: Show better font style information in fontdlg.

2006-09-13  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec:
	wintrust: Add a stub implementation of CryptCATClose.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust.spec, include/mscat.h:
	wintrust: Add a stub implementation of CryptCATEnumerateMember.

	* dlls/wintrust/crypt.c, dlls/wintrust/wintrust_main.c:
	wintrust: Move the Crypt* functions to crypt.c.

	* dlls/wintrust/Makefile.in, dlls/wintrust/crypt.c,
	  dlls/wintrust/wintrust.spec:
	wintrust: Add a stub implementation of CryptCATOpen.

2006-09-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix the return code of TB_ADDBITMAP.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Simplify the TOOLBAR_AddButton.

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Fix IDB_STD_VIEW_* icons count (with testcase).

	* dlls/comctl32/tests/toolbar.c, dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use correctly wParam in TB_ADDBITMAP.

	* dlls/comctl32/imagelist.c, dlls/comctl32/tests/imagelist.c:
	comctl32: imagelist: SetImageCount can be used to decrease image count (with
	testcase).

	* dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/propsheet.rc,
	  dlls/comctl32/tests/resources.h, dlls/comctl32/tests/rsrc.rc,
	  dlls/comctl32/tests/toolbar.c:
	comctl32: toolbar: Add some tests for TB_ADDBITMAP.

2006-09-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c,
	  dlls/msi/tests/package.c:
	msi: Disable child features of parent features that are unselected because of
	the install level.

	* dlls/msi/dialog.c:
	msi: Translate the INSTALLSTATE_UNKNOWN index into the INSTALLSTATE_ABSENT
	image index.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Don't check a component's install state if a component ID is not provided.

	* dlls/msi/tests/package.c:
	msi: Fix the results of a few tests to match Windows.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Load the component states in CostFinalize instead of CostInitialize.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Initialize all features' action states to INSTALLSTATE_UNKNOWN.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Only override a feature whose action state is INSTALLSTATE_SOURCE.

	* dlls/advpack/files.c:
	advpack: backup should be a const string.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/tests/http.c:
	wininet/tests: Don't fail the tests if the network is unreachable.

	* dlls/urlmon/tests/url.c:
	urlmon/tests: Don't fail the tests if the network is unreachable.

2006-09-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	opengl: Move wgl font code to winex11.drv.

2006-09-20  Michael Stefaniuc <mstefani@redhat.de>

	* include/wine/mmsystem16.h:
	include: Make the return type of mmioSendMessage16 in the function declaration
	match that of the function definition.

2006-09-20  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix IXMLDOMNamedNodeMap_getNamedItem() conformance on error.

2006-09-20  Benjamin Arai <me@benjaminarai.com>

	* dlls/msi/tests/db.c:
	msi: Adds test to check "JOIN" operator with "*" operator for the SELECT clause
	returns the correct results.

	* dlls/msi/tests/db.c:
	msi: Adds test to check if basic "JOIN" operator without "WHERE" clause returns
	the correct results.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarImp.

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/variant.c:
	oleaut32: Implementation for function variant:VarImp.

2006-09-20  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmime/dmutils.c, dlls/dmime/lyricstrack.c,
	  dlls/dmime/markertrack.c, dlls/dmime/paramcontroltrack.c,
	  dlls/dmime/performance.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/wavetrack.c:
	dmime: Print 64bit integers with wine_dbgstr_longlong.

2006-09-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ole32/stg_prop.c:
	ole32: Cast-qual warnings fix.

	* dlls/odbc32/proxyodbc.c:
	odbc32: Cast-qual warning fix.

2006-09-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/netapi32/ds.c, dlls/netapi32/tests/ds.c:
	netapi32: Partially implement DsRoleGetPrimaryDomainInformation, and
	DsRoleFreeMemory.

	* dlls/crypt32/chain.c:
	crypt32: Don't crash on freeing null chain engine.

	* dlls/crypt32/tests/cert.c:
	crypt32: Test exporting key acquired through CryptAcquireCertificatePrivateKey.

	* dlls/crypt32/tests/encode.c:
	crypt32: Test decoding a big CRL.

2006-09-20  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Do not bind the 0 vbo when vbos are unsupported.

2006-09-21  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/process.h, server/request.c:
	server: Kill the process without SIGTERM when the fd socket is closed.

	* configure, configure.ac:
	configure: Don't display any messages when started from the makefile to rebuild
	config.status.

2006-09-20  Alexandre Julliard <julliard@winehq.org>

	* configure.ac:
	configure: Escape newlines in DEPENDENCIES when using an old autoconf version.

	* Makefile.in, tools/Makefile.in:
	Makefile: Fixed rule for building makedep when cross-compiling.

2006-09-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/sip.c:
	crypt32: Simplify by removing unneeded backslash.

2006-09-20  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/font.c:
	gdi32: GetTextExtentPoint and GetTextExtentExPoint behave differently if
	there's a \n in the string.

	* dlls/gdi/freetype.c:
	gdi32: Fix ppem in the case that there isn't an exact height match in the
	vdmx table.

	* dlls/gdi/tests/font.c:
	gdi32: Only run the GetGlyphIndices test if Symbol is installed.

2006-09-19  Benjamin Arai <me@benjaminarai.com>

	* dlls/msi/tests/db.c:
	msi: Adds test to check if "AND" operator returns the correct result for the
	"WHERE" clause.

	* dlls/msi/tests/db.c:
	msi: Adds tests to check if joins return the correct number of rows.

	* dlls/msi/tests/db.c:
	msi: Updates tests for joins to include row and column ids in message.

2006-09-17  Christoph Frick <frick@sc-networks.com>

	* dlls/wined3d/device.c:
	wined3d: Clamp the light exponent at 128.

2006-09-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Use pSetupDiOpenClassRegKeyExA.

	* dlls/ntdll/cdrom.c:
	ntdll: Don't do DVD_READ_STRUCTURE when inbuffer or outbuffer has issues
	(Coverity).

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fixed conditional expression (Coverity).

2006-09-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/font.c:
	gdi: If there is no space for strings GetOutlineTextMetricsA should not indicate
	that they present.

2006-09-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Initialize default coop level. Invert logic in hook handler.

2006-09-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/env.c:
	ntdll: Cast-qual warning fix.

2006-09-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/registry.c,
	  dlls/msi/source.c:
	msi: Cast-qual warnings fix.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/hlink/hlink_main.c:
	hlink: Cast-qual warnings fix.

2006-09-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/tests/path.c, dlls/url/url_main.c:
	url: Fixed wrong argument (Coverity).

2006-09-16  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* programs/notepad/dialog.c:
	notepad: Keep the modify information of edit control when toggle wrap line.

	* programs/notepad/main.c, programs/notepad/main.h:
	notepad: Use HKCU\Software\Microsoft\Notepad for font and window-geometry.

2006-09-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use ACTION_UpdateComponentStates in the selection tree so we don't have
	to duplicate the component changing logic.

	* dlls/msi/helpers.c, dlls/msi/tests/package.c:
	msi: INSTALLSTATE_SOURCE also overrides a parent feature state change to
	INSTALLSTATE_ABSENT.

	* dlls/msi/tests/package.c:
	msi: Add tests for components with multiple parent features.

2006-09-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add the total and free disk space to the VolumeCostList control.

2006-09-18  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/d3d8_main.c, dlls/d3d8/tests/d3d8_main.c:
	d3d8: More correct stub for ValidatePixelShader + tests.

2006-09-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c, dlls/dinput/tests/mouse.c:
	dinput: Return proper errors in SetCooperativeLevel.

2006-09-14  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/winuser.h:
	include: Add some missing definitions in winuser.h.

2006-09-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/advpack_private.h:
	advpack: Remove duplicate function declaration.

2006-09-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/netapi32/nbnamecache.c:
	netapi32: Cast-qual warnings fix.

2006-09-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/misc.c:
	msvcrt: Cast-qual warnings fix.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/util.c:
	mapi32: Cast-qual warning fix.

	* dlls/kernel32/resource.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/ne_module.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/instr.c:
	kernel32: Cast-qual warnings fix.

	* dlls/kernel32/heap.c, dlls/kernel32/registry16.c, dlls/kernel32/time.c,
	  dlls/kernel32/volume.c:
	kernel32: Cast-qual warnings fix.

2006-09-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel32/except.c, dlls/ntdll/signal_i386.c,
	  dlls/winex11.drv/dib.c, include/winnt.h,
	  programs/winedbg/tgt_active.c:
	include: Added definitions for the fault address exception information.

	* dlls/kernel32/except.c, dlls/ntdll/thread.c, include/winbase.h,
	  include/wine/exception.h, include/winnt.h:
	include: Exception filters should return LONG, not DWORD.
	Also move UnhandledExceptionFilter definitions to winbase.h since they
	are there in the latest SDK.

2006-09-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* include/commctrl.h:
	include: Win64 fix in TBBUTTON.

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Don't leak the intoPtr->bitmaps during resizing and
	destruction.

	* dlls/comctl32/header.c:
	comctl32: header: Update the header comment.

	* dlls/comctl32/header.c:
	comctl32: header: Remove the nOldWidth.

	* dlls/comctl32/header.c:
	comctl32: header: Send new values in notifies during resize and drag-drop
	instead of the old ones.
	This also fixes the notify format of HDN_ITEMCLICKED(A/W).

	* dlls/comctl32/header.c:
	comctl32: header: Merge the simple delete and complex delete.

	* dlls/comctl32/header.c:
	comctl32: header: Simplify the insert/delete code by using ReAlloc.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Test the header order-management code and fix some bugs.

2006-09-19  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt.h: Add more missing definitions and prototypes.

2006-09-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmloader/debug.c:
	dmloader: Print 64bit integers with wine_dbgstr_longlong.

2006-09-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Fix missing backslash.

2006-09-17  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add the missing SecurityService keys.

2006-09-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/setupapi/devinst.c:
	setupapi: Fixed wrong check (Coverity).

2006-09-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/str.c:
	crypt32: Cast-qual warnings fix.

2006-09-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/sip.c:
	crypt32: Move SIP related tests to their own file.

2006-09-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/Makefile.in, dlls/crypt32/main.c, dlls/crypt32/sip.c:
	crypt32: Move SIP related functions to their own file.

	* dlls/crypt32/crypt32.spec:
	crypt32: Add a few functions to the spec file.

2006-09-18  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix wined3d/opengl regression.

2006-09-15  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix fbconfig regression.

2006-09-13  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Add stubs for SetupOpenLog, SetupCloseLog, and SetupLogError.

	* dlls/setupapi/parser.c, dlls/setupapi/setupapi.spec,
	  dlls/setupapi/tests/parser.c:
	setupapi: Implement pSetupGetField, with tests.

2006-09-14  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* documentation/README.ko:
	README.ko: Updated.

2006-09-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi/font.c, dlls/gdi/printdrv.c:
	gdi: Cast-qual warnings fix.

	* dlls/gdi/enhmetafile.c:
	gdi: Cast-qual warnings fix.

	* dlls/gdi/bitmap.c, dlls/gdi/brush.c, dlls/gdi/dib.c:
	gdi: Cast-qual warnings fix.

2006-09-13  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typelib.c:
	widl: Don't compare result of read() to unsigned type.

	* tools/widl/write_msft.c:
	widl: Remove unused parameter in create_msft_typeinfo.

	* tools/widl/write_msft.c:
	widl: Remove unused parameter in ctl2_encode_name.

	* tools/widl/utils.c:
	widl: Replace a #if by if for better compiler checking.

	* tools/widl/typegen.c:
	widl: Remove unused parameter in write_ip_tfs.

	* tools/widl/parser.l:
	widl: Fix warning about unused structure field in lexer.

	* tools/widl/widl.man.in:
	widl: Add -u and -U options to man page.

2006-09-13  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmscript/dmscript_main.c, dlls/dmscript/scripttrack.c:
	dmscript: Print 64bit integers with wine_dbgstr_longlong.

2006-09-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Some tests for CryptSIPLoad.

2006-09-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c, dlls/dnsapi/record.c:
	dnsapi: Use the proper type for the return value in dns_do_query_netbios().
	Remove some unnecessary casts.

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Implement and test DnsRecordSetDetach.

2006-09-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't edit labels after the first click of a double click.

	* dlls/comctl32/listview.c:
	comctl32: listview: Don't edit labels on click if the view was not focused.

2006-09-13  Nicolas Delcros <nicolas@dyalog.com>

	* include/commctrl.h:
	include/commctrl.h: TV_DISPINFO constants definition.

2006-09-12  Nicolas Delcros <nicolas@dyalog.com>

	* include/windows.h:
	include/windows.h: Added _INC_WINDOWS declaration.

2006-09-14  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	makefile: Automatically re-run configure if it has been modified.

	* Makefile.in, tools/make_makefiles:
	makefiles: Automatically rebuild makefiles when their sources and/or configure
	changed.

	* Make.rules.in, Makefile.in, configure, configure.ac, tools/Makefile.in:
	makefiles: Attempt to automatically run make depend when reading an updated
	makefile.

	* Makefile.in, dlls/Makefile.in, dlls/make_dlls,
	  documentation/Makefile.in, fonts/Makefile.in, libs/Makefile.in,
	  programs/Makefile.in, programs/make_progs:
	makefiles: Remove the dependencies comment in files that don't need it.

	* configure, configure.ac, dlls/activeds/Makefile.in,
	  dlls/advapi32/Makefile.in, dlls/advapi32/tests/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/advpack/tests/Makefile.in,
	  dlls/amstream/Makefile.in, dlls/atl/Makefile.in,
	  dlls/avicap32/Makefile.in, dlls/avifil32/Makefile.in,
	  dlls/cabinet/Makefile.in, dlls/cabinet/tests/Makefile.in,
	  dlls/capi2032/Makefile.in, dlls/cards/Makefile.in,
	  dlls/cfgmgr32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comcat/tests/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comctl32/tests/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/Makefile.in, dlls/compstui/Makefile.in,
	  dlls/crtdll/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/crypt32/tests/Makefile.in, dlls/cryptdll/Makefile.in,
	  dlls/cryptnet/Makefile.in, dlls/ctl3d32/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d9/Makefile.in, dlls/d3d9/tests/Makefile.in,
	  dlls/d3dim/Makefile.in, dlls/d3drm/Makefile.in,
	  dlls/d3dx8/Makefile.in, dlls/d3dxof/Makefile.in,
	  dlls/dbghelp/Makefile.in, dlls/dciman32/Makefile.in,
	  dlls/ddraw/Makefile.in, dlls/ddraw/tests/Makefile.in,
	  dlls/devenum/Makefile.in, dlls/dinput/Makefile.in,
	  dlls/dinput/tests/Makefile.in, dlls/dinput8/Makefile.in,
	  dlls/dmband/Makefile.in, dlls/dmcompos/Makefile.in,
	  dlls/dmime/Makefile.in, dlls/dmloader/Makefile.in,
	  dlls/dmscript/Makefile.in, dlls/dmstyle/Makefile.in,
	  dlls/dmsynth/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dmusic32/Makefile.in, dlls/dnsapi/Makefile.in,
	  dlls/dnsapi/tests/Makefile.in, dlls/dplay/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/dpnet/Makefile.in,
	  dlls/dpnhpast/Makefile.in, dlls/dsound/Makefile.in,
	  dlls/dsound/tests/Makefile.in, dlls/dswave/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/dxerr8/Makefile.in,
	  dlls/dxerr9/Makefile.in, dlls/dxguid/Makefile.in,
	  dlls/gdi/Makefile.in, dlls/gdi/tests/Makefile.in,
	  dlls/glu32/Makefile.in, dlls/glut32/Makefile.in,
	  dlls/gphoto2.ds/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/hid/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/hlink/tests/Makefile.in, dlls/iccvid/Makefile.in,
	  dlls/icmp/Makefile.in, dlls/ifsmgr.vxd/Makefile.in,
	  dlls/imaadp32.acm/Makefile.in, dlls/imagehlp/Makefile.in,
	  dlls/imm32/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/infosoft/tests/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/iphlpapi/Makefile.in, dlls/iphlpapi/tests/Makefile.in,
	  dlls/itss/Makefile.in, dlls/kernel32/Makefile.in,
	  dlls/kernel32/tests/Makefile.in, dlls/localspl/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/lz32/tests/Makefile.in,
	  dlls/mapi32/Makefile.in, dlls/mapi32/tests/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mlang/tests/Makefile.in, dlls/mmdevldr.vxd/Makefile.in,
	  dlls/monodebg.vxd/Makefile.in, dlls/mpr/Makefile.in,
	  dlls/mprapi/Makefile.in, dlls/msacm32.drv/Makefile.in,
	  dlls/msacm32/Makefile.in, dlls/msacm32/tests/Makefile.in,
	  dlls/msadp32.acm/Makefile.in, dlls/mscms/Makefile.in,
	  dlls/mscms/tests/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/msftedit/Makefile.in, dlls/msg711.acm/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/mshtml/tests/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msi/tests/Makefile.in,
	  dlls/msimg32/Makefile.in, dlls/msisys.ocx/Makefile.in,
	  dlls/msnet32/Makefile.in, dlls/msrle32/Makefile.in,
	  dlls/msvcrt/Makefile.in, dlls/msvcrt/tests/Makefile.in,
	  dlls/msvcrt20/Makefile.in, dlls/msvcrt40/Makefile.in,
	  dlls/msvcrtd/Makefile.in, dlls/msvcrtd/tests/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/msvidc32/Makefile.in,
	  dlls/mswsock/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/msxml3/tests/Makefile.in, dlls/netapi32/Makefile.in,
	  dlls/netapi32/tests/Makefile.in, dlls/newdev/Makefile.in,
	  dlls/ntdll/Makefile.in, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdsapi/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/ole32/tests/Makefile.in,
	  dlls/oleacc/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/tests/Makefile.in, dlls/olecli32/Makefile.in,
	  dlls/oledlg/Makefile.in, dlls/olepro32/Makefile.in,
	  dlls/olesvr32/Makefile.in, dlls/opengl32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/psapi/Makefile.in,
	  dlls/psapi/tests/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/qcap/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/quartz/tests/Makefile.in, dlls/query/Makefile.in,
	  dlls/rasapi32/Makefile.in, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/Makefile.in, dlls/riched32/Makefile.in,
	  dlls/rpcrt4/Makefile.in, dlls/rpcrt4/tests/Makefile.in,
	  dlls/rsabase/Makefile.in, dlls/rsabase/tests/Makefile.in,
	  dlls/rsaenh/Makefile.in, dlls/rsaenh/tests/Makefile.in,
	  dlls/sane.ds/Makefile.in, dlls/secur32/Makefile.in,
	  dlls/secur32/tests/Makefile.in, dlls/security/Makefile.in,
	  dlls/sensapi/Makefile.in, dlls/serialui/Makefile.in,
	  dlls/setupapi/Makefile.in, dlls/setupapi/tests/Makefile.in,
	  dlls/sfc/Makefile.in, dlls/shdocvw/Makefile.in,
	  dlls/shdocvw/tests/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shell32/tests/Makefile.in, dlls/shfolder/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/shlwapi/tests/Makefile.in,
	  dlls/snmpapi/Makefile.in, dlls/spoolss/Makefile.in,
	  dlls/stdole2.tlb/Makefile.in, dlls/stdole32.tlb/Makefile.in,
	  dlls/sti/Makefile.in, dlls/strmiids/Makefile.in,
	  dlls/svrapi/Makefile.in, dlls/tapi32/Makefile.in,
	  dlls/twain_32/Makefile.in, dlls/unicows/Makefile.in,
	  dlls/url/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/urlmon/tests/Makefile.in, dlls/user/Makefile.in,
	  dlls/user/tests/Makefile.in, dlls/userenv/Makefile.in,
	  dlls/usp10/Makefile.in, dlls/usp10/tests/Makefile.in,
	  dlls/uuid/Makefile.in, dlls/uxtheme/Makefile.in,
	  dlls/uxtheme/tests/Makefile.in, dlls/vdhcp.vxd/Makefile.in,
	  dlls/vdmdbg/Makefile.in, dlls/version/Makefile.in,
	  dlls/version/tests/Makefile.in, dlls/vmm.vxd/Makefile.in,
	  dlls/vnbt.vxd/Makefile.in, dlls/vnetbios.vxd/Makefile.in,
	  dlls/vtdapi.vxd/Makefile.in, dlls/vwin32.vxd/Makefile.in,
	  dlls/w32skrnl/Makefile.in, dlls/winecrt0/Makefile.in,
	  dlls/wined3d/Makefile.in, dlls/winedos/Makefile.in,
	  dlls/winemp3.acm/Makefile.in, dlls/wineps.drv/Makefile.in,
	  dlls/winex11.drv/Makefile.in, dlls/wininet/Makefile.in,
	  dlls/wininet/tests/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/tests/Makefile.in,
	  dlls/winmm/winealsa/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/wineaudioio/Makefile.in,
	  dlls/winmm/winecoreaudio/Makefile.in, dlls/winmm/wineesd/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winnls32/Makefile.in,
	  dlls/winspool.drv/Makefile.in, dlls/winspool.drv/tests/Makefile.in,
	  dlls/wintab32/Makefile.in, dlls/wintrust/Makefile.in,
	  dlls/wintrust/tests/Makefile.in, dlls/wldap32/Makefile.in,
	  dlls/wnaspi32/Makefile.in, dlls/wow32/Makefile.in,
	  dlls/ws2_32/Makefile.in, dlls/ws2_32/tests/Makefile.in,
	  dlls/wsock32/Makefile.in, dlls/wtsapi32/Makefile.in,
	  include/Makefile.in, libs/port/Makefile.in, libs/wine/Makefile.in,
	  libs/wpp/Makefile.in, loader/Makefile.in, programs/clock/Makefile.in,
	  programs/cmd/Makefile.in, programs/cmdlgtst/Makefile.in,
	  programs/control/Makefile.in, programs/eject/Makefile.in,
	  programs/expand/Makefile.in, programs/explorer/Makefile.in,
	  programs/hh/Makefile.in, programs/icinfo/Makefile.in,
	  programs/iexplore/Makefile.in, programs/msiexec/Makefile.in,
	  programs/notepad/Makefile.in, programs/oleview/Makefile.in,
	  programs/progman/Makefile.in, programs/regedit/Makefile.in,
	  programs/regsvr32/Makefile.in, programs/rpcss/Makefile.in,
	  programs/rundll32/Makefile.in, programs/start/Makefile.in,
	  programs/taskmgr/Makefile.in, programs/uninstaller/Makefile.in,
	  programs/view/Makefile.in, programs/wineboot/Makefile.in,
	  programs/winebrowser/Makefile.in, programs/winecfg/Makefile.in,
	  programs/wineconsole/Makefile.in, programs/winedbg/Makefile.in,
	  programs/winefile/Makefile.in, programs/winemenubuilder/Makefile.in,
	  programs/winemine/Makefile.in, programs/winepath/Makefile.in,
	  programs/winetest/Makefile.in, programs/winevdm/Makefile.in,
	  programs/winhelp/Makefile.in, programs/winver/Makefile.in,
	  programs/wordpad/Makefile.in, server/Makefile.in, tools/Makefile.in,
	  tools/widl/Makefile.in, tools/winebuild/Makefile.in,
	  tools/winedump/Makefile.in, tools/winegcc/Makefile.in,
	  tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: Generate the dependencies line to avoid some code duplication.

2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.21.

----------------------------------------------------------------
2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* programs/msiexec/msiexec.c:
	msiexec: Ignore failure to create the service if it already exists.

2006-09-13  Marcus Meissner <marcus@beiboot.franken.de>

	* documentation/README.de:
	README.de: Updated comment on support libraries to match English.

	* documentation/README.de:
	README.de: Mention kernel 2.6.

2006-09-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Add CryptSIPAddProvider calls to the registration.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Fix a couple of test cases for MsiDatabaseIsTablePersistent.

2006-09-13  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Create/destroy hook thread from DirectInput.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test for ALTER TABLE.

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Fix database creation.

	* dlls/msi/Makefile.in, dlls/msi/action.c, dlls/msi/action.h,
	  dlls/msi/font.c:
	msi: Split the font registration code out into a separate file.

2006-09-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dxdiagn/provider.c:
	dxdiagn: Cast-qual warning fix.

2006-09-13  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Fix init_system_links() for non-localized font name.

	* dlls/gdi/freetype.c:
	gdi32: Fix wrong break statement use.

2006-09-12  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wined3d/directx.c:
	wined3d: Avoid crashing when renderer returns no name.

2006-09-12  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add more join tests.

	* dlls/msi/dialog.c:
	msi: Show the available drives in the VolumeCostList control.

2006-09-12  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ole32/stg_stream.c:
	ole32: Silence a compiler warning about unused variable in StgStreamImpl_Write().

2006-09-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/cabinet/tests/extract.c, dlls/msi/tests/package.c,
	  dlls/shell32/tests/shlfileop.c, include/wine/test.h:
	tests: Moved some compatibility defines to wine/test.h.

2006-09-12  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/styletrack.c:
	dmstyle: Print 64bit integers with wine_dbgstr_longlong.

2006-09-12  Marcus Meissner <marcus@beiboot.franken.de>

	* README:
	README: Update for kernel 2.6.

2006-09-12  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/mshtml/rsrc.rc:
	mshtml: Add version resource.

	* dlls/shdocvw/version.rc:
	shdocvw: Update version info.

2006-09-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Use the return values of the registration functions.

	* dlls/wintrust/register.c:
	wintrust: We do care about errors during this kind of registration.

	* dlls/wintrust/register.c:
	wintrust: Simplify registration by using WintrustAddDefaultForUsage.

2006-09-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/tests/db.c:
	msi: Delete databases we create but never commit.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix left-over reference to kernel directory.

2006-09-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c:
	wintrust: Implemented WintrustAddDefaultForUsage.

	* dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c:
	wintrust: Added tests for WintrustAddDefaultForUsage.

	* dlls/wintrust/register.c, dlls/wintrust/wintrust.spec,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustAddDefaultForUsage.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/secur32/dispatcher.c:
	secur32: Use _exit instead of exit in child process to avoid flushing things
	twice.

	* dlls/crypt32/tests/encode.c:
	crypt32: Comment out an unreliable test.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fixed and simplified the opengl extension registration.

2006-09-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/opengl32/wgl_ext.h:
	opengl32: Remove unused code.

2006-09-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec, include/wine/wgl.h:
	winex11.drv: Move WGL extension code to winex11.drv.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/kernel/Makefile.in, dlls/kernel/actctx.c, dlls/kernel/atom.c,
	  dlls/kernel/atom16.c, dlls/kernel/change.c, dlls/kernel/comm.c,
	  dlls/kernel/comm.drv.spec, dlls/kernel/computername.c,
	  dlls/kernel/console.c, dlls/kernel/console_private.h,
	  dlls/kernel/cpu.c, dlls/kernel/debugger.c, dlls/kernel/dosmem.c,
	  dlls/kernel/editline.c, dlls/kernel/environ.c, dlls/kernel/error16.c,
	  dlls/kernel/except.c, dlls/kernel/fiber.c, dlls/kernel/file.c,
	  dlls/kernel/file16.c, dlls/kernel/format_msg.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/instr.c,
	  dlls/kernel/kernel.rc, dlls/kernel/kernel16.c,
	  dlls/kernel/kernel16_private.h, dlls/kernel/kernel32.spec,
	  dlls/kernel/kernel_main.c, dlls/kernel/kernel_private.h,
	  dlls/kernel/krnl386.exe.spec, dlls/kernel/lcformat.c,
	  dlls/kernel/local16.c, dlls/kernel/locale.c,
	  dlls/kernel/locale_rc.rc, dlls/kernel/lzexpand.c,
	  dlls/kernel/messages/winerr_enu.mc, dlls/kernel/module.c,
	  dlls/kernel/ne_module.c, dlls/kernel/ne_segment.c,
	  dlls/kernel/nls/afk.nls, dlls/kernel/nls/ara.nls,
	  dlls/kernel/nls/arb.nls, dlls/kernel/nls/are.nls,
	  dlls/kernel/nls/arg.nls, dlls/kernel/nls/arh.nls,
	  dlls/kernel/nls/ari.nls, dlls/kernel/nls/arj.nls,
	  dlls/kernel/nls/ark.nls, dlls/kernel/nls/arl.nls,
	  dlls/kernel/nls/arm.nls, dlls/kernel/nls/aro.nls,
	  dlls/kernel/nls/arq.nls, dlls/kernel/nls/ars.nls,
	  dlls/kernel/nls/art.nls, dlls/kernel/nls/aru.nls,
	  dlls/kernel/nls/ary.nls, dlls/kernel/nls/aze.nls,
	  dlls/kernel/nls/azl.nls, dlls/kernel/nls/bel.nls,
	  dlls/kernel/nls/bgr.nls, dlls/kernel/nls/brf.nls,
	  dlls/kernel/nls/cat.nls, dlls/kernel/nls/chs.nls,
	  dlls/kernel/nls/cht.nls, dlls/kernel/nls/cor.nls,
	  dlls/kernel/nls/csy.nls, dlls/kernel/nls/cym.nls,
	  dlls/kernel/nls/dan.nls, dlls/kernel/nls/dea.nls,
	  dlls/kernel/nls/dec.nls, dlls/kernel/nls/del.nls,
	  dlls/kernel/nls/des.nls, dlls/kernel/nls/deu.nls,
	  dlls/kernel/nls/div.nls, dlls/kernel/nls/ell.nls,
	  dlls/kernel/nls/ena.nls, dlls/kernel/nls/enb.nls,
	  dlls/kernel/nls/enc.nls, dlls/kernel/nls/eng.nls,
	  dlls/kernel/nls/eni.nls, dlls/kernel/nls/enj.nls,
	  dlls/kernel/nls/enl.nls, dlls/kernel/nls/enp.nls,
	  dlls/kernel/nls/ens.nls, dlls/kernel/nls/ent.nls,
	  dlls/kernel/nls/enu.nls, dlls/kernel/nls/enw.nls,
	  dlls/kernel/nls/enz.nls, dlls/kernel/nls/eox.nls,
	  dlls/kernel/nls/esa.nls, dlls/kernel/nls/esb.nls,
	  dlls/kernel/nls/esc.nls, dlls/kernel/nls/esd.nls,
	  dlls/kernel/nls/ese.nls, dlls/kernel/nls/esf.nls,
	  dlls/kernel/nls/esg.nls, dlls/kernel/nls/esh.nls,
	  dlls/kernel/nls/esi.nls, dlls/kernel/nls/esl.nls,
	  dlls/kernel/nls/esm.nls, dlls/kernel/nls/esn.nls,
	  dlls/kernel/nls/eso.nls, dlls/kernel/nls/esp.nls,
	  dlls/kernel/nls/esr.nls, dlls/kernel/nls/ess.nls,
	  dlls/kernel/nls/esu.nls, dlls/kernel/nls/esv.nls,
	  dlls/kernel/nls/esy.nls, dlls/kernel/nls/esz.nls,
	  dlls/kernel/nls/eti.nls, dlls/kernel/nls/euq.nls,
	  dlls/kernel/nls/far.nls, dlls/kernel/nls/fin.nls,
	  dlls/kernel/nls/fos.nls, dlls/kernel/nls/fra.nls,
	  dlls/kernel/nls/frb.nls, dlls/kernel/nls/frc.nls,
	  dlls/kernel/nls/frl.nls, dlls/kernel/nls/frm.nls,
	  dlls/kernel/nls/frs.nls, dlls/kernel/nls/gae.nls,
	  dlls/kernel/nls/gdh.nls, dlls/kernel/nls/gdv.nls,
	  dlls/kernel/nls/glc.nls, dlls/kernel/nls/guj.nls,
	  dlls/kernel/nls/heb.nls, dlls/kernel/nls/hin.nls,
	  dlls/kernel/nls/hrv.nls, dlls/kernel/nls/hun.nls,
	  dlls/kernel/nls/hye.nls, dlls/kernel/nls/ind.nls,
	  dlls/kernel/nls/isl.nls, dlls/kernel/nls/ita.nls,
	  dlls/kernel/nls/its.nls, dlls/kernel/nls/jpn.nls,
	  dlls/kernel/nls/kan.nls, dlls/kernel/nls/kat.nls,
	  dlls/kernel/nls/kkz.nls, dlls/kernel/nls/knk.nls,
	  dlls/kernel/nls/kor.nls, dlls/kernel/nls/kyr.nls,
	  dlls/kernel/nls/lth.nls, dlls/kernel/nls/lvi.nls,
	  dlls/kernel/nls/mar.nls, dlls/kernel/nls/mki.nls,
	  dlls/kernel/nls/mon.nls, dlls/kernel/nls/msb.nls,
	  dlls/kernel/nls/msl.nls, dlls/kernel/nls/nlb.nls,
	  dlls/kernel/nls/nld.nls, dlls/kernel/nls/nls.nls,
	  dlls/kernel/nls/non.nls, dlls/kernel/nls/nor.nls,
	  dlls/kernel/nls/pan.nls, dlls/kernel/nls/plk.nls,
	  dlls/kernel/nls/ptb.nls, dlls/kernel/nls/ptg.nls,
	  dlls/kernel/nls/rom.nls, dlls/kernel/nls/rus.nls,
	  dlls/kernel/nls/san.nls, dlls/kernel/nls/sky.nls,
	  dlls/kernel/nls/slv.nls, dlls/kernel/nls/sqi.nls,
	  dlls/kernel/nls/srb.nls, dlls/kernel/nls/srl.nls,
	  dlls/kernel/nls/sve.nls, dlls/kernel/nls/svf.nls,
	  dlls/kernel/nls/swk.nls, dlls/kernel/nls/syr.nls,
	  dlls/kernel/nls/tam.nls, dlls/kernel/nls/tel.nls,
	  dlls/kernel/nls/tha.nls, dlls/kernel/nls/trk.nls,
	  dlls/kernel/nls/ttt.nls, dlls/kernel/nls/ukr.nls,
	  dlls/kernel/nls/urd.nls, dlls/kernel/nls/uzb.nls,
	  dlls/kernel/nls/uzl.nls, dlls/kernel/nls/vit.nls,
	  dlls/kernel/nls/wal.nls, dlls/kernel/nls/zhh.nls,
	  dlls/kernel/nls/zhi.nls, dlls/kernel/nls/zhm.nls,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/powermgnt.c,
	  dlls/kernel/process.c, dlls/kernel/profile.c, dlls/kernel/pthread.c,
	  dlls/kernel/registry16.c, dlls/kernel/relay16.c,
	  dlls/kernel/resource.c, dlls/kernel/resource16.c,
	  dlls/kernel/selector.c, dlls/kernel/snoop16.c, dlls/kernel/stress.c,
	  dlls/kernel/stress.spec, dlls/kernel/string.c, dlls/kernel/sync.c,
	  dlls/kernel/syslevel.c, dlls/kernel/system.c,
	  dlls/kernel/system.drv.spec, dlls/kernel/tape.c, dlls/kernel/task.c,
	  dlls/kernel/tests/Makefile.in, dlls/kernel/tests/alloc.c,
	  dlls/kernel/tests/atom.c, dlls/kernel/tests/change.c,
	  dlls/kernel/tests/codepage.c, dlls/kernel/tests/comm.c,
	  dlls/kernel/tests/console.c, dlls/kernel/tests/directory.c,
	  dlls/kernel/tests/drive.c, dlls/kernel/tests/environ.c,
	  dlls/kernel/tests/file.c, dlls/kernel/tests/format_msg.c,
	  dlls/kernel/tests/generated.c, dlls/kernel/tests/heap.c,
	  dlls/kernel/tests/locale.c, dlls/kernel/tests/mailslot.c,
	  dlls/kernel/tests/module.c, dlls/kernel/tests/path.c,
	  dlls/kernel/tests/pipe.c, dlls/kernel/tests/process.c,
	  dlls/kernel/tests/profile.c, dlls/kernel/tests/sync.c,
	  dlls/kernel/tests/thread.c, dlls/kernel/tests/time.c,
	  dlls/kernel/tests/timer.c, dlls/kernel/tests/toolhelp.c,
	  dlls/kernel/tests/version.c, dlls/kernel/tests/virtual.c,
	  dlls/kernel/tests/volume.c, dlls/kernel/thread.c,
	  dlls/kernel/thunk.c, dlls/kernel/time.c, dlls/kernel/toolhelp.c,
	  dlls/kernel/toolhelp.h, dlls/kernel/toolhelp.spec,
	  dlls/kernel/toolhelp16.c, dlls/kernel/utthunk.c,
	  dlls/kernel/version.c, dlls/kernel/version.rc,
	  dlls/kernel/version16.rc, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/kernel/vxd.c, dlls/kernel/win87em.c,
	  dlls/kernel/win87em.spec, dlls/kernel/windebug.c,
	  dlls/kernel/windebug.spec, dlls/kernel/wowthunk.c,
	  dlls/kernel32/Makefile.in, dlls/kernel32/actctx.c,
	  dlls/kernel32/atom.c, dlls/kernel32/atom16.c, dlls/kernel32/change.c,
	  dlls/kernel32/comm.c, dlls/kernel32/comm.drv.spec,
	  dlls/kernel32/computername.c, dlls/kernel32/console.c,
	  dlls/kernel32/console_private.h, dlls/kernel32/cpu.c,
	  dlls/kernel32/debugger.c, dlls/kernel32/dosmem.c,
	  dlls/kernel32/editline.c, dlls/kernel32/environ.c,
	  dlls/kernel32/error16.c, dlls/kernel32/except.c,
	  dlls/kernel32/fiber.c, dlls/kernel32/file.c, dlls/kernel32/file16.c,
	  dlls/kernel32/format_msg.c, dlls/kernel32/global16.c,
	  dlls/kernel32/heap.c, dlls/kernel32/instr.c, dlls/kernel32/kernel.rc,
	  dlls/kernel32/kernel16.c, dlls/kernel32/kernel16_private.h,
	  dlls/kernel32/kernel32.spec, dlls/kernel32/kernel_main.c,
	  dlls/kernel32/kernel_private.h, dlls/kernel32/krnl386.exe.spec,
	  dlls/kernel32/lcformat.c, dlls/kernel32/local16.c,
	  dlls/kernel32/locale.c, dlls/kernel32/locale_rc.rc,
	  dlls/kernel32/lzexpand.c, dlls/kernel32/module.c,
	  dlls/kernel32/ne_module.c, dlls/kernel32/ne_segment.c,
	  dlls/kernel32/nls/afk.nls, dlls/kernel32/nls/ara.nls,
	  dlls/kernel32/nls/arb.nls, dlls/kernel32/nls/are.nls,
	  dlls/kernel32/nls/arg.nls, dlls/kernel32/nls/arh.nls,
	  dlls/kernel32/nls/ari.nls, dlls/kernel32/nls/arj.nls,
	  dlls/kernel32/nls/ark.nls, dlls/kernel32/nls/arl.nls,
	  dlls/kernel32/nls/arm.nls, dlls/kernel32/nls/aro.nls,
	  dlls/kernel32/nls/arq.nls, dlls/kernel32/nls/ars.nls,
	  dlls/kernel32/nls/art.nls, dlls/kernel32/nls/aru.nls,
	  dlls/kernel32/nls/ary.nls, dlls/kernel32/nls/aze.nls,
	  dlls/kernel32/nls/azl.nls, dlls/kernel32/nls/bel.nls,
	  dlls/kernel32/nls/bgr.nls, dlls/kernel32/nls/brf.nls,
	  dlls/kernel32/nls/cat.nls, dlls/kernel32/nls/chs.nls,
	  dlls/kernel32/nls/cht.nls, dlls/kernel32/nls/cor.nls,
	  dlls/kernel32/nls/csy.nls, dlls/kernel32/nls/cym.nls,
	  dlls/kernel32/nls/dan.nls, dlls/kernel32/nls/dea.nls,
	  dlls/kernel32/nls/dec.nls, dlls/kernel32/nls/del.nls,
	  dlls/kernel32/nls/des.nls, dlls/kernel32/nls/deu.nls,
	  dlls/kernel32/nls/div.nls, dlls/kernel32/nls/ell.nls,
	  dlls/kernel32/nls/ena.nls, dlls/kernel32/nls/enb.nls,
	  dlls/kernel32/nls/enc.nls, dlls/kernel32/nls/eng.nls,
	  dlls/kernel32/nls/eni.nls, dlls/kernel32/nls/enj.nls,
	  dlls/kernel32/nls/enl.nls, dlls/kernel32/nls/enp.nls,
	  dlls/kernel32/nls/ens.nls, dlls/kernel32/nls/ent.nls,
	  dlls/kernel32/nls/enu.nls, dlls/kernel32/nls/enw.nls,
	  dlls/kernel32/nls/enz.nls, dlls/kernel32/nls/eox.nls,
	  dlls/kernel32/nls/esa.nls, dlls/kernel32/nls/esb.nls,
	  dlls/kernel32/nls/esc.nls, dlls/kernel32/nls/esd.nls,
	  dlls/kernel32/nls/ese.nls, dlls/kernel32/nls/esf.nls,
	  dlls/kernel32/nls/esg.nls, dlls/kernel32/nls/esh.nls,
	  dlls/kernel32/nls/esi.nls, dlls/kernel32/nls/esl.nls,
	  dlls/kernel32/nls/esm.nls, dlls/kernel32/nls/esn.nls,
	  dlls/kernel32/nls/eso.nls, dlls/kernel32/nls/esp.nls,
	  dlls/kernel32/nls/esr.nls, dlls/kernel32/nls/ess.nls,
	  dlls/kernel32/nls/esu.nls, dlls/kernel32/nls/esv.nls,
	  dlls/kernel32/nls/esy.nls, dlls/kernel32/nls/esz.nls,
	  dlls/kernel32/nls/eti.nls, dlls/kernel32/nls/euq.nls,
	  dlls/kernel32/nls/far.nls, dlls/kernel32/nls/fin.nls,
	  dlls/kernel32/nls/fos.nls, dlls/kernel32/nls/fra.nls,
	  dlls/kernel32/nls/frb.nls, dlls/kernel32/nls/frc.nls,
	  dlls/kernel32/nls/frl.nls, dlls/kernel32/nls/frm.nls,
	  dlls/kernel32/nls/frs.nls, dlls/kernel32/nls/gae.nls,
	  dlls/kernel32/nls/gdh.nls, dlls/kernel32/nls/gdv.nls,
	  dlls/kernel32/nls/glc.nls, dlls/kernel32/nls/guj.nls,
	  dlls/kernel32/nls/heb.nls, dlls/kernel32/nls/hin.nls,
	  dlls/kernel32/nls/hrv.nls, dlls/kernel32/nls/hun.nls,
	  dlls/kernel32/nls/hye.nls, dlls/kernel32/nls/ind.nls,
	  dlls/kernel32/nls/isl.nls, dlls/kernel32/nls/ita.nls,
	  dlls/kernel32/nls/its.nls, dlls/kernel32/nls/jpn.nls,
	  dlls/kernel32/nls/kan.nls, dlls/kernel32/nls/kat.nls,
	  dlls/kernel32/nls/kkz.nls, dlls/kernel32/nls/knk.nls,
	  dlls/kernel32/nls/kor.nls, dlls/kernel32/nls/kyr.nls,
	  dlls/kernel32/nls/lth.nls, dlls/kernel32/nls/lvi.nls,
	  dlls/kernel32/nls/mar.nls, dlls/kernel32/nls/mki.nls,
	  dlls/kernel32/nls/mon.nls, dlls/kernel32/nls/msb.nls,
	  dlls/kernel32/nls/msl.nls, dlls/kernel32/nls/nlb.nls,
	  dlls/kernel32/nls/nld.nls, dlls/kernel32/nls/nls.nls,
	  dlls/kernel32/nls/non.nls, dlls/kernel32/nls/nor.nls,
	  dlls/kernel32/nls/pan.nls, dlls/kernel32/nls/plk.nls,
	  dlls/kernel32/nls/ptb.nls, dlls/kernel32/nls/ptg.nls,
	  dlls/kernel32/nls/rom.nls, dlls/kernel32/nls/rus.nls,
	  dlls/kernel32/nls/san.nls, dlls/kernel32/nls/sky.nls,
	  dlls/kernel32/nls/slv.nls, dlls/kernel32/nls/sqi.nls,
	  dlls/kernel32/nls/srb.nls, dlls/kernel32/nls/srl.nls,
	  dlls/kernel32/nls/sve.nls, dlls/kernel32/nls/svf.nls,
	  dlls/kernel32/nls/swk.nls, dlls/kernel32/nls/syr.nls,
	  dlls/kernel32/nls/tam.nls, dlls/kernel32/nls/tel.nls,
	  dlls/kernel32/nls/tha.nls, dlls/kernel32/nls/trk.nls,
	  dlls/kernel32/nls/ttt.nls, dlls/kernel32/nls/ukr.nls,
	  dlls/kernel32/nls/urd.nls, dlls/kernel32/nls/uzb.nls,
	  dlls/kernel32/nls/uzl.nls, dlls/kernel32/nls/vit.nls,
	  dlls/kernel32/nls/wal.nls, dlls/kernel32/nls/winerr_enu.mc,
	  dlls/kernel32/nls/zhh.nls, dlls/kernel32/nls/zhi.nls,
	  dlls/kernel32/nls/zhm.nls, dlls/kernel32/oldconfig.c,
	  dlls/kernel32/path.c, dlls/kernel32/powermgnt.c,
	  dlls/kernel32/process.c, dlls/kernel32/profile.c,
	  dlls/kernel32/pthread.c, dlls/kernel32/registry16.c,
	  dlls/kernel32/relay16.c, dlls/kernel32/resource.c,
	  dlls/kernel32/resource16.c, dlls/kernel32/selector.c,
	  dlls/kernel32/snoop16.c, dlls/kernel32/stress.c,
	  dlls/kernel32/stress.spec, dlls/kernel32/string.c,
	  dlls/kernel32/sync.c, dlls/kernel32/syslevel.c,
	  dlls/kernel32/system.c, dlls/kernel32/system.drv.spec,
	  dlls/kernel32/tape.c, dlls/kernel32/task.c,
	  dlls/kernel32/tests/Makefile.in, dlls/kernel32/tests/alloc.c,
	  dlls/kernel32/tests/atom.c, dlls/kernel32/tests/change.c,
	  dlls/kernel32/tests/codepage.c, dlls/kernel32/tests/comm.c,
	  dlls/kernel32/tests/console.c, dlls/kernel32/tests/directory.c,
	  dlls/kernel32/tests/drive.c, dlls/kernel32/tests/environ.c,
	  dlls/kernel32/tests/file.c, dlls/kernel32/tests/format_msg.c,
	  dlls/kernel32/tests/generated.c, dlls/kernel32/tests/heap.c,
	  dlls/kernel32/tests/locale.c, dlls/kernel32/tests/mailslot.c,
	  dlls/kernel32/tests/module.c, dlls/kernel32/tests/path.c,
	  dlls/kernel32/tests/pipe.c, dlls/kernel32/tests/process.c,
	  dlls/kernel32/tests/profile.c, dlls/kernel32/tests/sync.c,
	  dlls/kernel32/tests/thread.c, dlls/kernel32/tests/time.c,
	  dlls/kernel32/tests/timer.c, dlls/kernel32/tests/toolhelp.c,
	  dlls/kernel32/tests/version.c, dlls/kernel32/tests/virtual.c,
	  dlls/kernel32/tests/volume.c, dlls/kernel32/thread.c,
	  dlls/kernel32/thunk.c, dlls/kernel32/time.c,
	  dlls/kernel32/toolhelp.c, dlls/kernel32/toolhelp.h,
	  dlls/kernel32/toolhelp.spec, dlls/kernel32/toolhelp16.c,
	  dlls/kernel32/utthunk.c, dlls/kernel32/version.c,
	  dlls/kernel32/version.rc, dlls/kernel32/version16.rc,
	  dlls/kernel32/virtual.c, dlls/kernel32/volume.c, dlls/kernel32/vxd.c,
	  dlls/kernel32/win87em.c, dlls/kernel32/win87em.spec,
	  dlls/kernel32/windebug.c, dlls/kernel32/windebug.spec,
	  dlls/kernel32/wowthunk.c, programs/winetest/Makefile.in,
	  tools/make_makefiles:
	kernel32: Renamed the kernel directory to kernel32.
	Also get rid of the kernel/messages subdirectory.

	* libs/wine/config.c:
	libwine: Avoid a compiler warning on Solaris.

2006-09-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add some more tests for MsiOpenDatabase.

2006-09-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/oleaut32/hash.c:
	oleaut32: Replace a loop with a simple computation.

	* tools/widl/hash.c:
	widl: Replace a loop with a simple computation.

2006-09-11  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Remove some TRACE's as they are now covered by WintrustAddActionID.

	* dlls/wintrust/register.c:
	wintrust: Removed stray backslash.

	* dlls/wintrust/register.c:
	wintrust: Typo in TRACE.

	* dlls/wintrust/register.c:
	wintrust: Simplify registrations by using WintrustAddActionID.

2006-09-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/classes.c:
	msi: Don't try to register a class if a COM server file is not provided.

2006-09-11  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c:
	dmsynth: Print 64bit integers with wine_dbgstr_longlong.

2006-09-11  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarIdiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarIdiv.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarDiv.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarDiv.

2006-09-11  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Cleanup the surface loading code a bit.
	- Separate allocation and uploading of textures.
	- Move common code for allocating, uploading and downloading textures
	into separate functions.
	- Set the correct format and type for DXT textures.

	* dlls/d3d8/device.c:
	d3d8: Free the shader handle table.

2006-09-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Remove the IOKit code and reuse the FreeBSD implementation for MacOS.
	FILE_GetDeviceInfo needs to be efficient, and IOKit is much too slow
	to be used here.

	* tools/wrc/newstruc.c, tools/wrc/parser.h, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/utils.c, tools/wrc/utils.h,
	  tools/wrc/wrc.c:
	wrc: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/utils.h,
	  tools/wmc/wmc.c, tools/wmc/wmc.h:
	wmc: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* tools/widl/header.c, tools/widl/parser.h, tools/widl/parser.l,
	  tools/widl/parser.y, tools/widl/proxy.c, tools/widl/utils.c,
	  tools/widl/utils.h, tools/widl/widl.c:
	widl: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* libs/wpp/ppl.l, libs/wpp/ppy.y, libs/wpp/preproc.c, libs/wpp/wpp.c,
	  libs/wpp/wpp_private.h:
	wpp: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	winedbg: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

2006-09-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/cond.y, dlls/msi/sql.y:
	msi: Change the prefix on bison-generated names to avoid the name-prefix
	directive.

	* Make.rules.in, programs/winedbg/dbg.y, tools/widl/parser.y,
	  tools/wmc/mcy.y, tools/wrc/parser.y:
	Make.rules: Set the default prefix for bison files from the file basename.

	* Make.rules.in, dlls/msi/Makefile.in, libs/wpp/Makefile.in,
	  programs/winedbg/Makefile.in, tools/widl/Makefile.in,
	  tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: List bison dependencies explicitly for parallel makes, since older
	bisons don't support --defines.

2006-08-29  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/gdi/freetype.c:
	gdi32: Fix logical error of italic, bold determination.

	* dlls/gdi/gdiobj.c:
	gdi32: Fix DefaultGuiFont name string for Korean Charset.

2006-09-11  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac, dlls/Makefile.in, dlls/localspl/Makefile.in,
	  dlls/localspl/localspl.spec, dlls/localspl/localspl_main.c:
	localspl: Add minimal localspl.dll.

2006-09-10  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h:
	dinput: Move hook_thread from device to DirectInput.

2006-09-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/cpu.c:
	kernel: Better CPU detection on MacOS.

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Avoid compile errors in the non-OpenGL case.

	* Makefile.in:
	Makefile: Don't build all the tools before make depend, only build makedep
	itself.

	* dlls/Maketest.rules.in:
	Maketest.rules: Don't require testlist.c to be built before make depend.

	* dlls/shell32/Makefile.in:
	shell32: Don't build authors.c for make depend, it has no dependencies anyway.

	* programs/winetest/.gitignore, programs/winetest/Makefile.in,
	  programs/winetest/dist.rc, programs/winetest/maketest,
	  programs/winetest/winetest.rc, tools/make_makefiles:
	winetest: Generate the list of test resources in make_makefiles.
	Only include test revision information in the distributed binary.

	* programs/winetest/main.c, programs/winetest/maketest,
	  programs/winetest/util.c, programs/winetest/winetest.h:
	winetest: Store the test name as the resource name instead of in a separate
	string table.

2006-09-11  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Add a check for a condition where a stream has an invalid size
	and so there aren't enough blocks in the chain to write data into.

	* dlls/ole32/storage32.c:
	ole32: Remove some assertions in the stuctured storage code by
	returning error codes to the caller and by handling the error
	condition.

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Convert the *_{Read,Write}At structured storage functions to
	return HRESULTs instead of BOOLs so that errors can be properly
	propagated from lower levels.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the IStream_SetSize function for HGLOBAL streams to ignore HighPart.

	* dlls/ole32/tests/storage32.c:
	ole32: Make an ok message match the name of the function it is testing.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the return value of the HGLOBAL stream IStream_LockRegion function.

	* dlls/ole32/hglobalstream.c, dlls/ole32/tests/hglobalstream.c:
	ole32: Fix the HGLOBAL stream IStream_Read function to return S_OK even if
	not all of the requested bytes were available.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/hglobalstream.c:
	ole32: Add tests for the stream object returned by CreateStreamOnHGlobal.

2006-09-11  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Change the name of the strings to not confuse them with the functions
	that are present in wintrust.

	* dlls/wintrust/register.c:
	wintrust: Use the return value of CryptRegisterOIDFunction.

2006-09-01  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/tests/font.c:
	gdi: Fix test for GetGlyphIndicesW on non Unicode systems.

2006-08-30  James Liggett <jrliggett@cox.net>

	* programs/explorer/Makefile.in, programs/explorer/systray.c:
	explorer: Add support for tooltips for system tray icons.
	Based on the original systray implementation by Kai Morich
	<kai.morich@bigfoot.de>.

2006-08-29  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Import glx makecurrent/wglsharelists.

	* dlls/opengl32/wgl.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/winex11.drv.spec:
	winex11.drv: Import glx context code.

2006-09-10  Marcus Meissner <marcus@jet.franken.de>

	* dlls/cabinet/fci.c, dlls/gdi/bidi.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gphoto2.ds/ui.c, dlls/imagehlp/imagehlp_main.c,
	  dlls/kernel/atom.c, dlls/kernel/kernel16.c, dlls/mscms/icc.c,
	  dlls/msi/tokenize.c, dlls/msvcrt/ctype.c, dlls/netapi32/browsr.c,
	  dlls/netapi32/nbnamecache.c, dlls/ntdll/wcstring.c,
	  dlls/rsaenh/implglue.c, dlls/user/driver.c, dlls/user/lstr.c,
	  dlls/uxtheme/stylemap.c, dlls/wineps.drv/encode.c,
	  dlls/winex11.drv/clipping.c, dlls/winex11.drv/codepage.c,
	  dlls/winspool.drv/wspool.c, dlls/wsock32/protocol.c:
	Removes all unnecessary WINE_DEFAULT_DEBUG_CHANNEL and respective wine/debug.h
	includes.

2006-09-10  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dmusic/buffer.c, dlls/dmusic/clock.c, dlls/dmusic/dmusic_main.c:
	dmusic: Print 64bit integers with wine_dbgstr_longlong.

2006-09-10  Detlef Riekenberg <wine.dev@web.de>

	* programs/taskmgr/trayicon.c:
	taskmgr: Remove dead code in trayicon.c (Coverity).

	* dlls/winspool.drv/tests/info.c:
	winspool: String cleanup in the tests.

2006-09-10  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d8/d3d8.spec, dlls/d3d8/d3d8_main.c, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d8/tests/d3d8_main.c:
	d3d8: Better stub for ValidateVertexShader + tests.

2006-09-08  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c:
	riched20: Rewrite of scrolling and some redrawing code.
	Replaces duplicated scrolling code with re-usable functions.
	Removes excessive boundary checking on scroll code, since that's done
	in the scrollbar control anyways.
	Properly separates repaint calls based on what has changed.
	Send EN_UPDATE and EN_CHANGE at the right places.
	Only call EnsureVisible on changes, not all repaints.

2006-09-07  Francois Gouget <fgouget@free.fr>

	* dlls/wintrust/wintrust_main.c, include/wintrust.h:
	wintrust: In recent SDKs, WinVerifyTrust()'s last parameter is a void pointer.

2006-09-10  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, tools/makedep.c:
	makedep: For generated headers, parse the source idl instead.
	This avoids having to generate all the headers before make depend.

2006-09-08  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shellole.c:
	shell32: Remove the unused shell allocator.

	* dlls/shell32/shellole.c, dlls/shell32/shellord.c:
	shell32: Document the shell32 "mini-COM" functions.

2006-09-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	ddraw: Pass the fullscreen flag to wined3d.

	* dlls/ddraw/ddcomimpl.h, dlls/ddraw/ddraw.c,
	  dlls/ddraw/tests/ddrawmodes.c:
	ddraw: Double buffered primary surfaces can only be created in EXLUSIVE mode.

	* dlls/ddraw/surface.c:
	ddraw: Return DDERR_NOPALETTEATTACHED if no palette is attached.

2006-09-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/computername.c:
	kernel: Remove dead code in computername.c.

2006-09-09  Damjan Jovanovic <dj015@yahoo.com>

	* dlls/setupapi/devinst.c, dlls/setupapi/tests/devinst.c:
	setupapi: Fixed returns values and added a test for SetupDiOpenClassRegKeyExW.

2006-09-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/dswave/dswave_main.c:
	dswave: Print 64bit integers with wine_dbgstr_longlong.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c, dlls/crypt32/tests/main.c:
	crypt32: Fix the adding of pwszIsFunctionName and pwszIsFunctionNameFmt2.

2006-09-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dplayx/dplay.c, dlls/dplayx/name_server.c,
	  dlls/dplayx/name_server.h:
	dplayx: Cast-qual warnings fix.

2006-09-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dnsapi/query.c:
	dnsapi: Cast-qual warnings fix.

2006-09-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/device.c:
	dinput: Cast-qual warnings fix.

	* dlls/ddraw/texture.c:
	ddraw: Cast-qual warning fix.

2006-09-09  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/msvfw32/msvfw32_Fr.rc, programs/clock/Fr.rc,
	  programs/cmdlgtst/Fr.rc, programs/notepad/Fr.rc,
	  programs/progman/Fr.rc, programs/regedit/Fr.rc,
	  programs/taskmgr/Fr.rc, programs/uninstaller/Fr.rc,
	  programs/winefile/Fr.rc, programs/winemine/Fr.rc,
	  programs/winhelp/Fr.rc:
	Assorted French translation improvements.

	* programs/winecfg/Fr.rc:
	winecfg: French translation update.

2006-09-08  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/hhctrl.ocx/Fr.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl: New French translation.

	* dlls/winspool.drv/Fr.rc, dlls/winspool.drv/winspool.rc:
	winspool.drv: New French translation.

	* dlls/mshtml/Fr.rc:
	mshtml: Updated French translation.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Added tests for CryptSIPAddProvider and CryptSIPRemoveProvider.

	* dlls/crypt32/main.c:
	crypt32: Implemented CryptSIPRemoveProvider.

	* dlls/crypt32/main.c:
	crypt32: Add documentation.

2006-09-08  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/tests/metafile.c:
	gdi: Change the metafile.c test to use sprintf instead of snprintf for
	portability.

2006-09-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: An unavailable address for the PE file can cause ERROR_NOT_ENOUGH_MEMORY
	too.

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in,
	  documentation/Makefile.in:
	makefiles: Make sure that all phony targets depend on 'dummy'.

	* dlls/Makedll.rules.in, programs/Makeprog.rules.in:
	makefiles: Avoid empty variables in substitutions, it's broken on BSD make.

	* fonts/Makefile.in:
	fonts: Avoid using the $< make variable in explicit rules.

	* tools/Makefile.in, tools/makedep.c:
	makedep: Support for new naming scheme for lex files.

	* .gitignore, Make.rules.in, dlls/msi/Makefile.in, libs/wpp/Makefile.in,
	  programs/winedbg/Makefile.in, programs/winhelp/Makefile.in,
	  tools/widl/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	makefiles: Add global rules for bison and lex files.
	Also build the .c and .h files separately to allow parallel makes.

	* programs/winedbg/dbg.y:
	winedbg: Allow building without debug support in the parser.

	* tools/wrc/wrc.c:
	wrc: Allow building without debug support in the parser.

	* tools/wmc/wmc.c:
	wmc: Allow building without debug support in the parser.

	* tools/widl/widl.c:
	widl: Allow building without debug support in the parser.

	* programs/winhelp/Makefile.in, programs/winhelp/macro.lex.l:
	winhelp: Specify the lex options directly in the source file.

	* programs/winedbg/Makefile.in, programs/winedbg/debug.l:
	winedbg: Specify the lex options directly in the source file.

	* dlls/msi/Makefile.in, dlls/msi/cond.y, dlls/msi/sql.y:
	msi: Specify the bison name prefix directly in the source file.

	* libs/wpp/Makefile.in, libs/wpp/ppy.y:
	libs/wpp: Specify the bison name prefix directly in the source file.

2006-09-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dbghelp/module.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c:
	dbghelp: Cast-qual warnings fix.

	* dlls/kernel/virtual.c, include/winbase.h:
	kernel: Constify a formal parameter.

2006-09-08  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/oleaut32/Makefile.in,
	  dlls/oleaut32/olepicture.c, dlls/oleaut32/ungif.c,
	  dlls/oleaut32/ungif.h, include/config.h.in:
	oleaut32: Include minimal ungif source to remove dependency on libungif.

2006-09-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/netapi32/apibuf.c, dlls/netapi32/tests/apibuf.c:
	netapi32: Avoid NULL access in NetApiBufferAllocate, with test.

2006-09-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c:
	crypt32: Bail out on registry errors and return the error (if any).

	* dlls/crypt32/main.c:
	crypt32: Add documentation.

	* dlls/crypt32/main.c:
	crypt32: Change the order of writing to the registry.

	* dlls/crypt32/main.c:
	crypt32: Bail out on registry errors and return the error (if any).

	* dlls/crypt32/main.c:
	crypt32: Added some input validation.

2006-09-04  Konstantin Petrov <argentum@office.etersoft.ru>

	* configure, configure.ac, dlls/Makefile.in, dlls/svrapi/Makefile.in,
	  dlls/svrapi/svrapi.spec, dlls/svrapi/svrapi_main.c,
	  include/Makefile.in, include/lmcons.h, include/svrapi.h:
	svrapi: Added a stub svrapi.dll.

2006-09-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Manage loaded monitors in a list.

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool: Minimal load/unload printmonitors; use it to get a test working.

2006-09-02  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/user/sysparams.c:
	user: ChangeDisplaySettings virtual desktop mode handling fix.

2006-09-08  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Register msiexec.

2006-09-07  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarPow.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarPow.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Conformance test for function variant:VarAnd.

	* dlls/oleaut32/variant.c:
	oleaut32: Fixes for function variant:VarAnd.

2006-09-08  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Print 64bit integers as two 32 bit integers.

2006-09-08  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add more tests for temporary columns.

	* dlls/msi/sql.y, dlls/msi/tests/db.c, dlls/msi/tokenize.c:
	msi: Fix the TEMPORARY keyword for columns.

	* dlls/msi/tests/db.c:
	msi: Add a test for MsiDatabaseIsTablePersistent.

	* dlls/msi/msiquery.c, include/msiquery.h:
	msi: Fix the prototype of MsiDatabaseIsTablePersistent to match the SDK.

	* dlls/msi/string.c:
	msi: Increase the size of the string table.

	* dlls/msi/action.c:
	msi: Split code to create a random package name into a separate function.

	* dlls/msi/table.c:
	msi: Use msi_string_lookup_id instead of msi_id2stringW where possible.

2006-09-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/file.c:
	ntdll: attr is never NULL inside NtCreateFile.

2006-09-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/join.c, dlls/msi/tests/db.c:
	msi: Allow non-key columns to be used with the join query.

	* dlls/msi/tests/db.c:
	msi: Add tests for MSI SQL join queries.

2006-09-07  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c, tools/widl/typelib.c, tools/widl/widltypes.h:
	widl: Add more complete pointer handling to write_typeformatstring_var.

2006-09-07  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/crypt.c, dlls/gdi/tests/font.c, dlls/kernel/sync.c,
	  dlls/ole32/tests/compobj.c, dlls/opengl32/wgl.c,
	  dlls/opengl32/wgl_ext.c, dlls/rpcrt4/rpcrt4_main.c,
	  dlls/wined3d/directx.c, dlls/winex11.drv/opengl.c,
	  dlls/wintrust/tests/register.c, dlls/ws2_32/socket.c,
	  programs/view/init.c:
	Assorted spelling fixes.

	* dlls/ntdll/ntdll.spec:
	ntdll: Document a Microsoft spelling mistake so we know it is not to be fixed.

	* dlls/setupapi/setupapi.spec:
	setupapi: Document a Microsoft spelling mistake so we know it is not to be fixed.

	* dlls/tapi32/line.c:
	tapi32: Fix spelling of a local variable.

	* dlls/ole32/stg_stream.c:
	ole32: Fix spelling of a couple of local variables.

	* dlls/shell32/shlmenu.c:
	shell32: Fix spelling of a local variable.

	* dlls/oleaut32/variant.c, dlls/oleaut32/variant.h:
	oleaut32: Fix spelling of VARIANT_NUMBER_CHARS's separator fields.

	* include/ntstatus.h, include/sddl.h:
	include: Document some Microsoft spelling mistakes so we know they are not to
	be fixed.

	* include/shlobj.h:
	shell32: Fix name of a constant.

	* include/mcx.h:
	include: Fix the name of a MODEMSETTINGS field.

	* include/imagehlp.h:
	imagehlp: Fix the name of the ADDRESS_MODE enum.

2006-09-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c:
	advpack: Cast-qual warnings fix.

2006-09-07  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Fix DecryptMessage for the dummy case.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32_priv.h,
	  dlls/secur32/tests/ntlm.c, dlls/secur32/util.c:
	secur32: Fix generation of the session key.

2006-09-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/oid.c:
	crypt32: Don't crash when tracing is on and a numeric identifier is passed.

	* dlls/crypt32/oid.c:
	crypt32: Add some documentation.

2006-09-07  Albert Lee <trisk@jhu.edu>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement and test Script{Apply, Record}DigitSubstitution.

2006-09-06  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac:
	configure.ac: Display a hint when CAPI is not supported.

2006-09-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Added sysctl to make the signal stack per-thread on MacOS.

2006-09-06  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Simplify setting the stencil renderstate.

	* dlls/wininet/ftp.c:
	wininet: Fix fd leak on failure case.

	* dlls/winmm/wineoss/midi.c:
	wineoss: Remove "please report" from a trace.

	* programs/winefile/winefile.c:
	winefile: Fix the display of free disk space in the statusbar.

	* programs/regedit/framewnd.c:
	regedit: Also refresh the listview.

	* dlls/winmm/mci.c, dlls/winmm/tests/Makefile.in, dlls/winmm/tests/mci.c:
	winmm: Prevent NULL dereference in MCI_Close and add testcase for it.

2006-09-02  Hippocrates Sendoukas <hsendoukas@hotmail.com>

	* dlls/riched20/editor.c:
	riched20: WM_CONTEXTMENU fix for custom context menus.

	* dlls/riched20/caret.c:
	riched20: ME_SetSelection -1 to -1 behavior fix.

2006-08-30  James Hawkins <truiken@gmail.com>

	* dlls/crypt32/decode.c:
	crypt32: Simplify CRYPT_AsnDecodeUnicodeNameValueInternal, getting rid of
	a warning.

	* dlls/crypt32/decode.c:
	crypt32: Simplify CRYPT_AsnDecodeNameValueInternal, getting rid of a warning.

2006-09-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/custom.c:
	msi: Store the CustomActionData for deferred custom actions.

	* dlls/msi/dialog.c:
	msi: Add the ability to change directories in the DirectoryList control.

2006-09-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add initial implementation of the DirectoryList control.

	* dlls/msi/dialog.c:
	msi: Load and display the VolumeCostList control's column headers.

2006-08-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c, dlls/msi/msipriv.h:
	msi: Store and use the center point of the dialog window in between dialogs.

	* dlls/msi/dialog.c:
	msi: Verify the path in the PathEdit control.

	* dlls/msi/dialog.c:
	msi: Search for the browse dialog controls by type instead of name.

	* dlls/msi/dialog.c:
	msi: Provide the control to the dialog_update function for the case
	when the control isn't attached to the dialog yet.

2006-08-30  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add more tests for the _Streams table.

2006-09-03  Dan Kegel <dank@kegel.com>

	* configure, configure.ac, dlls/msvcrt/process.c, documentation/PACKAGING,
	  programs/.gitignore, programs/Makefile.in, programs/cmd/Cs.rc,
	  programs/cmd/De.rc, programs/cmd/En.rc, programs/cmd/Es.rc,
	  programs/cmd/Fr.rc, programs/cmd/Ja.rc, programs/cmd/Ko.rc,
	  programs/cmd/Makefile.in, programs/cmd/Nl.rc, programs/cmd/No.rc,
	  programs/cmd/Pl.rc, programs/cmd/Pt.rc, programs/cmd/README,
	  programs/cmd/Ru.rc, programs/cmd/Si.rc, programs/cmd/Tr.rc,
	  programs/cmd/batch.c, programs/cmd/builtins.c,
	  programs/cmd/directory.c, programs/cmd/wcmd.h,
	  programs/cmd/wcmdmain.c, programs/cmd/wcmdrc.rc, programs/make_progs,
	  programs/wcmd/Cs.rc, programs/wcmd/De.rc, programs/wcmd/En.rc,
	  programs/wcmd/Es.rc, programs/wcmd/Fr.rc, programs/wcmd/Ja.rc,
	  programs/wcmd/Ko.rc, programs/wcmd/Makefile.in, programs/wcmd/Nl.rc,
	  programs/wcmd/No.rc, programs/wcmd/Pl.rc, programs/wcmd/Pt.rc,
	  programs/wcmd/README, programs/wcmd/Ru.rc, programs/wcmd/Si.rc,
	  programs/wcmd/Tr.rc, programs/wcmd/batch.c, programs/wcmd/builtins.c,
	  programs/wcmd/directory.c, programs/wcmd/wcmd.h,
	  programs/wcmd/wcmdmain.c, programs/wcmd/wcmdrc.rc, tools/wine.inf:
	programs/wcmd: Rename to programs/cmd.

2006-09-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/static.c:
	user: Use computed icon rectangle if SS_CENTERIMAGE style is set.

2006-09-06  James Hawkins <truiken@gmail.com>

	* tools/winapi/msvcmaker:
	msvcmaker: Remove a reference to libs/unicode in msvcmaker.

	* dlls/msi/tests/format.c:
	msi: Add many more MsiFormatRecord tests.

	* dlls/msi/tests/format.c:
	msi: Fix two MsiFormatRecord tests.

2006-09-05  James Hawkins <truiken@gmail.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Use the TargetPath of a file if the file doesn't exist in MsiFormatRecord.

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Fix creation of the default format in MsiFormatRecord.

	* dlls/msi/tests/format.c, dlls/msi/tests/package.c:
	msi: Add more tests for MsiFormatRecord.

2006-09-05  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Add support for R32F and R16F texture formats.

2006-09-04  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Remove unused field: Surface.textureName.

	* dlls/wined3d/device.c:
	wined3d: Clean up ActiveRender.

2006-09-04  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wined3d/device.c:
	wined3d: Avoid crashing when ProcessVertices is called with NULL vertex
	declaration.

2006-09-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/colordlg.c, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/fontdlg.c:
	comdlg32: Cast-qual warnings fix.

2006-09-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/colordlg16.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/finddlg16.c, dlls/comdlg32/fontdlg16.c,
	  dlls/comdlg32/printdlg16.c:
	comdlg32: Cast-qual warnings fix.

2006-09-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Cast-qual warning fix.

	* dlls/crypt32/encode.c, dlls/crypt32/protectdata.c, dlls/crypt32/str.c:
	crypt32: Cast-qual warnings fix.

2006-09-03  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shfolder/Makefile.in, dlls/shfolder/version.rc:
	shfolder: Add version resource.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Simple test for UrlCanonicalizeA.

2006-09-01  András Kovács <andras@csevego.net>

	* dlls/wined3d/device.c:
	wined3d: Implement BlendFactor renderstate.

	* dlls/wined3d/device.c:
	wined3d: Remove unnecessary glBlendColor in TextureFactor renderstate.

2006-09-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/oid.c:
	crypt32: Set last error on registry errors.

	* dlls/wintrust/register.c:
	wintrust: Add a bunch of CryptRegisterOIDFunction calls.

	* include/wintrust.h:
	wintrust.h: Added several defines needed for the registration of wintrust.dll.

	* dlls/wintrust/register.c:
	wintrust: Only register actions when
	HKLM\Software\Microsoft\Cryptography\Providers\Trust can be opened.

2006-09-05  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_GENERIC_CHAIN_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register DRIVER_ACTION_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register OFFICESIGN_ACTION_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register HTTPSPROV_ACTION.

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_TRUSTPROVIDER_TEST.

	* dlls/wintrust/register.c:
	wintrust: Register WINTRUST_ACTION_GENERIC_CERT_VERIFY.

	* dlls/wintrust/register.c:
	wintrust: Register WIN_SPUB_ACTION_PUBLISHED_SOFTWARE_NOBADUI.

	* dlls/wintrust/register.c:
	wintrust: Register WIN_SPUB_ACTION_PUBLISHED_SOFTWARE.

	* dlls/wintrust/register.c, tools/wine.inf:
	wintrust: Register WINTRUST_ACTION_GENERIC_VERIFY_V2.

2006-09-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/softpub.h:
	softpub.h: Added several new defines for provider functions.

2006-09-01  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wintrust.h:
	wintrust.h: Added a new define for a provider function.

2006-08-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/resource16.c, include/wine/winuser16.h:
	kernel: Constify some formal parameters.

2006-09-01  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a short test for transforms.

	* dlls/msi/tests/db.c:
	msi: Make opening and closing 4000 handle into two tests, not 20000.

2006-08-31  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleobj.c:
	ole32: Allocate memory for a copy of the ptd member of FORMATETC in
	DataAdviseHolder_Advise since there is no requirement for the
	application to keep this memory valid for the lifetime of the
	connection.

	* dlls/ole32/oleobj.c:
	ole32: Don't send data changes in DataAdviseHolder_Advise for
	ADVF_PRIMEFIRST connections if we are connected to a data object,
	since it will send the data change for us.

	* dlls/ole32/defaulthandler.c:
	ole32: DefaultHandler_GetData and DefaultHandler_QueryGetData should
	both defer to the real data object if the cached versions fail and we
	are running.

	* dlls/ole32/rpc.c:
	ole32: Add a reference to the stream in RPC_StartLocalServer since we
	release a reference to it when the local server thread dies.

	* dlls/ole32/tests/ole2.c:
	ole32: Add a test for OleLoad.

	* dlls/ole32/ole2.c:
	ole32: Do a QueryInterface for IOleLink in OleLoad, like native does.

	* dlls/ole32/ole2.c:
	ole32: Re-order the function calls in OleLoad to match native.
	Call IOleObject_GetMiscStatus like OleCreate and native do.

	* dlls/ole32/tests/Makefile.in, dlls/ole32/tests/ole2.c:
	ole32: Add tests for OleCreate.

	* dlls/ole32/ole2.c:
	ole32: Call IRunnableObject_Run and IOleCache_Cache from OleCreate if the
	render option is specified as draw or format.
	This is documented on MSDN and is confirmed by tests.

	* dlls/ole32/ole2.c:
	ole32: Call IOleObject_GetMiscStatus in OleCreate if a client site is passed in.

	* dlls/ole32/ole2.c:
	ole32: Re-structure OleCreate to match to order of calls that native does.
	Get rid of hres1 since all failures are returned. Cleanup pUnk on
	failure and make sure to return NULL in ppvObj.

	* dlls/ole32/ole2.c:
	ole32: Set the storage's class ID in OleCreate.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Raise an exception if IRpcChannelBuffer_GetBuffer fails.
	Make StdProxy_GetIID and StdProxy_GetChannel return void.
	Don't bother checking for This and pRpcChannelBuffer being NULL as
	native doesn't.

2006-08-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/tests/db.c:
	msi: Implement MsiDatabaseExport.

	* dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Create MSI_ViewGetColumnInfo for accessing MsiViewGetColumnInfo internally.

	* dlls/msi/insert.c, dlls/msi/tests/db.c:
	msi: Make sure there's a value for each column when inserting data.

	* dlls/msi/table.c, dlls/msi/tests/db.c:
	msi: Validate database fields before inserting them.

	* dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/record.c,
	  dlls/msi/select.c:
	msi: Create a function to copy record fields, use it to order INSERT fields
	correctly.

	* dlls/msi/tests/record.c:
	msi: Add a few more tests for MSI_NULL_INTEGER.

	* dlls/msi/create.c, dlls/msi/tests/db.c:
	msi: Check that column names are unique when creating a table.

2006-08-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add delegating stub support.

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	rpcrt4: Add infrastructure to create and manage a variable sized vtbl
	that will be used as the server object for delegated stubs.

2006-08-31  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Moved the generation of the guidstring to a separate function.

	* dlls/wintrust/register.c, dlls/wintrust/tests/register.c,
	  include/wintrust.h:
	wintrust: Implementation of WintrustAddActionID.

2006-08-30  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/Makefile.in, dlls/wintrust/register.c,
	  dlls/wintrust/tests/register.c:
	wintrust: Implementation of WintrustRemoveActionID.

2006-09-01  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/typelib.c:
	widl: Sanity check string and pointer attrs.  Don't assign string as type.

	* tools/widl/parser.y:
	widl: Handle more pointer types in get_struct_type.

2006-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Remove checks for typedefs that always fail.

2006-08-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Add the regsvr action to the SetupInstallFromInfSection call.

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Get the proper working directory in install_init.

2006-08-30  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests on NdrCStdStubBuffer_Release to show that we shouldn't call
	Disconnect.
	Also call IPSFactoryBuffer_Release on the 2nd arg, rather than on
	This->pPSFactory.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Tidy up CStdStubBuffer_QueryInterface.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Tidy up CStdStubBuffer_AddRef,Release.

2006-08-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Don't crash if we can't find a control.

	* dlls/msi/tokenize.c:
	msi: Use a binary search to find sql keywords.

	* dlls/ddraw/main.c, dlls/ddraw/tests/ddrawmodes.c,
	  dlls/ddraw/tests/dsurface.c, dlls/ddraw/tests/refcount.c:
	ddraw: Make tests pass when OpenGL libraries aren't present.

2006-08-29  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix lsa tests on windows98.

2006-08-29  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Generate an error for "int f(void a)".

	* tools/widl/header.c:
	widl: Print pointers more aesthetically in generated header.

	* tools/widl/client.c, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/typelib.c, tools/widl/widltypes.h:
	widl: Add an is_ptr function.

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/typelib.h,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Factor the entry_t structure.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Use type_t for typedefs, not var_t.  Simplify representation.

	* tools/widl/parser.y:
	widl: Generate names for tagless structs, unions and enums.

2006-08-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Make the reference counting in the standard proxy thread-safe.

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Fix NdrStubGetBuffer to use the IRpcChannelBuffer object since
	IRpcChannelBuffer_GetBuffer may put extra data onto the wire for ORPC
	calls.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Remove some unused code.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_clientserver.c,
	  dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Rename ndr_midl.c to ndr_clientserver.c to more accurately
	idenitfy what the code contained does - it is a number of helpers for
	generated client/server code.

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c,
	  dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Move NdrStub* functions to cstub.c and move NdrProxy*
	functions to cproxy.c since both sets of functions depend on the
	implementations of the standard stubs and proxies.

	* server/file.c:
	server: Translate errnos ENFILE and EMFILE to STATUS_TOO_MANY_OPENED_FILES,
	which seems to be more appropriate and matches the errno translation
	in ntdll.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Delay the creation of the stub object for IDispatch until it is
	actually used.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a leak of the module reference count.

2006-08-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/toolbar.c,
	  dlls/comctl32/trackbar.c:
	comctl32: Cast-qual warnings fix.

2006-08-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/files.c:
	advpack: Cast-qual warnings fix.

2006-08-29  Renu Rajput <renu.rajput@gmail.com>

	* dlls/comdlg32/filedlg.c:
	comdlg: Send missing CDN_FOLDERCHANGE.

2006-09-01  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wincrypt.h:
	wincrypt.h: Add new OID.

	* include/softpub.h:
	softpub.h: Add a GUID.

	* include/wintrust.h:
	wintrust.h: Add a GUID.

2006-08-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c:
	wintrust: Add some documentation.

	* dlls/wintrust/tests/register.c:
	wintrust: Add some extra tests for WintrustRemoveActionID.

2006-08-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/join.c:
	msi: Fix a memory leak.

	* dlls/msi/handle.c, dlls/msi/msi_main.c, dlls/msi/msipriv.h:
	msi: Free the handle table on PROCESS_DETACH.

	* dlls/msi/tests/package.c:
	msi: Fix test compilation with MSVC6.

	* dlls/msi/package.c, dlls/msi/tests/package.c:
	msi: Properties are case sensitive.

2006-08-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/wintrust/tests/Makefile.in, dlls/wintrust/tests/register.c,
	  programs/winetest/Makefile.in:
	wintrust: Add framework and initial tests.

2006-08-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/register.c, dlls/wintrust/wintrust.spec:
	wintrust: Add some register stubs.

	* dlls/wintrust/Makefile.in, dlls/wintrust/register.c,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Move register related functions to a separate file.

2006-08-28  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c:
	widl: Add the rest of the pointer types to write_type.

2006-08-28  Marcus Meissner <marcus@jet.franken.de>

	* programs/explorer/explorer.c, programs/regedit/hexedit.c,
	  programs/regedit/listview.c, programs/winedbg/display.c,
	  programs/winedbg/source.c, programs/winedbg/stack.c:
	Remove some more unused debugging channels.

2006-08-26  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add a test for IRpcStubBuffer_Connect on a delegated stub.
	This shows that we have a vtbl ptr at (void**)This-2 that is passed to
	the base interface's IRpcStubBuffer_Connect.  This vtbl should
	presumably forward calls to the real object's vtbl.  We can't simply
	pass the real object to the base interface's stub, as the real
	object's QI may not provide us with the base interface.

2006-08-28  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cpsf.h, dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Add a helper function to create a stub.

2006-08-28  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Apply the half pixel correction for shaders too.

2006-08-28  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use msi_dialog_dup_property where appropriate.

	* dlls/msi/dialog.c:
	msi: Use the respective update functions when creating the Browse dialog control.

	* dlls/msi/dialog.c:
	msi: Update the DirectoryCombo control in response to the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Update the PathEdit control in response to the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Highlight the text in the PathEdit control.

2006-08-28  Dan Kegel <dank@kegel.com>

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msi.c,
	  dlls/msi/msiquery.c, dlls/msi/package.c, dlls/msi/preview.c,
	  dlls/msi/suminfo.c:
	msi: Callers of alloc_msihandle should handle failure.

	* dlls/msi/handle.c, dlls/msi/msipriv.h, dlls/msi/tests/db.c:
	msi: Remove limit on number of handles.

	* dlls/msi/tests/db.c:
	msi/tests: Add test to verify we can create 4000 msi handles.

2006-08-28  Robert Shearman <rob@codeweavers.com>

	* dlls/quartz/videorenderer.c:
	quartz: Use the absolute height of the bitmap format as a negative values
	simply means it is a top-down bitmap.

	* dlls/ole32/rpc.c:
	ole32: Return errors if the attempt to start a LocalService object fails.

	* dlls/ole32/compobj.c:
	ole32: AppId is a value under the clsid key, rather than a key.

	* dlls/ole32/compobj.c, dlls/ole32/git.c, dlls/ole32/ole2.c,
	  dlls/ole32/regsvr.c, dlls/ole32/stubmanager.c:
	ole32: Fix functions defined without specifying argument types by changing
	them to "(void)".

2006-08-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Import ConvertPixelFormatWGLtoGLX from opengl32.

2006-08-27  Brian Chang <brianch@seas.ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_EXSETSEL fixes and conformance tests.

2006-08-28  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, tools/Makefile.in, tools/winapi/Makefile.in:
	tools: Get rid of the winapi makefile, it's not used anyway.

	* Make.rules.in, Makefile.in, dlls/Makefile.in, dlls/Makeimplib.rules.in,
	  dlls/Maketest.rules.in, dlls/advapi32/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/cabinet/Makefile.in,
	  dlls/comcat/Makefile.in, dlls/comctl32/Makefile.in,
	  dlls/comdlg32/Makefile.in, dlls/crypt32/Makefile.in,
	  dlls/d3d8/Makefile.in, dlls/d3d9/Makefile.in, dlls/ddraw/Makefile.in,
	  dlls/dinput/Makefile.in, dlls/dnsapi/Makefile.in,
	  dlls/dsound/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/iphlpapi/Makefile.in, dlls/kernel/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/make_dlls, dlls/mapi32/Makefile.in,
	  dlls/mlang/Makefile.in, dlls/msacm32/Makefile.in,
	  dlls/mscms/Makefile.in, dlls/mshtml/Makefile.in,
	  dlls/msi/Makefile.in, dlls/msvcrt/Makefile.in,
	  dlls/msvcrtd/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/netapi32/Makefile.in, dlls/ntdll/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/psapi/Makefile.in, dlls/quartz/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/rsabase/Makefile.in, dlls/rsaenh/Makefile.in,
	  dlls/secur32/Makefile.in, dlls/setupapi/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/user/Makefile.in, dlls/usp10/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/version/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winspool.drv/Makefile.in, dlls/ws2_32/Makefile.in:
	makefiles: Only run test and documentation targets in directories that need them.

	* programs/winetest/Makefile.in, tools/make_makefiles:
	make_makefiles: Generate the tests list in programs/winetest/Makefile.in.

	* dlls/make_dlls, programs/make_progs, tools/make_makefiles:
	tools: Added make_makefiles tool that updates the list in configure.ac and
	runs make_dlls and make_progs.

	* dlls/kernel/cpu.c:
	kernel: Get rid of useless trace.

2006-08-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c:
	msi: Fix writing of long strings to the database.

	* dlls/msi/record.c:
	msi: Fix MsiRecordGetString for a null buffer and non-zero buffer length.

2006-08-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c:
	d3d8: Use proper handles for pixel shaders.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Improve shader handle management.

2006-08-26  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c, include/wine/wined3d_gl.h:
	wined3d: Add support for A16B16G16R16F and A32B32G32R32F texture formats.

2006-08-28  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/msi/msi_Ko.rc:
	msi: Updated Korean resource.

2006-08-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c:
	dbghelp: Removed stabs dump facility now that we have it (for PE files)
	in winedump.

	* tools/winedump/debug.c, tools/winedump/main.c, tools/winedump/pe.c,
	  tools/winedump/winedump.h, tools/winedump/winedump.man.in:
	winedump: Added -G option to dump raw stabs information from PE files.

	* programs/winedbg/memory.c:
	winedbg: Native dbghelp generate long basic types, so handle them too.

2006-08-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_UNDERLINE implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Added IDM_ITALIC implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/olecmd.c:
	mshtml: Added IDM_FONTNAME implementation.

2006-08-25  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the VolumeCostList control.

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Add initial implementation of the DirectoryListUp event.

	* dlls/msi/dialog.c:
	msi: Add initial implementation of the DirectoryCombo control.

2006-08-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Find the correct sampler type for < 2.0 pshaders.

	* dlls/wined3d/surface.c:
	wined3d: Properly initialize a variable.

2006-08-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/tests/registry.c:
	advapi32/tests: Cast-qual warnings fix.

2006-08-27  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Remove two testing fixme's that were accidentally committed.

2006-08-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/combo.c:
	user: Do not force repainting on WM_WINDOWPOSCHANGED in combobox.
	- do not force repainting on WM_WINDOWPOSCHANGED in combobox, it
	breaks Z-order based painting.
	- do nothing in the combobox WM_ERASEBKGND handler do all painting in
	WM_PAINT like Windows does.

2006-08-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl: Fix Mesa/DRI regression.

2006-08-27  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix security tests to not crash on windows.

2006-08-26  Robert Reif <reif@earthlink.net>

	* dlls/kernel/locale.c:
	kernel32: Fix TRACE in WideCharToMultiByte to not cause exception with non-null
	terminated input.

2006-08-25  Frank Richter <frank.richter@gmail.com>

	* dlls/setupapi/queue.c:
	setupapi: Make do_file_copyW send "target newer" notifications.

	* dlls/kernel/profile.c, dlls/kernel/tests/profile.c:
	kernel: Add tests for GetPrivateProfileSectionNames. Make behaviour the same
	as observed on Windows XP.

2006-08-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/path.c:
	kernel: Fixed off-by-one error in GetShortPathNameW.

2006-08-26  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/parser.l,
	  tools/wrc/parser.y, tools/wrc/utils.c, tools/wrc/wrc.c:
	wrc: Get rid of xmalloc casts.

	* tools/wrc/genres.c, tools/wrc/newstruc.c, tools/wrc/newstruc.h,
	  tools/wrc/parser.y, tools/wrc/utils.c:
	wrc: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* tools/wmc/mcy.y, tools/wmc/utils.c, tools/wmc/wmc.c:
	wmc: Get rid of xmalloc casts.

	* tools/wmc/mcy.y, tools/wmc/utils.c:
	wmc: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/utils.c,
	  tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: xmalloc shouldn't initialize to zero, do that explicitly where needed.

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/checklink.c:
	makefiles: Get rid of the checklink rules, they no longer work.

2006-08-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleproxy.c:
	ole32: Call IRpcChannelBuffer_GetBuffer for the RemRelease case of
	Invoke, even though we are requesting a buffer size of 0 as we put
	extra data into the buffer in IRpcChannelBuffer_GetBuffer.

	* dlls/ole32/oleproxy.c:
	ole32: Use IRpcChannelBuffer_GetBuffer in the hand-made proxy/stubs
	instead of calling I_RpcGetBuffer as IRpcChannelBuffer_GetBuffer does
	some extra magic.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: Add support for main-threaded apartments.
	A main-threaded apartment is the first single-threaded apartment in the
	process. It was designed to be used for legacy applications that don't
	want to think about threading at all, even if they are always called
	from the same context, as is the case for regular STAs.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole32: Move the opening of the AppId key for a clsid to a helper function.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h:
	ole32: CoGetClassObject should host a single-threaded object in a
	single-threaded apartment if executing in a multi-threaded apartment,
	if one exists.

	* dlls/ole32/compobj.c:
	ole32: Get the threading model value for inproc classes and output a
	fixme if we should create it in an apartment of another type.

2006-08-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/eventlog.c:
	advapi32: Cast-qual warnings fix.

2006-08-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/olecmd.c:
	mshtml: Better stub for QueryStatus(CGID_MSHTML).

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added nsICommandParams argument to do_ns_command.

2006-08-26  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/secur32.c:
	secur32: Fix secur32 test to pass on windows.

2006-08-25  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Fix LookupAccountSid and tests to pass on windows and wine.

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix lsa tests.

2006-08-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Updated Korean resource.

2006-08-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Fix a bug in SHELL_ConfirmW.
	Fix a bug introduced while changing the OK/Cancel to Yes/No.

2006-08-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/Makefile.in:
	winex11.drv: Remove no longer used all: target.

2006-08-25  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added data freeing in EnumFuncs function.

2006-08-25  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/quartz/avisplit.c, dlls/quartz/fourcc.h:
	quartz: Skip over INFO chunk in AVI file parsing.

2006-08-25  Marcus Meissner <marcus@jet.franken.de>

	* dlls/comctl32/theme_dialog.c, dlls/comctl32/theme_edit.c,
	  dlls/comctl32/theme_listbox.c:
	comctl32: Remove unneccessary default debug channels.

2006-08-25  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Use a common function for all D3DCMPFUNC -> GLenum conversions.

2006-08-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	msi: Set the ALLUSERS property to 1 always.

	* dlls/msi/alter.c:
	msi: Fix a memory leak.

	* dlls/msi/dialog.c:
	msi: Use msi_get_property_int rather than MSI_GetPropertyW.

2006-08-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix a compiler warning when OpenGL is missing.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Avoid sizeof in traces.

	* Make.rules.in, configure, configure.ac, loader/Makefile.in,
	  server/Makefile.in, tools/wmc/Makefile.in, tools/wrc/Makefile.in:
	configure: Set rpath on all executables that link to libwine.
	Also add the -multiply_defined suppress option for executables on MacOS.

	* configure, configure.ac:
	configure: Make sure timezone and daylight are variables.

	* aclocal.m4, configure, configure.ac:
	configure: Move cache handling into the WINE_TRY_CFLAGS macro.

	* configure, configure.ac:
	configure: Enable the -Wwrite-strings flag.

	* tools/winedump/main.c, tools/winedump/output.c,
	  tools/winedump/winedump.h:
	winedump: Get rid of the install script.

	* programs/make_progs:
	make_progs: Update the directory list in configure.ac too.

	* dlls/make_dlls:
	make_dlls: Update the directory list in configure.ac too.

2006-08-25  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc:
	regedit: Updated Korean resource.

2006-08-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typelib.c,
	  tools/widl/widl.c, tools/widl/widltypes.h:
	widl: Remove usage of type_t ref field for base types; simplify code.

2006-08-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/parser.y:
	widl: Write-strings warning fix.

	* dlls/mshtml/nsiface.idl:
	mshtml: Write-strings warnings fix.

2006-08-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c, dlls/msi/package.c:
	msi: Reimplement msi_dup_property and msi_get_property_int.

	* dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Store properties in a hash table, not the database.
	Use string insensitive comparisons for property names.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Fix the height of the line control window.

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the DirectoryList dialog control.

	* dlls/msi/dialog.c:
	msi: Add a stub implementation of the DirectoryCombo dialog control.

2006-08-25  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/softpub.h:
	softpub.h: Added some GUIDs.

2006-08-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Load projected textures in fragment shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c:
	wined3d: Compile pixel shaders in drawprim.

2006-08-24  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/riched32/Makefile.in, dlls/riched32/version.rc:
	riched32: Add version resource.

	* tools/wine.inf:
	wine.inf: Add a bunch of fake dlls.

2006-08-24  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/version.c:
	ntdll: Print 64bit integers with wine_dbgstr_longlong.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/helpers.c, dlls/msi/msi_Bg.rc, dlls/msi/msi_De.rc,
	  dlls/msi/msi_En.rc, dlls/msi/msi_Eo.rc, dlls/msi/msi_Es.rc,
	  dlls/msi/msi_Fi.rc, dlls/msi/msi_Fr.rc, dlls/msi/msi_Hu.rc,
	  dlls/msi/msi_It.rc, dlls/msi/msi_Ko.rc, dlls/msi/msi_Nl.rc,
	  dlls/msi/msi_No.rc, dlls/msi/msi_Pt.rc, dlls/msi/msi_Ru.rc,
	  dlls/msi/msi_Tr.rc, dlls/msi/package.c:
	msi: Inform the user with an error message when the MSI file path is invalid.

2006-08-24  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.20.

----------------------------------------------------------------
2006-08-24  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fixed bug in previous OpenGL warning patch.

2006-08-17  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/lsa.c:
	advapi32: Output information on failed LsaQueryInformationPolicy tests.

2006-08-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Fix strings with lengths that are exact multiples of 2^16.

2006-08-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/freetype.c, dlls/gdi/tests/font.c:
	gdi: Add missing glyph code to GetGlyphIndices and tests.

2006-08-24  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c:
	shell32: Use kernel functions in preference to libwine ones.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Fix compilation of test on MSVC6.

2006-08-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Add an initial implementation of the PathEdit control.

2006-08-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c:
	opengl32: Fix ATI OpenGL bug.

2006-08-24  Roderick Colenbrander <thunderbird2k@gmx.net>

	* configure, configure.ac:
	configure: Extend the current OpenGL/Direct3D warning code.

2006-08-24  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean Resource.

2006-08-23  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Updated conformance test return string for VT_RESERVED.

2006-08-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/debug.c, tools/winedump/dump.c:
	winedump: Cast-qual warnings fix.

2006-08-23  James Liggett <jrliggett@cox.net>

	* dlls/winex11.drv/window.c:
	winex11.drv: Fix explorer regression caused by systray patch
	Move systray_dock_window call to X11DRV_CreateWindow so that it can
	safely call SetWindowPos without having _CheckNotSysLevel crash the
	explorer.

2006-08-22  Clinton Stimpson <cjstimpson@afinternet.net>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Add tests for EM_GETMODIFY.

2006-08-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for CStdStubBuffer_Disconnect and a tidy up of the implementation.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for CStdStubBuffer_Connect and fixes to make them pass.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add tests for CreateStub and fix up CStdStubBuffer_Construct to match.

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Add tests for NdrStubForwardingFunction and write a commented out
	implementation.
	This shows that the IRpcStubBuffer for a delegated stub's base
	interface is stored at (void**)This-1.

	* dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/cstub.c:
	rpcrt4: Tests for NdrDllGetClassObject.
	These show that delegated stubs need different Connect, Disconnect and
	CountRefs methods than non-delegated stubs (ie they don't use all of
	the CStdStubBuffer_* functions).

2006-08-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Added IMultiLanguage3 interface stub implementation.

	* include/mlang.idl:
	mlang.idl: Added IMultiLanguage3 declaration.

2006-08-22  Andrzej Popowski <popej@friko.onet.pl>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: Fix scanf format "%i" base detection.

2006-08-21  Stefan Huehner <stefan@huehner.org>

	* programs/winedbg/winedbg.man.in:
	winedbg: Fix typo in manpage.

2006-08-19  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Make the destination surface glDirty in UpdateSurface.

2006-08-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Write-strings warnings fix.

2006-08-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/ppd.c, dlls/wineps.drv/psdrv.h:
	wineps.drv: Write-strings warnings fix.

	* dlls/ddraw/main.c:
	ddraw: Write-strings warnings fix.

2006-08-23  Alexandre Julliard <julliard@winehq.org>

	* README, loader/wine.man.in:
	Documentation updates.

	* tools/.gitignore, tools/Makefile.in, tools/wineprefixcreate.man.in:
	tools: Added a man page for wineprefixcreate.

	* DEVELOPERS-HINTS:
	DEVELOPERS-HINTS: Moved to the Wiki by Tom Wickline.

2006-08-23  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi_De.rc,
	  dlls/shlwapi/shlwapi_En.rc, dlls/shlwapi/shlwapi_Eo.rc,
	  dlls/shlwapi/shlwapi_Es.rc, dlls/shlwapi/shlwapi_Fi.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/shlwapi/shlwapi_Hu.rc,
	  dlls/shlwapi/shlwapi_It.rc, dlls/shlwapi/shlwapi_Ja.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/shlwapi/shlwapi_Nl.rc,
	  dlls/shlwapi/shlwapi_No.rc, dlls/shlwapi/shlwapi_Pl.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/shlwapi/shlwapi_Tr.rc,
	  dlls/shlwapi/string.c:
	shlwapi: Move strings used by StrFromTimeInterval to resources.

	* programs/regedit/En.rc, programs/regedit/Pl.rc,
	  programs/regedit/about.c, programs/regedit/childwnd.c,
	  programs/regedit/framewnd.c, programs/regedit/listview.c,
	  programs/regedit/main.c, programs/regedit/main.h,
	  programs/regedit/resource.h:
	regedit: Put language-dependent strings in resources.

	* programs/regedit/framewnd.c:
	regedit: Remove custom filter from open/save dialogs.

2006-08-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/winecfg.c:
	winecfg: Make sure we can use a large text.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Add some documentation.

2006-08-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove -O2 disable hack for MacOS now that gcc is fixed.

2006-08-21  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac:
	configure: Show messages about additional packages with --verbose.

2006-08-22  James Liggett <jrliggett@cox.net>

	* dlls/winex11.drv/window.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Add XEmbed system tray support.
	Portions of this patch based on the work of Mike Hearn and Rob
	Shearman.

2006-08-22  James Hawkins <truiken@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Add handling for msiexec's regserver option.

2006-08-23  Mike McCormack <mike@codeweavers.com>

	* server/thread.c:
	server: Use ntdll values where possible.

	* include/windef.h:
	windef.h: Add a definition for FILETIME.

	* dlls/ntdll/threadpool.c:
	ntdll: Use RTL_CRITICAL_SECTION not CRITICAL_SECTION.

2006-08-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resource.

	* programs/winecfg/driveui.c:
	winecfg: Wrong text in messagebox.

2006-08-23  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shlwapi/shlwapi_Ko.rc:
	shlwapi: Update Korean resource.

2006-08-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* libs/wine/loader.c:
	libwine: Cast-qual warning fix.

	* tools/winebuild/res16.c:
	winebuild: Cast-qual warnings fix.

2006-08-23  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/string.c:
	ntdll/tests: Print 64bit integers as two 32 bit integers.

2006-08-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/winex11.drv/opengl.c:
	winex11.drv: Fix opengl pixel format bug.

2006-08-22  Fatih Aşıcı <fatih.asici@gmail.com>

	* dlls/mshtml/Tr.rc:
	mshtml: Update Turkish resources.

2006-08-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add CryptFormatObject stub.

2006-08-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Pl.rc: Fix a backslash.

	* dlls/shlwapi/string.c:
	shlwapi: Make StrFormatByteSize format numbers using locale settings.

2006-08-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/olecmd.c, dlls/mshtml/persist.c,
	  dlls/mshtml/tests/htmldoc.c:
	mshtml: Use IPropertyNotifySink connection point.

2006-08-22  Robert Reif <reif@earthlink.net>

	* dlls/dsound/propset.c:
	dsound: Remove unused parameter from propset functions.

2006-08-21  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: Try to #include <pthread.h> before checking for pthread_np.h.

2006-08-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Correctly draw transformed and untransformed vertices in the same scene.

2006-08-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/crypt32/main.c:
	crypt32: Print parameters and add some documentation.

2006-08-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for the AppSearch action.

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	msi: Add handling for MsiEvaluateCondition's substring operators.

	* dlls/msi/tests/package.c:
	msi: Add tests for MsiEvaluateCondition's substring operators.

2006-08-22  Mike McCormack <mike@codeweavers.com>

	* dlls/itss/itss.c:
	itss: Simplify the class factory.

2006-08-22  Kai Blin <kai.blin@gmail.com>

	* dlls/kernel/sync.c:
	kernel: Set last error in CreateIoCompletionPort.

2006-08-21  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/string.c:
	shlwapi: Format the kilobyte file size number using locale settings.
	The code is quite complex but I haven't found any easier way to do it
	(passing NULL as NUMBERFMT results in two decimal places being appended).

	* dlls/shell32/pidl.c, dlls/shell32/recyclebin.c:
	shell32: Show file size in the details view in kilobytes.

2006-08-22  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Don't add the directory name twice when recursing into subdirectories.

2006-08-21  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Add support for handling TKIND_COCLASS in userdefined_to_variantvt.

2006-08-21  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Fix a misplaced parenthesis.

2006-08-21  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Print 64bit integers with wine_dbgstr_longlong.

2006-08-21  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resources.

2006-08-21  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resources.

2006-08-21  Matthew Finnicum <MattFinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_EXLINEFROMCHAR handle special case of lParam == -1.

2006-08-21  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added dispinterface handling to idl viewer.

	* programs/oleview/typelib.c:
	oleview: Added typedef handling to idl viewer.

2006-08-21  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/xrender.c:
	winex11.drv: Fix rendering of fonts that don't support anti-aliasing.

2006-08-19  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/audio.c, programs/winecfg/properties.h,
	  programs/winecfg/resource.h:
	winecfg: audio: Use strings from resources.

2006-08-18  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	winecfg: driveui: Load UI strings from resources.

2006-08-19  David Adam <David.Adam@math.cnrs.fr>

	* programs/winecfg/Fr.rc:
	winecfg: Update French translation.

2006-08-20  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Don't pass bad values to glAlphaFunc and glDepthFunc.

	* dlls/wined3d/device.c:
	wined3d: Print real unhandled D3DCMPFUNC value.

2006-08-20  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added idl save to file functionality.

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added idl displaying.
	- Added idl displaying.
	- Fixed AddToTLDataStrWithTabsW function.

	* programs/oleview/typelib.c:
	oleview: Added idl formatting.

	* programs/oleview/typelib.c:
	oleview: Added functions description to idl generation.

2006-08-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/install.c:
	advpack/tests: Make RunSetupCommand not popup dialogs.

2006-08-21  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/actctx.c:
	kernel32: Print parameters, call SetLastError() when failing.

2006-08-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Better GPU detection.

2006-08-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Improve float constant loading a bit.
	- Use a list to keep track of what constants are set.
	- Move TRACEs and checkGLcall calls out of the main constant loading loop.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Lookup GLSL float uniform locations only once per program.

	* dlls/wined3d/stateblock.c:
	wined3d: Free the float constant map arrays for all stateblocks.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix indices for the float constant map.
	Indices for the float constant map should be multiplied by 4 because
	we're loading 4 component float vectors, not because the size of a
	float is 4.

2006-08-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Added IDM_BOLD implementation.

2006-08-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/mscat.h:
	wintrust: Added stubbed CryptCATAdminEnumCatalogFromHash.

2006-08-19  Dan Kegel <dank@kegel.com>

	* dlls/mpr/wnet.c:
	mpr: Fix bug in ProviderOrder comma processing in wnetInit().

2006-08-19  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c:
	riched20: Swap two lines that were in wrong order / caused notification not
	to be sent.

2006-08-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Initial working implementation of EncryptMessage and DecryptMessage.

2006-08-19  Robert Reif <reif@earthlink.net>

	* dlls/kernel/environ.c, dlls/kernel/tests/environ.c:
	kernel32: Fix ExpandEnvironmentStrings to not overflow UNICODE_STRING buffer
	size (with test).

	* dlls/advapi32/tests/security.c:
	advapi32: LookupAccountSid buffer size query tests.

	* dlls/advapi32/security.c:
	advapi32: LookupAccountSid buffer size query fixes.

2006-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/qcap/capturegraph.c:
	qcap: Print 64bit integers with wine_dbgstr_longlong.

2006-08-18  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Update Norwegian Bokmål resources.

	* dlls/shlwapi/shlwapi_No.rc:
	shlwapi: Update Norwegian Bokmål resources.

2006-08-18  Stefan Huehner <stefan@huehner.org>

	* dlls/advpack/tests/advpack.c, dlls/advpack/tests/files.c,
	  dlls/comctl32/tests/header.c, dlls/ddraw/tests/d3d.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/ui.c,
	  dlls/riched20/tests/editor.c, dlls/rpcrt4/tests/ndr_marshall.c,
	  dlls/sane.ds/sane_main.c, dlls/shell32/shellpath.c,
	  dlls/twain_32/dsm_ctrl.c:
	Fix some -Wstrict-prototype warnings () -> (void).

2006-08-18  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Correctly map toolbar bitmap mask color in case of non-default
	color scheme.

2006-08-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c:
	msvcrt: Fixed access to the extra arguments of setjmp3.

	* dlls/user/user_main.c:
	user: Add .exe extension to wineboot just in case.

	* programs/explorer/explorer.c:
	explorer: Specify an explicit path when launching winefile.

2006-08-18  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/quartz/filtergraph.c, dlls/quartz/systemclock.c:
	quartz: Print 64bit integers with wine_dbgstr_longlong.

2006-08-18  Sagar Mittal <sagar.mittal@gmail.com>

	* dlls/quartz/dsoundrender.c:
	quartz: DSoundRender: Do not overwrite a full buffer.

2006-08-18  Frank Richter <frank.richter@gmail.com>

	* dlls/shlwapi/shlwapi_De.rc:
	shlwapi: Update German resources.

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/resource.h, programs/winecfg/x11drvdlg.c:
	winecfg: x11drv: Load vertex shader mode strings from resources.

2006-08-18  Tom Wickline <twickline@gmail.com>

	* DEVELOPERS-HINTS:
	DEVELOPERS-HINTS: Fix reference in implementing new API calls.

2006-08-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c, dlls/mshtml/tests/htmldoc.c, dlls/mshtml/view.c:
	mshtml: Added more Exec tests and fixes.

2006-08-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/path.c, dlls/ntdll/tests/path.c:
	ntdll: Fix failing test on windows.

2006-08-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/sfc/sfc_main.c:
	sfc: Print a FIXME only once.

2006-08-18  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/duplex.c,
	  dlls/dsound/tests/propset.c:
	dsound: Add class factory tests.

	* dlls/dsound/capture.c, dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/duplex.c,
	  dlls/dsound/propset.c:
	dsound: Class factory cleanup.
	Consolidate all class factories into a single implementation.
	Fixes a problem discovered by oleview.

2006-08-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Gracefully handle ntlm_auth versions that don't support the new
	commands.

2006-08-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Pl.rc:
	shlwapi: Add the Polish translation.

	* dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi_De.rc,
	  dlls/shlwapi/shlwapi_En.rc, dlls/shlwapi/shlwapi_Eo.rc,
	  dlls/shlwapi/shlwapi_Es.rc, dlls/shlwapi/shlwapi_Fi.rc,
	  dlls/shlwapi/shlwapi_Fr.rc, dlls/shlwapi/shlwapi_Hu.rc,
	  dlls/shlwapi/shlwapi_It.rc, dlls/shlwapi/shlwapi_Ja.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/shlwapi/shlwapi_Nl.rc,
	  dlls/shlwapi/shlwapi_No.rc, dlls/shlwapi/shlwapi_Pt.rc,
	  dlls/shlwapi/shlwapi_Tr.rc, dlls/shlwapi/string.c:
	shlwapi: Store the "%ld bytes" string as a resource.

	* dlls/shell32/trash.c:
	shell32: Show the original file name and deletion date in the Trash folder.

	* dlls/shell32/xdg.c, dlls/shell32/xdg.h:
	shell32: Add desktop entries parsing code.

	* dlls/shell32/shlfileop.c:
	shell32: Use Yes/No instead of OK/Cancel in confirm dialogs.

2006-08-18  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/locale.c:
	kernel32: Change a FIXME to a WARN.

	* dlls/msi/Makefile.in, dlls/msi/alter.c, dlls/msi/query.h,
	  dlls/msi/sql.y, dlls/msi/tokenize.c:
	msi: Add a stub ALTER query.

2006-08-17  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Output format-strings for interface pointers.

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Allow format-string functions to work with objects.

2006-08-17  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Fix test_LookupAccountSid to work on win9x.

2006-08-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c:
	mshtml: Fix Advise implementation for IPropertyNotifySink.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/olecmd.c:
	mshtml: Switch nsWebBrowset to editing mode in exec_editmod.

2006-08-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shlwapi/string.c:
	shlwapi: Print 64bit integers with wine_dbgstr_longlong.

2006-08-17  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remember to skip over the conformance description.

2006-08-17  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/imagelist.c:
	comctl32: Fix ImageList_Replace function to correctly apply image mask.

2006-08-18  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wintrust.h:
	wintrust.h: Added some defines.

2006-08-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32: Make tests loadable on NT4.

2006-08-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/user_main.c, programs/explorer/desktop.c:
	user: Defer all ExitWindowsEx processing to wineboot.

	* programs/wineboot/Makefile.in, programs/wineboot/shutdown.c,
	  programs/wineboot/wineboot.c:
	wineboot: Added support for doing a proper shutdown before rebooting.
	Send WM_QUERYENDSESSION messages to all windows of a given process
	before moving on to the next.
	Switch option parsing to getopt.
	Added a bunch of options to control shutdown behavior.

2006-08-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h,
	  dlls/winex11.drv/opengl.c:
	x11drv/opengl: Pixel format rewrite.

2006-08-16  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/paint.c,
	  dlls/riched20/style.c:
	riched20: Send EN_LINK notifications. Properly underline / color links.

2006-08-17  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/Makefile.in, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/util.c:
	secur32: Add real signing / verifying to NTLM provider.

	* dlls/secur32/ntlm.c:
	secur32: Mask away NTLMv2 and key exchange flags so we never negotiate it
	for now.

2006-08-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/childwnd.c:
	regedit: Write-strings warnings fix.

	* dlls/ddraw/direct3d.c:
	ddraw: Write-strings warnings fix.

	* dlls/winspool.drv/info.c:
	winspool.drv: Write-strings warning fix.

2006-08-16  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Use typegen.c format-string functions in proxy.c.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Move format-string declaration output to typegen.c.

2006-08-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of edit mode.

	* dlls/mshtml/olecmd.c:
	mshtml: Added beginning implementation of IDM_EDITMODE.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/oleobj.c:
	mshtml: Rename get_property to get_client_disp_property and make it available
	for other files.

	* include/mshtmhst.idl:
	mshtmhst.idl: Added DOCHOSTUITYPE declaration.

2006-08-16  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/surface.c:
	wined3d: Make sure b_info structure is properly allocated and released.

2006-08-16  Stefan Leichter <Stefan.Leichter@camline.com>

	* tools/winedump/minidump.c:
	winedump: Print each 64bit integers as two 32 bit integers.

2006-08-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

2006-08-17  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resource file.

2006-08-16  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

2006-08-16  Oleg Krylov <oleg.krylov@gmail.com>

	* dlls/comctl32/toolbar.c:
	comctl32: toolbar: Use HOT imagelist for buttons in CHECKED state.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/appdefaults.c:
	winecfg: Fix issues with LVM_GETITEMW by removing superfluous flag.

	* programs/winecfg/appdefaults.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h:
	winecfg: Use WCHARs for window title, current app.

2006-08-16  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Add tests for NdrAllocate.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc:
	winecfg: New resource strings for appdefaults.

2006-08-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c:
	mshtml: Added [Get|Set]ParentContentListener implementation.

2006-08-16  Robert Shearman <rob@codeweavers.com>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: Add tests for RegQueryValueEx to show that it sets the data
	size to 0 when a buffer isn't present and that it sets the type to
	REG_NONE on Win9x.

2006-08-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Silence WINED3DRS_DEBUGMONITORTOKEN.

2006-08-16  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/secur32.c:
	secur32: Fix GetComputerObjectName tests based on feedback from Paul Vriens.

2006-08-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/win.c:
	user: Explicitly load explorer.exe from the system directory.

	* tools/wine.inf:
	wine.inf: Create a fake exe for explorer.exe.

2006-08-16  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/ole2.c, dlls/ole32/storage32.c:
	ole32: Move some functions out of compobj.c that don't belong there and update
	the copyright statement.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c,
	  dlls/ole32/tests/marshal.c:
	ole32: Add some more tests for failure cases of Co* functions and make builtin
	ole32 pass them.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Add tests for the failure cases of CLSIDFromProgID and fix the function
	to conform to these.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move processing of the arguments from NdrClientCall2 to two new
	functions.

2006-08-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/option.c:
	wldap32: Support setting server controls.

	* dlls/wldap32/option.c, dlls/wldap32/parse.c:
	wldap32: Document ldap_{get,set}_option and the parsing functions.

2006-08-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makedll.rules.in,
	  programs/Makeprog.rules.in:
	configure: Setting rpath should no longer be needed for dlls.

2006-08-16  Mike McCormack <mike@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Ordinal 394 should load and call shell32.SHNotifyChange.
	Makes builtin shlwapi behave better during reboot after IE6 install.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for ZoneComputePaneSize.
	Allows IE6 to show its main window with builtin shlwapi.

	* dlls/msi/tests/db.c:
	msi: Fix a couple of memory leaks in the test code.

2006-08-16  Frank Richter <frank.richter@gmail.com>

	* programs/winecfg/appdefaults.c, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.h:
	winecfg: appdefaults: Use more strings from resources, unicode.

	* programs/winecfg/main.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h:
	winecfg: Make load_string public.

	* programs/winecfg/De.rc:
	winecfg: Tweak and update German resources.

2006-08-15  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Generate proxy code for user marshalled types.

	* tools/widl/proxy.c:
	widl: Fix out-only temporary variable generation.

	* tools/widl/proxy.c:
	widl: Fix NdrComplexStructUnmarshall calls in generated code.

	* tools/widl/proxy.c:
	widl: Fix NdrConformantArrayUnmarshall calls in generated code.

	* tools/widl/header.c, tools/widl/parser.y:
	widl: Calculate method indices in parser instead of during header generation.

2006-08-15  Robert Reif <reif@earthlink.net>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/secur32.c:
	secur32: Add GetComputerObjectName tests.

	* dlls/secur32/secur32.c:
	secur32: Partial GetComputerObjectName implementation.

	* dlls/advapi32/tests/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy test to pass on NT4.

	* dlls/kernel/cpu.c, dlls/kernel/kernel32.spec, include/winbase.h:
	kernel32: Add GetNativeSystemInfo.

2006-08-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/install.c, dlls/msi/msi.spec, include/msiquery.h:
	msi: Add a stub for MsiGetFeatureCost.

	* dlls/msi/source.c:
	msi: Use the bare minimum number of parameters for LookupAccountName.

2006-08-15  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wineps.drv/ps.c:
	wineps.drv: Write-strings warnings fix and declare function static.

	* dlls/crypt32/tests/oid.c:
	crypt32/tests: Write-strings warning fix.

2006-08-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c, dlls/mshtml/nsio.c:
	mshtml: Correctly handle nsILoadGroup.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* server/process.c:
	server: Store the actual process count in snapshots.
	We can't rely on running_processes for that, since it now also counts
	processes waiting for SIGKILL and those aren't included in snapshots.

	* dlls/user/tests/cursoricon.c:
	user/tests: Fix a compiler warning, and remove some useless casts.

	* dlls/ntdll/loadorder.c:
	ntdll: Default to native loadorder for the main exe if not in system directory.
	Unlike dlls, executables can have the same name without necessarily
	being the same application, so defaulting to native is more likely to
	do the right thing.

2006-08-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/file.c:
	kernel/tests: Wrong error code checked.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Make tests loadable again on NT4.

	* include/winerror.h:
	winerror.h: Added an error code.

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustLoadFunctionPointers.

2006-08-15  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/infosoft/Makefile.in,
	  dlls/infosoft/tests/Makefile.in, dlls/infosoft/tests/infosoft.c,
	  programs/winetest/Makefile.in:
	infosoft: Add a test for the language neutral word breaker.

2006-08-15  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/En.rc:
	winecfg: Improve wording of virtual desktop explanation.

2006-08-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ddraw/main.c:
	ddraw: Do not report DDCAPS_OVERLAY and friends since overlays are not supported.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* tools/relpath.c:
	relpath: Properly handle a "." directory name.

2006-08-15  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Remove unnecessary casts in test suite.

2006-08-14  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/chain.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/chain.c:
	crypt32: Implement CertCreateCertificateChainEngine and
	CertFreeCertificateChainEngine.

	* include/wincrypt.h:
	crypt32: Implement CertCreateCertificateChainEngine and
	CertFreeCertificateChainEngine.

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/config.h.in, loader/kthread.c:
	loader/kthread: Remove some unneeded #ifdefs, other platforms use pthread now.

	* configure, configure.ac:
	configure: Disable optimization on MacOS because of gcc bug.

	* configure, configure.ac:
	configure: Use a platform name check for MacOS shared library support,
	it's completely different from the others anyway.

	* configure, configure.ac, include/config.h.in, libs/wine/Makefile.in:
	configure: Moved the library checks after the function checks to avoid code
	duplication.

2006-08-15  Kai Blin <kai.blin@gmail.com>

	* include/sspi.h:
	secur32: Fix typo in ISC flags.

	* dlls/secur32/ntlm.c:
	secur32: Add handling of feature flags and session key to AcceptSecurityContext.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Copy helper buffer to output buffer before reusing helper buffer.

2006-08-14  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Pass the right size to MIDL_memset in generated proxy code.

2006-08-14  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c:
	msi: Non-compressed files may come before the list of compressed files in the
	file sequence.

2006-08-14  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/cabinet/tests/extract.c:
	cabinet/tests: Write-strings warnings fix.

	* dlls/dnsapi/tests/name.c:
	dnsapi/tests: Write-strings warnings fix.

2006-08-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/gdbproxy.c:
	winedbg: Correctly protect system inclusion (needed for Mingw compilation).

2006-08-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/kernel/Makefile.in,
	  dlls/ws2_32/Makefile.in, include/config.h.in,
	  programs/winedbg/Makefile.in, server/Makefile.in:
	configure: Only link against libpoll where really necessary.

2006-08-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Added stubbed WintrustRemoveActionID.

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/user/sysparams.c:
	user: Fix SPI_SETICONTITLELOGFONT to check for LOGFONTW size.

	* dlls/user/sysparams.c:
	user: Initialize size of nonclients struct in load_nonclient_metrics.

2006-08-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, libs/wine/Makefile.in:
	libwine: Also set the current library version for MacOS.

	* configure, configure.ac:
	configure: Suppress multiple definitions warnings from the MacOS linker.

	* server/request.c, server/request.h, server/signal.c:
	server: Make sure to completely kill processes before returning from a
	wineserver -k.

	* server/process.c, server/process.h, server/thread.c:
	server: Send a SIGKILL to processes that don't terminate properly.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Avoid a warning for VT_FILETIME in PropVariantCopy.

2006-08-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: Fixed the symbol lookup so that it can really find _foo when looking
	for foo.

	* programs/winedbg/stack.c:
	winedbg: Native dbghelp can modify the passed debug context in StackWalk,
	so guard against it.

	* programs/winedbg/Makefile.in, programs/winedbg/tgt_active.c:
	winedbg: Don't ask for module inspection when calling SymInitialize.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Clean up AcceptSecurityContext (reduce indent and duplication).

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Set non-client metrics from theme.

	* dlls/uxtheme/msstyles.c:
	uxtheme: Split color handling out of MSSTYLES_ParseThemeIni into smaller
	helper functions.

	* dlls/uxtheme/msstyles.c, dlls/uxtheme/system.c:
	uxtheme: Enable gradient captions if a theme provides colors for them.

2006-08-14  Shachar Shemesh <wine@shemesh.biz>

	* fonts/system.sfd:
	fonts: Add Hebrew to the system font.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Put the HeapFree back in the right place.

	* dlls/ole32/stg_prop.c:
	ole32: Use PropVariantInit instead of memset.

2006-08-14  Robert Reif <reif@earthlink.net>

	* include/Makefile.in, include/dsgetdc.h:
	include: Add dsgetdc.h.

	* dlls/advapi32/lsa.c:
	advapi32: Move duplicated code into function.

	* dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/security.c:
	advapi32: Try again with different access mask if LsaOpenPolicy fails with
	STATUS_ACCESS_DENIED.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c:
	secur32: Fix heap error.

2006-08-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add handling for SECPKG_CONTEXT_FLAGS to QueryContextAttributes,
	unify indentation.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Cast helper to ULONG_PTR instead of DWORD.

2006-08-13  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Implement simple VerifySignature.

2006-08-12  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c, dlls/secur32/ntlm.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/ntlm.c:
	secur32: Implement simple MakeSignature.

2006-08-14  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Make AcceptSecurityContext behaviour consistent with Windows.

2006-08-13  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:AddRefHfont.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:ReleaseHfont.

2006-08-14  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Calculate icon data if the picture is dirty, or there's no icon data.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Print an IID in the trace, not just a pointer to it.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Don't complain when PICTDESC->cbSizeofstruct is 0.

	* dlls/ole32/hglobalstream.c:
	ole32: Always set pcbWritten when writing a stream.

	* dlls/ole32/ole2.c:
	ole32: FreePropVariantArray should return an error if rgvars is null.
	As suggested by Rob Shearman.

2006-08-14  Frank Richter <frank.richter@gmail.com>

	* dlls/uxtheme/system.c:
	uxtheme: Don't back up colors etc. when a theme is already active.

2006-08-14  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/view/Ko.rc:
	view: Updated Korean resource.

2006-08-12  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more LookupAccountSid tests.

	* dlls/advapi32/security.c:
	advapi32: Add more SIDs to AccountLookupSid.

	* dlls/netapi32/access.c:
	netapi32: NetUserModalsGet bug fixes and cleanup.

2006-08-13  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix vertex shader corruption issue.

2006-08-13  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winedbg/memory.c:
	winedbg: Print 64bit integers with wine_dbgstr_longlong.

2006-08-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/tests/files.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Write-strings warnings fix.

2006-08-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winetest/main.c:
	winetest: Write-strings warnings fix.

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Write-strings warnings fix.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings fix.

2006-08-12  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Improved interface handling in idl viewer.

2006-08-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c:
	mshtml: Remove no longer used get_nsIURI.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Return INET_E_USE_DEFAULT_PROTOCOLHANDLER in about protocol handler's
	CombineUrl.

2006-08-11  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/widltypes.h:
	widl: Improve pointer null checking logic.

	* tools/widl/parser.y, tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Use ref_type to simplify some code.

2006-08-11  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Add some more well known SIDs.

2006-08-11  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Added test to check if olefont:IFont_QueryInterface increments
	ref counter.

2006-08-11  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: If a component's state is not local, source, or default, default to the
	local state.

2006-08-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c:
	crypt32: Improve undocumented functions.
	- Test and implement I_CryptGetDefaultCryptProv (and correct its
	parameter list)
	- I_CryptReadTrustedPublisherDWORDValueFromRegistry always initializes
	its out parameter, correct and show with a test.

	* dlls/msi/tokenize.c:
	msi: Use wide char strings for token values to avoid an unnecessary
	WideCharToMultiByte.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/relay.c,
	  tools/winebuild/res16.c, tools/winebuild/res32.c,
	  tools/winebuild/spec16.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: Added output() function to properly deal with write errors.

2006-08-11  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Don't generate indentation spaces on empty lines.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* loader/pthread.c:
	loader: Exit the whole process when killing the last thread.

2006-08-11  Kirill K. Smirnov <lich@math.spbu.ru>

	* programs/winhelp/hlpfile.c:
	winhelp: Fix LZ77 decompressor.

2006-08-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi/tests: Write-strings warnings fix.

	* dlls/msi/files.c:
	msi: Write-strings warning fix.

	* dlls/version/install.c:
	version: Write-strings warnings fix.

2006-08-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Only load crypt32 once.

2006-08-11  Robert Reif <reif@earthlink.net>

	* include/lmaccess.h:
	lmaccess.h: Add some LOCALGROUP defines.

	* dlls/kernel/kernel32.spec, dlls/kernel/process.c, include/winbase.h:
	kernel32: Add IsWow64Process.

2006-08-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wldap32/ber.c, dlls/wldap32/init.c:
	wldap32: Write-strings warnings fix.

2006-08-11  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Set the CLSID_Internet shell folder's attributes.

2006-08-11  Mike McCormack <mike@codeweavers.com>

	* dlls/infosoft/infosoft_main.c, dlls/infosoft/wordbreaker.c,
	  dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/indexsrv.idl, include/indexsvr.idl:
	include: Rename indexsvr.idl to indexsrv.idl.

	* dlls/infosoft/wordbreaker.c:
	infosoft: Use the pfnFillTextBuffer function to refresh the buffer.

2006-08-10  Mike McCormack <mike@codeweavers.com>

	* dlls/infosoft/infosoft_main.c, dlls/infosoft/wordbreaker.c,
	  tools/wine.inf:
	infosoft: Implement and register the language neutral wordbreaker, not the
	English_US one.

2006-08-10  Aric Stewart <aric@codeweavers.com>

	* dlls/user/menu.c:
	user: Implement MNS_NOTIFYBYPOS.

2006-08-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Remove some macros and clean up the code now that all platforms use
	siginfo.

	* dlls/ntdll/signal_i386.c:
	ntdll: Switch linux to siginfo-style signal handling.

2006-08-11  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/pstorec/Makefile.in,
	  dlls/pstorec/pstorec.c, dlls/pstorec/pstorec.spec:
	pstorec: Add a stub implementation.

2006-08-10  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/olefont.c:
	oleaut32: Removes stub message from olefont:OLEFontImpl_FindConnectionPoint.

2006-08-10  Molle Bestefich <molle.bestefich@gmail.com>

	* tools/bug_report.pl:
	bug_report.pl: Use correct 'wine --version' syntax.

2006-08-10  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/widl.h:
	widl: Fix incorrect version number in generated code.

2006-08-11  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2006-08-11  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix opengl extension call.

2006-08-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/tests/package.c:
	msi: Only remove a file if the version to be installed is strictly newer than
	the old file.

2006-08-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/treeview.c:
	regedit: Write-strings warnings fix.

	* dlls/wininet/tests/http.c:
	wininet/tests: Write-strings warnings fix.

2006-08-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Accept RTF header without a version number.

	* dlls/riched20/reader.c:
	riched20: Accept RTF group tokens inside colortbl destination.

2006-08-10  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Fix spelling in a comment.

2006-08-10  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Implement CompleteAuthToken for NTLM.

2006-08-10  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/serial.c, server/thread.c, server/timer.c,
	  server/trace.c, server/winstation.c:
	server: Only call gettimeofday once per poll loop.

2006-08-04  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/kernel/tests/file.c:
	kernel/tests: Increase requested file size in two tests to hit FreeBSD file
	size limit.

2006-08-10  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.19.

----------------------------------------------------------------
2006-08-08  Colin Pitrat <colin.pitrat@bull.net>

	* tools/bug_report.pl, tools/make_authors, tools/winapi/config.pm,
	  tools/winapi/make_filter, tools/winapi/msvcmaker,
	  tools/winapi/nativeapi.pm, tools/winapi/winapi_check,
	  tools/winapi/winapi_extract, tools/winapi/winapi_fixup,
	  tools/winapi/winapi_module_user.pm, tools/winapi/winapi_test,
	  tools/winedump/function_grep.pl:
	tools: Check for open return code in Perl scripts.

2006-08-09  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Add conformance tests for WM_SETFONT.

2006-08-09  Ken Myers <kmyers@ucla.edu>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_EXLIMITTEXT, EM_GETLIMITTEXT and tests.

2006-08-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c, dlls/crypt32/tests/oid.c:
	crypt32: Implement CryptRegisterDefaultOIDFunction and
	CryptUnregisterDefaultOIDFunction.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/setupapi/install.c:
	setupapi: Fix handling of inf paths that are quoted (due to spaces, typically).

2006-08-09  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/typegen.c:
	widl: Add ref_type (dereference typedefs) and use it.

2006-08-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ddraw/main.c, dlls/gdi/font.c, dlls/setupapi/misc.c,
	  dlls/setupapi/stringtable.c:
	janitorial: Removed the rest of the redundant NULL checks before HeapFree.

2006-08-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/version/tests/info.c, dlls/version/tests/install.c:
	version/tests: Write-strings warnings fix.

	* dlls/wineps.drv/init.c:
	wineps.drv: Write-strings warnings fix.

2006-08-10  Mike McCormack <mike@codeweavers.com>

	* dlls/user/static.c:
	user32: Remember to draw the icon when SS_CENTERIMAGE is set.

2006-08-10  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Updated Norwegian Bokmål resources.

	* dlls/mshtml/No.rc:
	mshtml: Updated Norwegian Bokmål resources.

2006-08-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/files.c, dlls/msi/package.c:
	msi: Download install cabinet files if the msi package is remote.

2006-08-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c:
	crypt32: Add a couple stubs, and implement the undocumented
	I_CryptReadTrustedPublisherDWORDValueFromRegistry.

2006-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Surface pitch fix.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Draw buffers support.

2006-08-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/device.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c:
	wined3d: Minor cursor fixes.

2006-08-08  Clinton Stimpson <clinton@elemtech.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix crash with NULL lParam in EM_SETTEXTEX.

2006-08-08  Paul Chitescu <pchitescu@voip.null.ro>

	* dlls/wininet/netconnection.c:
	wininet: MSG_WAITALL support in NETCON_recv with SSL.

2006-08-09  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/process.c:
	msvcrt: Rename _execve to MSVCRT__execve.

2006-08-09  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Made stabs parsing a bit more robust.
	Enhance dbghelp's robustness against bogus stabs sections found in
	meetro.exe (as reported by Jan Zerebecki).

2006-08-09  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/database.c:
	msi: Support MSIDBOPEN_CREATEDIRECT and MSIDBOPEN_DIRECT in MSI_OpenDatabaseW.

	* dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Forward NdrClientCall to NdrClientCall2.
	NdrClientCall should be implemented as a separate function when
	NdrClientCall2 has been factorised enough.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Add some more traces and make the stack offsets easier to read in the
	stubless interpreter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Change call_memory_sizer to preserve the buffer contents and
	initialise the memory size field to zero before calling the memory
	sizer function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Set retval_ptr and allocate memory for out pointers for the old format
	stubless intepreter.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Support fixed arrays in calc_arg_size.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Complex types should be dereferenced an extra time in the old format
	stubless code.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the stack offset for the old format stubless code when an object's
	method is being called.

	* dlls/ole32/defaulthandler.c:
	ole32: Add a check for NULL This->dataAdviseHolder in DefaultHandler_Stop.
	Cleanup DefaultHandler_GetCanonicalFormatEtc by using
	This->pDataDelegate instead of querying for IDataObject from
	This->pOleDelegate.

	* dlls/ole32/storage32.c:
	ole32: Fix a typo in IEnumSTATSTGImpl_QueryInterface where IStorage was being
	compared against instead of IEnumSTATSTG.

	* dlls/ole32/moniker.c:
	ole32: When comparing monikers use the abData field of MInterfacePointer
	as ulCntData doesn't include the size of its own field.

	* dlls/ole32/oleobj.c:
	ole32: Zero stg in case ADVF_NODATA is specified.
	Otherwise IDataObject_GetData fails before using it in
	DataAdviseHolder_SendOnDataChange.

	* include/rpcproxy.h:
	include: Add DLL registration macros to rpcproxy.h for dlldata.c files.

	* include/rpcproxy.h:
	include: Fix rpcproxy.h to allow the compilation of dlldata.c files.
	Add macros for generating the GetProxyDllInfo, DllGetClassObject and
	DllCanUnloadNow functions.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ole32/regsvr.c:
	ole32: Register the CLSID_Picture_Metafile and CLSID_Picture_Dib ProgIDs.

	* dlls/msxml3/regsvr.c:
	msxml3: DOMFreeThreadedDocument's thread model is Both, not Free.

	* dlls/msi/regsvr.c:
	msi: Link the WindowsInstaller.Installer ProgId back to the right CLSID.

	* dlls/msi/regsvr.c:
	msi: Change the CLSID_IMsiServer ProgId to IMsiServer to match Windows.

2006-08-09  Francois Gouget <fgouget@free.fr>

	* dlls/mlang/regsvr.c, include/mlang.idl:
	mlang: Give the CLSIDs their proper names.
	Move CLSID_CMultiLanguage and CLSID_CMLangConvertCharset to mlang.idl.
	Leave CLSID_CMLangString in regsvr.c as MSDN claims it is not supported anymore.

2006-08-09  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/regsvr.c:
	shell32: Register CLSID_NetworkPlaces, CLSID_ShellFSFolder and
	CLSID_ShellFolderViewOC.

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register CLSID_CUrlHistory and CLSID_Internet.

2006-08-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c:
	user: Fix the keyboard navigation and some graphical glitches for multi-column
	menus.

2006-08-09  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/winerror.h:
	winerror.h: Add some error codes.

2006-08-09  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/pixelshader.c,
	  include/wine/wined3d_gl.h:
	wined3d: Fix GLSL regression / draw buffers support.

2006-08-09  Frank Richter <frank.richter@gmail.com>

	* dlls/shell32/shell32_De.rc:
	shell32: Tweak and update German translation.

2006-08-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/device.c:
	ddraw: Implement D3DRENDERSTATE_TEXTUREMAPBLEND.

	* dlls/wined3d/device.c:
	wined3d: Watch out for negative results when validating the shader constant
	range.

2006-08-08  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: In text mode a ctrl-z signals EOF.
	Spotted by David Hagood with test suggested by Dan Kegel.

2006-08-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/cursoricon.c, dlls/user/tests/Makefile.in,
	  dlls/user/tests/cursoricon.c:
	user: CopyImage: Handle the flags LR_COPYDELETEORG, LR_CREATEDIBSECTION,
	and LR_MONOCHROME.

2006-08-08  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Accept more flags in SetMenuItemInfo and ModifyMenu.
	- Accept MFT_MENU{BAR}BREAK, MFT_RADIOCHECK, MFT_RIGHTJUSTIFY, and
	MFT_RIGHTORDER in SetMenuItemInfo.
	- InsertMenu, AppendMenu, ModifiyMenu: Accept MF_HILITE flag (undocumented).
	- SetMenuItemInfo: Only use the lower word of the bitmap handle as
	documented in MSDN (Word 95 depends on this).
	- The type MFT_RADIOCHECK cannot be set if only the checkmarks are
	modified with SetMenuItemInfo.
	- New tests.

2006-08-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Use moniker in AsyncOpen if channel is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Set nsURI's moniker in NewURI.

	* dlls/mshtml/nsembed.c:
	mshtml: Set nsURI's moniker in OnStartURILoad.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in QueryInterface if uri is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Added default GetSpec implementation.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Return INET_E_USE_DEFAULT_PROTOCOLHANDLER in ResProtocolInfo::CombineUrl.

	* dlls/mshtml/nsembed.c:
	mshtml: Continue searching for Gecko if loading xpcom.dll failed.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/persist.c:
	mshtml: Store IMoniker in BSCallback.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added GetMoniker and SetMoniker methods to nsIWineURI.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h, dlls/mshtml/view.c:
	mshtml: Create "Internet Explorer_Hidden" window.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Load the page from moniker if we don't have nsIChannel.

	* dlls/shdocvw/classinfo.c:
	shdocvw: Return DIID_DWebBrowserEvents in GetGUID for WebBrowser_V1.

2006-08-09  Huw Davies <huw@codeweavers.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathUnquoteSpaces.

2006-08-09  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/ntlm.c:
	secur32: Make ntlm tests run on both WinXP and Win2k.

	* dlls/secur32/tests/ntlm.c:
	secur32: Add tests for MakeSignature, VerifySignature, EncryptMessage and
	DecryptMessage.

2006-08-09  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	shell32: IShellLink::SetPath removes quotes from the path.

	* dlls/shell32/tests/shelllink.c:
	shell32: Fix test compilation with MSVC6.

2006-08-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/user_private.h, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/trace.c:
	server: Make the message extra info 64 bits on Win64.

	* dlls/user/message.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/mouse.c, include/wine/server_protocol.h,
	  server/protocol.def, server/queue.c, server/request.h,
	  server/trace.c:
	server: Split the queuing of hardware messages into a separate
	send_hardware_message request.

2006-08-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/recyclebin.c:
	shell32: Add recyclebin.c file missing in previous commit.

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update Polish translation.

	* dlls/shell32/regsvr.c, dlls/shell32/shres.rc:
	shell32: Add a custom icon for the trash folder.

	* dlls/shell32/trash.c:
	shell32: Add trash items enumeration.

	* dlls/shell32/Makefile.in, dlls/shell32/regsvr.c,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shellole.c, dlls/shell32/shresdef.h,
	  dlls/shell32/trash.c, dlls/shell32/xdg.h:
	shell32: Add a Trash virtual folder.

2006-08-06  Yong Chi <yong28chi@yahoo.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Fix for incorrect return value from wined3d.

2006-08-09  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, Make.rules.in:
	Make.rules: Added rules for client/proxy/server generation from IDL files.

	* programs/explorer/desktop.c:
	explorer: Never paint the desktop when using the X root window.

2006-08-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Trace key type in CryptFindOIDInfo.

2006-08-09  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/user/resources/user32_Ko.rc:
	user32: Updated Korean resource.

2006-08-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/console.c, dlls/msvcrt/cpp.c, dlls/msvcrt/exit.c,
	  dlls/msvcrt/file.c, dlls/msvcrt/process.c:
	msvcrt: Remove redundant NULL checks before MSVCRT_free.

	* dlls/comdlg32/filedlg.c:
	comdlg32: Remove redundant NULL checks before MemFree.

2006-08-08  Matt Finnicum <mattfinn@gmail.com>

	* programs/wordpad/wordpad.c:
	wordpad: Request WS_VSCROLL now that riched20 supports it.

	* dlls/riched20/editor.c, dlls/riched20/paint.c:
	riched20: Implement EM_SHOWSCROLLBAR, EM_SETSCROLLPOS, ES_DISABLENOSCROLL,
	and WS_VSCROLL.

2006-08-08  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for the RemoveFiles action.

2006-08-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/sysparams.c:
	user/tests: Write-strings warnings fix.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/tests/ordinal.c,
	  dlls/shlwapi/tests/shreg.c:
	shlwapi/tests: Write-strings warnings fix.

2006-08-08  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c,
	  dlls/secur32/tests/ntlm.c:
	secur32: Move NTLM tests to ntlm.c to avoid cluttering main.c with NTLM-specific
	tests.

2006-08-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: Test and fix CryptEncrypt with NULL buffer.

2006-08-08  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: ScriptItemize will break up the string into script_items.

2006-08-07  Francois Gouget <fgouget@codeweavers.com>

	* configure, configure.ac:
	configure: Fix the linux/ipx.h detection.

2006-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Volume texture addressing caps.

	* dlls/wined3d/directx.c:
	wined3d: Shader declaration cap fixes.

2006-08-08  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/run.c:
	riched20: Modify ME_CharFromPoint to work properly with password controls.

2006-08-08  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/mshtml/Sv.rc, dlls/mshtml/rsrc.rc:
	mshtml: Add Swedish translation.

2006-08-08  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Shader cap fixes.

2006-08-04  Robert Shearman <rob@codeweavers.com>

	* dlls/user/user_main.c, programs/explorer/desktop.c:
	user: Make ExitWindowsEx asynchronous by deferring the real work to the
	explorer process.

2006-08-08  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Use case insensitive comparisons when comparing paths.

2006-08-07  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/msipriv.h, dlls/msi/package.c:
	msi: Fix the compressed files logic.
	If the compressed file attribute is not set, use the Word Count
	property to determine if files are compressed.

2006-08-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

2006-08-08  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Stub out remaining renderstates.

	* dlls/wined3d/device.c:
	wined3d: Correct check for GL ext. support in MULTISAMPLEANTIALIAS.

	* dlls/wined3d/device.c:
	wined3d: Add missing newline at the end of traces.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Registry setting for the amount of simulated texture memory.
	Set VideoMemorySize under HKCU\Software\Wine\Direct3D to amount in MB
	as string.

2006-08-07  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: lnkfile\shellex\ContextMenuHandlers\... is not supposed to have a
	default value.

	* tools/wine.inf:
	wine.inf: Don't create a fake exe and change the name at the same time.
	This confuses installers that think said exes can be run when this is
	not the case and cannot work.

	* tools/wine.inf:
	wine.inf: Use %CurrentVersionNT% wherever applicable.

	* dlls/mlang/regsvr.c:
	mlang: Fix the 'Multi Language String' CLSID: there is no
	{44EC053A-B70D-11D0-B188-00AA0038C969} CLSID in the Windows registry.

	* include/shlguid.h:
	shell32: Add CLSID_CUrlHistory and CLSID_CURLSearchHook.

	* dlls/inseng/Makefile.in, dlls/inseng/inseng.spec,
	  dlls/inseng/inseng_main.c, dlls/inseng/regsvr.c:
	inseng: Switch to the standard regsvr.c registration code.
	Now the CLSID_DLManager and CLSID_ActiveSetupEng keys get proper display names.
	This also gives us DllUnregisterServer() for free.

	* dlls/itss/regsvr.c:
	itss: Register CLSID_ITSProtocol. Tweak the registration code (via copy/paste)
	so we can register its VersionIndependentProgID.

	* dlls/oleaut32/regsvr.c:
	oleaut32: Set some missing ProxyStubClsid fields.

	* dlls/ole32/regsvr.c:
	ole32: Add a BaseInterface where needed.

2006-08-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Textureops caps fix.

2006-08-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/sysparams.c, dlls/user/tests/text.c:
	user/tests: Write-strings and cast-qual warnings fix.

	* dlls/shell32/dialogs.c, dlls/shell32/shellord.c:
	shell32: Write-strings warnings fix.

2006-08-07  James Hawkins <truiken@gmail.com>

	* dlls/wintrust/wintrust_main.c:
	wintrust: Always return ERROR_SUCCESS in WinVerifyTrust.

	* dlls/msi/tests/package.c:
	msi: Add tests for MsiGetProperty.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* aclocal.m4, configure:
	configure: Fixed soname detection on MacOS by using otool instead of ldd.

2006-08-05  Kevin Koltzau <kevin@plop.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/hid/Makefile.in, dlls/hid/hid.spec, dlls/hid/main.c,
	  dlls/hid/version.rc:
	hid: Initial implementation.

2006-08-07  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/wininet/internet.c:
	wininet: Add INTERNET_OPTION_SECURITY_FLAGS stub to InternetSetOptionW.

2006-08-07  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/undo.c, dlls/riched20/wrap.c:
	riched20: New, clean, simple selection repaint logic - should fix all outstanding
	refresh issues.

2006-08-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Stub D3DPERF_ functions.

	* dlls/wined3d/query.c, include/wine/wined3d_gl.h:
	wined3d: Allow async occlusion queries.

	* dlls/wined3d/query.c:
	wined3d: Improve a few query traces.
	The query type is useful to have in query TRACEs.
	IWineD3DQueryImpl_GetDataSize isn't really a stub.

	* dlls/wined3d/query.c:
	wined3d: Check Occlusion query GL calls.

	* dlls/wined3d/utils.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Add a couple of traces to the vertexdeclaration creation code.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, dlls/Makedll.rules.in,
	  dlls/Makeimplib.rules.in, dlls/wineps.drv/Makefile.in,
	  documentation/Makefile.in, fonts/Makefile.in, include/Makefile.in,
	  libs/wine/Makefile.in, loader/Makefile.in, programs/Makefile.in,
	  programs/Makeprog.rules.in, programs/winedbg/Makefile.in,
	  programs/winemenubuilder/Makefile.in, server/Makefile.in,
	  tools/Makefile.in, tools/widl/Makefile.in, tools/winapi/Makefile.in,
	  tools/winebuild/Makefile.in, tools/winedump/Makefile.in,
	  tools/winegcc/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	makefiles: Use make dependencies to create installation directories.
	This avoids a lot of redundant calls to mkinstalldirs.

	* dlls/ntdll/signal_i386.c:
	ntdll: Get rid of the Linux legacy signal stack switching.
	It doesn't work right in 32-bit code anyway.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Cleanup signal_i386.c a bit and fix *BSD.

2006-08-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	ole32: Tell the advise holder what the data delegate is in DefaultHandle_DAdvise
	if we are already connected.

	* dlls/ole32/oleobj.c:
	ole32: Finish off delegate notifications in the data advise holder.
	Advise the data delegate object when new advises come in on the data
	advise holder, not just when connecting.
	Unadvise the data delegate object when unadvising a connection on the
	data advise holder, when destructing the data advise holder and when
	disconnecting.

2006-08-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Signal event after we queued an event. Not before.

2006-08-05  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/Makefile.in, dlls/netapi32/access.c,
	  dlls/netapi32/local_group.c, dlls/netapi32/netapi32.spec,
	  include/lmaccess.h:
	netapi32: Add stubs for remaining NetLocalGroup* functions.
	Move existing NetLocalGroup* functions to local_group.c.
	Add stubs for remaining NetLocalGroup* functions.

2006-08-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Missing bits from previous patch about variables with constant values.

2006-08-07  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, Makefile.in, documentation/Makefile.in:
	Make.rules: Make all submake invocations silent for consistency.

	* dlls/ntdll/directory.c:
	ntdll: Fixed buffer overflow in NtQueryDirectoryFile optimisation.

2006-08-06  Francois Gouget <fgouget@free.fr>

	* dlls/usp10/tests/usp10.c:
	usp10/tests: Add trailing '\n's to ok() calls.

	* dlls/ddraw/direct3d.c, dlls/ddraw/tests/refcount.c,
	  dlls/mciavi32/mciavi.c, dlls/mciseq/mcimidi.c,
	  dlls/mciwave/mciwave.c, dlls/msi/msi.c, dlls/ole32/compobj.c,
	  dlls/shell32/trash.c, dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexbuffer.c, include/mlang.idl:
	Assorted spelling fixes.

2006-08-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: texture caps fixes.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: General constant caps fix.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* configure, configure.ac, include/config.h.in, include/wine/pthread.h,
	  loader/pthread.c:
	loader/pthread: Added pthread_attr_get_np support.

2006-08-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Fix the dialog centering logic.

	* dlls/kernel/powermgnt.c:
	kernel32: Change some FIXMEs to WARNs.

	* dlls/cabinet/cabinet.h, dlls/cabinet/cabinet_main.c,
	  dlls/cabinet/tests/extract.c:
	cabinet: Fix and test the undocumented Extract function.
	The paths are MAX_PATH length.
	The last field is list of files which is checked when flags = 0.
	Add tests for the flag in the file list.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Split the cabinet path for FDICopy.

2006-08-07  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/oleview/Ko.rc:
	oleview: Updated Korean resource.

2006-08-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c, dlls/d3d9/device.c:
	d3d: Don't crash when SetRenderTarget() is called with a NULL pSurface.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix D3DCOLOR swizzling in shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Delay vertex shader compilation until the shader is first used.

2006-08-05  Tijl Coosemans <tijl@ulyssis.org>

	* dlls/ntdll/directory.c:
	ntdll: Add FreeBSD default serial port device.

	* dlls/oleaut32/tests/vartype.c:
	oleaut32/tests: Test relative error, not absolute.

2006-08-05  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add some more RIDs.

2006-08-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/tests/devinst.c, dlls/setupapi/tests/query.c:
	setupapi/tests: Write-strings warnings fix.

	* dlls/secur32/tests/main.c, dlls/secur32/tests/schannel.c:
	secur32/tests: Write-strings warnings fix.

2006-08-05  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Some more exports requested from msvcr80.dll.

2006-08-05  Francois Gouget <fgouget@codeweavers.com>

	* tools/wine.inf:
	wine.inf: We should not override existing associations.

	* dlls/mshtml/mshtml.inf:
	mshtml: Fix the .jfif Content Type.

2006-08-04  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c, dlls/riched20/paint.c:
	riched20: Ensure text is wrapped before invalidating selection.

2006-08-05  Alexandre Julliard <julliard@winehq.org>

	* libs/.gitignore, libs/wine/Makefile.in:
	libwine: Add a minor number to the library filename for future extensions.

	* configure, configure.ac, libs/.gitignore, libs/Makelib.rules.in,
	  libs/wine/Makefile.in:
	libs: Get rid of Makelib.rules since we only have one library now.
	Merge all the rules into the libwine makefile.

2006-08-04  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetUserGetLocalGroups.

	* dlls/netapi32/access.c:
	netapi32: Return an error for unimplemented levels in NetUserGetInfo.

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.spec:
	netapi32: Add stub for NetLocalGroupEnum.

	* dlls/wtsapi32/wtsapi32.c, dlls/wtsapi32/wtsapi32.spec:
	wtsapi32: Add some stubs.

2006-08-04  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/install.c, dlls/msi/msipriv.h, dlls/msi/tests/package.c,
	  include/msiquery.h:
	msi: Write-strings warnings fix.

2006-08-05  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c, dlls/wined3d/volume.c,
	  include/wine/wined3d_gl.h:
	wined3d: Volume textures fix.

2006-08-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/directx.c:
	wined3d: Raster caps fix.

	* dlls/wined3d/directx.c:
	wined3d: Primitive misc caps fix.

2006-08-04  Kevin Koltzau <kevin@plop.org>

	* dlls/setupapi/devinst.c:
	setupapi: Create an empty list when getting device interface classes.

2006-08-04  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/paint.c, dlls/riched20/run.c, dlls/riched20/string.c,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_SETPASSWORDCHAR and EM_GETPASSWORDCHAR.

2006-08-04  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/widl.c, tools/widl/write_msft.c:
	widl: Replace strdup, malloc and realloc with xstrdup, xmalloc and xrealloc.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/iphlpapi/Makefile.in:
	configure: Only link against libresolv where necessary.

	* configure, configure.ac, include/config.h.in, server/fd.c:
	server: Added support for kqueue() as an alternative to poll() on FreeBSD.

2006-08-04  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/basetexture.c:
	wined3d: Basetexture anisotropic fix.

	* dlls/wined3d/directx.c:
	wined3d: Fix a number of badly reported caps.

2006-08-04  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Call SetLastError in CreateWindowEx when WS_CHILD is set with no parent.

	* dlls/user/tests/win.c:
	user: Add a test for CreateWindowEx.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/win.c:
	user: Don't bother checking the WS_VISIBLE style on the desktop window.

2006-08-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement ScriptGetGlyphABCWidth.
	Add a test for ScriptGetGlyphABCWidth and ScriptCacheGetHeight.

2006-08-04  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add more SID tests.

2006-08-04  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Make the error output on a failed binding more informative
	by dumping information about the interface it is trying to bind to.

	* dlls/urlmon/Makefile.in, dlls/urlmon/urlmon.spec,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Delay-load cabinet.dll as native urlmon doesn't import it.

2006-08-04  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c:
	usp10: Implement ScriptIsComplex.

2006-08-03  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widl.c, tools/widl/widl.h:
	widl: Generate GUID (infile_i.c) files.

2006-08-03  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Use the initial dialog position values in the database when creating the
	dialog window.

2006-08-04  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c:
	usp10: Fix glyph comparsion between tests.

2006-08-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Fix a race condition at thread exit.

2006-08-03  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: Removes extra string allocation for varformat:VarMonthName.

2006-08-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Add an optimisation for NtQueryDirectoryFile to not read the
	whole directory if the mask doesn't contain any wildcards and the file
	exists on in the directory with the same case as the mask.

2006-08-04  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/oledlg/oledlg_Ko.rc:
	oledlg: Updated Korean resource.

2006-08-03  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c, dlls/advapi32/security.c, include/ntsecapi.h:
	advapi32: Add a computer SID to the registry.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c, include/winternl.h:
	ntdll: Fix some function arguments.

2006-08-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Surface pitch fix.

2006-08-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Fix handling offset in BSCallback.

2006-08-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Disable vertex arrays after we're done drawing from them.
	After drawing from a vertex array we should disable them, to prevent
	the next draw calls from potentially reading past their ends. This
	also moves the disabling of vertex attrib arrays (for shaders) into
	its own function.

2006-08-02  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/mshtml/mshtml_private.h, dlls/shdocvw/shdocvw.h,
	  tools/widl/parser.y:
	widl: Write forward declarations for coclass definitions.

2006-08-03  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Make EM_LINELENGTH work correctly for non-final paragraphs containing
	exactly one screen line.

	* dlls/riched20/editor.c:
	riched20: Make EM_GETLINE work properly in 1.0 emulation mode.

	* dlls/riched20/editor.c:
	riched20: Ctrl+A should be allowed in read-only controls too.

2006-08-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Added nsInputStream::Read implementation.

2006-08-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/stg_bigblockfile.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Ensure that a returned free block is valid in storage.
	Otherwise, an IStream_SetSize call followed by an IStream_Read call
	could fail with STG_E_DOCFILECORRUPT.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c, dlls/ole32/stubmanager.c:
	ole32: Fix CoLockObjectExternal to respect fLastUnlockReleases.

	* dlls/msi/action.c:
	msi: Fix the creation of shortcuts with a null icon index by mapping it to zero.

2006-08-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvfw32/msvideo16.c:
	msvfw32: Write-strings warning fix.

	* dlls/ole32/tests/clipboard.c:
	ole32/tests: Write-strings warnings fix.

	* dlls/riched20/tests/editor.c:
	riched20/tests: Write-strings warnings fix.

2006-08-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: Properly handle variable with const value (ie without location)
	in dwarf code.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Abstract the epoll functions a bit more.

2006-08-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* include/ntquery.h, include/shlguid.h:
	shell32: Add property ids to header files.

2006-08-03  Francois Gouget <fgouget@codeweavers.com>

	* include/shldisp.idl:
	include: Add the ShellFolderViewOC coclass.

2006-08-03  Stefan Siebert <stefan.siebert@web.de>

	* dlls/oleaut32/typelib.c:
	oleaut32: GetTypeInfoType - Return TYPE_E_ELEMENTNOTFOUND if index out of bounds.

2006-08-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/hlink/link.c:
	hlink: Avoid double computation of the string length.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/winex11.drv/init.c:
	winex11.drv: Comment out the XCloseDisplay call on process detach.
	It has a tendency to trigger X11 bugs, and it's not really useful anyway.

2006-08-02  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Implement function olefont:OLEFontImpl_IsEqual.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Conformance test for olefont:OLEFontImpl_IsEqual.

2006-08-03  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add missing define.

2006-08-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Paletted texture support.

2006-08-03  Mike McCormack <mike@codeweavers.com>

	* dlls/ddraw/Makefile.in, dlls/ddraw/main.c:
	ddraw: Don't link to wined3d, load it at runtime.
	This lets ddraw dlls built on a machine with OpenGL present run on other
	machines that may not have the OpenGL libraries installed.

2006-08-02  Thomas Kho <tkho@ucla.edu>

	* server/thread.c:
	server: Remove unused thread_apc member.

2006-08-03  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/notepad/Ko.rc:
	notepad: Updated Korean resource.

2006-08-02  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: Add that extra pixel to the variants of 'e' too.

2006-08-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/riched20/editor.c:
	riched20: Fixed handling of window private data for Win64.

2006-08-02  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Handle incorrect calls of window procedure.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/Makefile.in, dlls/advapi32/tests/lsa.c:
	advapi32: Check returned data from LsaQueryInformationPolicy.

2006-08-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32/tests: Write-strings warning fix.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/thunk.c:
	kernel32: Make some functions static.

	* dlls/hhctrl.ocx/chm.c, dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Make some functions static.

	* dlls/user/spy.c:
	user: Add some missing internal Wine messages to the message spy.

2006-08-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c, include/hlink.idl:
	hlink: Added HlinkTranslateURL tub implementation.

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c,
	  dlls/hlink/tests/hlink.c, include/hlink.idl:
	hlink: Added HlinkIsShortcut implementation.

	* dlls/ole32/moniker.c:
	ole32: Clean up OleRun.

2006-08-02  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/run.c:
	riched20: Added short descriptions to functions in run.c, just in case
	anybody had any doubts about what they actually do.

2006-08-02  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: By popular demand, add an extra pixel to the smallest strike of 'e'.

2006-08-02  Stefan Leichter <Stefan.Leichter@camline.com>

	* programs/winetest/Makefile.in:
	winetest: Added hlink tests.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/win.c, include/win.h,
	  include/wine/server_protocol.h, server/protocol.def, server/trace.c:
	user: Implementation of Get/SetWindowLongPtr for 64-bit platforms.
	Also use the same code for Get/SetWindowWord.
	Based on a patch by Ge van Geldorp.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	msi: Only ever write the long path for InProcServers.

	* dlls/msi/classes.c:
	msi: Register advertised components too.

2006-08-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/uxtheme/system.c:
	uxtheme: Make some variables static.

	* dlls/oledlg/insobjdlg.c:
	oledlg: Make a string static.

	* dlls/kernel/editline.c:
	kernel32: Make the keymap entries const.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/git.c,
	  dlls/ole32/ole2.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h:
	ole32: Make some functions and variables static.

	* dlls/msxml3/domdoc.c, dlls/msxml3/factory.c, dlls/msxml3/nodelist.c:
	msxml3: Make some functions and variables static.

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h:
	opengl32: Make some functions and variables static.

	* dlls/glu32/glu.c:
	glu32: Make some functions static.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c:
	dsound: Make some functions static.

	* dlls/winex11.drv/desktop.c, dlls/winex11.drv/settings.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11ddraw.h,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/xrandr.c,
	  dlls/winex11.drv/xvidmode.c:
	winex11.drv: Make some functions and variables static, and get rid of x11ddraw.h.

2006-08-01  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for SQL query markers.

	* dlls/msi/files.c:
	msi: A file that does not have the msidbFileAttributesCompressed bit set should
	be considered non-compressed.

	* dlls/msi/package.c, dlls/msi/tests/format.c:
	msi: Don't crash if an empty record is given to MsiProcessMessage.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/tests/package.c:
	msi: Set the install state to INSTALLSTATE_LOCAL for features with compressed
	files.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: LsaQueryInformationPolicy: do the right thing for both domains
	and accounts.

2006-08-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/Makefile.in, dlls/wintrust/wintrust.spec,
	  dlls/wintrust/wintrust_main.c:
	wintrust: Implement TrustIsCertificateSelfSigned.

	* dlls/crypt32/str.c:
	crypt32: Support more types in CertRDNToStr.

2006-08-02  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/msvfw32/msvfw32_Ko.rc:
	msvfw32: Updated Korean resource.

2006-08-01  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/shell32/version.h:
	shell32: Fix the file version string of the version resource.

2006-08-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/tests/process.c:
	kernel/tests: Write-strings warnings fix.

	* dlls/kernel/oldconfig.c, dlls/kernel/thunk.c:
	kernel: Write-strings warnings fixes.

2006-08-01  Dan Hipschman <dsh@linux.ucla.edu>

	* programs/oleview/typelib.c:
	oleview: Initialize TVITEM.lParam to NULL in EnumFuncs.

2006-08-01  Francois Gouget <fgouget@codeweavers.com>

	* dlls/mshtml/mshtml.inf:
	mshtml: Remove unwarranted REG_EXPAND_SZ flags.

2006-08-01  Alexandre Julliard <julliard@winehq.org>

	* libs/port/memmove.c:
	libport: Fixed invalid lvalue accesses in memmove.

2006-08-01  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/view/Ko.rc:
	view: Updated Korean resource.

2006-08-01  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Limit the width of the watermark to 164 pixels.

2006-07-31  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Limit the size of the header bitmap to 49x49.

	* dlls/comctl32/propsheet.c:
	comctl32: Invalidate the header area so that updated titles will be drawn.

	* dlls/comctl32/propsheet.c:
	comctl32: Wordwrap the sub title.

	* dlls/comctl32/propsheet.c:
	comctl32: The titles are already converted to unicode so always use DrawTextW
	to write them.

2006-08-01  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/trash.c:
	shell32: Send directories and non-regular files to the trash.

2006-08-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	user: Add a couple of missing bits to the SetWindowLong test.

2006-08-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltextcont.c, dlls/mshtml/nsiface.idl:
	mshtml: Added implementation of put_scrollTop and put_scrollLeft.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Store HTMLElement pointer in HTMLTextContainer.

2006-08-01  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/lsa.c:
	advapi32: More LsaQueryInformationPolicy tests.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/Makefile.in, dlls/hlink/link.c:
	hlink: Use ShellExecute to start the link if we can't get a IHlinkTarget.

2006-08-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/font.c:
	gdi: Fixed buffer overflow in GetCharABCWidthsI.

	* Make.rules.in, tools/makedep.c:
	makedep: Always search for includes in the standard directories, even without
	-I option.

	* Make.rules.in, tools/makedep.c:
	makedep: Don't add dependencies for system headers.

	* tools/makedep.c:
	makedep: Get rid of restrictions on line lengths. Merge lines that end in
	a backslash.

	* tools/makedep.c:
	makedep: Convert to standard Wine lists.

2006-07-28  Robert Shearman <rob@codeweavers.com>

	* dlls/msxml3/regsvr.c:
	msxml3: Add progids for MSXML.DOMDocument and MSXML.FreeThreadedDOMDocument.
	Don't delete the progid key when unregistering coclasses - this is now
	done in unregister_progids.

	* dlls/msxml3/regsvr.c:
	msxml3: Separate the writing of progids from the writing of classes.
	This allows writing multiple progids that refer to one class.
	Support writing out Version and VersionIndependentProgId keys for classes.

2006-07-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel/format_msg.c:
	kernel: Wsign-compare warning fix.

2006-07-31  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: LsaQueryInformationPolicy update.
	Update LsaQueryInformationPolicy to use correct computer name and SID.
	Add support for PolicyDnsDomainInformation.

2006-08-02  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/hlink/Makefile.in, dlls/hlink/tests/Makefile.in,
	  dlls/hlink/tests/hlink.c:
	hlink: Add a short test case.

	* dlls/hlink/link.c:
	hlink: Use CoTaskMemAlloc when returning memory to a caller.

	* dlls/hlink/link.c:
	hlink: Create a strdupW function and use it.

2006-07-31  Thomas Kho <tkho@ucla.edu>

	* dlls/msi/dialog.c:
	msi: Wake dialog on messages from external threads.

2006-07-31  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Fix a couple install state test cases.
	- Correctly handle the msidbComponentAttributesOptional component attribute.
	- Don't set a component's state to INSTALLSTATE_LOCAL if the
	msidbComponentAttributesSourceOnly attribute is provided.

	* dlls/msi/tests/package.c:
	msi: Fix the add_feature_entry helper function.

2006-07-31  Detlef Riekenberg <wine.dev@web.de>

	* include/ddk/winsplp.h:
	winsplp.h: Remove FAR, use W structs, fix typo.

2006-07-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dinput/tests/keyboard.c:
	dinput/tests: Write-strings warning fix.

	* dlls/dsound/tests/dsound8.c:
	dsound/tests: Write-strings warning fix.

2006-07-31  Robert Shearman <rob@codeweavers.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Ignore setting NULL window procs inside SetWindowLong.
	Add tests for SetWindowLong error cases.

2006-07-31  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fgetwc/s in binary mode.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Test fgetwc/s in binary mode.

	* dlls/msvcrt/file.c:
	msvcrt: Remove read_i loop and fix fread.

2006-07-31  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Set type_t kind field correctly for all types.

	* tools/widl/parser.y:
	widl: Set defined flag for coclasses.

2006-07-31  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add a stub implementation of SetupGetSourceInfo.

	* dlls/msi/action.c, dlls/msi/tests/package.c:
	msi: Set the install state to INSTALLSTATE_LOCAL for components with compressed
	files.

2006-07-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Improve dump_DispParms.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Add some validation for the DISPPARAMS structure in ITypeInfo::Invoke.

	* dlls/ole32/ole2.c, dlls/ole32/ole32.spec:
	ole32: Implement OleNoteObjectVisible as described by MSDN.

	* dlls/ole32/storage32.c:
	ole32: Remove a check on the share mode for the NULL filename case as the
	check is already done earlier in StgCreateDocfile.

2006-07-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Move the calling of the process entry point back to kernel32.
	Apparently some copy protection stuff relies on that.
	This reverts commit 50fca716fddf5af03b4c91ae5e950daff5fbdf2a.

	* dlls/ntdll/loader.c:
	ntdll: Set initial module refcount to 1 to avoid unloading during imports fixup.

	* loader/preloader.c:
	preloader: Added support for the new style DT_GNU_HASH symbol table.

	* loader/preloader.c:
	preloader: Fixed type checking in symbol lookup.

	* loader/preloader.c:
	preloader: Properly use the ELF hash table when looking up a symbol.

2006-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::Invoke implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added SetExtent and GetExtent implementation.

2006-07-31  Chris Robinson <chris.kcat@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Fix potential NULL dereference in IWineD3DSurfaceImpl_LockRect.

	* dlls/wined3d/device.c:
	wined3d: Avoid NULL dereference.

2006-07-31  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_GETLINE.

2006-08-01  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Use IsGUIDEqual to compare IIDs.

2006-07-31  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c:
	libwine: Better heuristic for finding the top of the address space on Linux.

2006-07-31  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Add computer sid support to LookupAccountSidW.

	* dlls/advapi32/advapi32_misc.h, dlls/advapi32/security.c:
	advapi32: Add more helper functions.
	Add ADVAPI_GetComputerSid.

2006-07-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register SHDocVw typelib.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.rc,
	  dlls/shdocvw/shdocvw_v1.idl:
	shdocvw: Added typelib.

2006-07-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update the Polish translation.

	* dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shresdef.h:
	shell32: Call the trashing code from SHFileOperationW.

	* dlls/shell32/Makefile.in, dlls/shell32/trash.c, dlls/shell32/xdg.c,
	  dlls/shell32/xdg.h:
	shell32: Add trashing support functions.

	* dlls/shell32/Makefile.in, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Add trashing confirmations.

2006-07-31  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/Makefile.in, dlls/oleaut32/tests/varformat.c,
	  dlls/oleaut32/tests/vartest.c:
	oleaut32: Move varformat conformance tests to new file varformat.c

2006-07-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/input.c, dlls/user/tests/input.c:
	user: Set buffer to '\0' in GetKeyNameTextA too.

2006-07-29  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix _getw.

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix fread.

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Fix _read and fgetc.

	* dlls/msvcrt/tests/file.c:
	msvcrt: File read buffer tests.

2006-07-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Initialize event sequence counter. And simplify code.

2006-07-29  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/security.c:
	advapi32: Add string sid tests.

	* dlls/advapi32/tests/security.c:
	advapi32: Print more info about failed test.

	* dlls/advapi32/advapi32_misc.h, dlls/advapi32/lsa.c,
	  dlls/advapi32/security.c:
	advapi32: Make ADVAPI_IsLocalComputer global and remove duplicate copy.
	Make debugstr_sid global.

2006-08-01  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Add function parameters to FIXME messages.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Add a test showing what STGM_TRANSACTED does for streams.

2006-07-30  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/direct3d.c:
	ddraw: Order Z-buffer formats by depth buffer bit depths in
	IDirect3DImpl_7_EnumZBufferFormats.

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Split the GLSL check in a check for GLSL vertex shaders and one for
	GLSL fragment shaders.

	* dlls/wined3d/device.c:
	wined3d: Improve IWineD3DDeviceImpl_CreateTexture trace.

	* dlls/wined3d/surface.c:
	wined3d: Use GL_LIMITS(samplers) instead of GL_LIMITS(sampler_stages) in
	IWineD3DSurfaceImpl_UnlockRect.

2006-07-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/comboex.c:
	comctl32/tests: Write-strings warnings fix.

	* dlls/advpack/tests/install.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Write-strings warning fix.

2006-07-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Change file path to URL in UrlCanonicalize.

	* dlls/urlmon/umon.c:
	urlmon: Use CoInternetParseUrl in URLMonikerImpl_Construct.

2006-07-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Use the right section size when setting protections.
	Use the same size computation when setting section protections than
	when mapping it in the first place (reported by Nicholas Miell).

2006-07-29  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c:
	ole32: Add some missing traces.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a test for IEnumSTATSTG.

	* dlls/msi/files.c:
	msi: Change an ERR to a WARN.

2006-07-28  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/proxy.c:
	widl: Fix "static declaration follows non-static declaration" in generated code.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Encode coclass types in typelibs.

	* tools/widl/parser.y:
	widl: Register types for coclasses.

	* tools/widl/write_msft.c:
	widl: Check if a typeinfo is already in a typelib before adding it.

	* tools/widl/write_msft.c:
	widl: Set typelib_idx for coclasses when they're added to a typelib.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/typelib.c, tools/widl/typelib.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Fold class_t into type_t.

2006-07-28  Thomas Kho <tkho@ucla.edu>

	* dlls/Maketest.rules.in:
	Maketest.rules.in: Fix comment.

2006-07-28  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c:
	advapi32: Fix debugstr_sid to print unsigned SubAuthority.

	* dlls/advapi32/security.c:
	advapi32: Move SID members from WELLKNOWNSID to MAX_SID.

2006-07-28  Yuriy Kozlov <yuriy.kozlov@gmail.com>

	* programs/regedit/regproc.c:
	regedit: Allow entering - for a value in a .reg file to delete that value.

2006-07-28  James Hawkins <truiken@gmail.com>

	* dlls/wininet/urlcache.c:
	wininet: Only copy the relative filename into the UrlEntry structure.

2006-07-28  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advpack/tests/advpack.c:
	advpack/tests: Write-strings warnings fix.

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

2006-07-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CryptHashPublicKeyInfo.

	* dlls/rsaenh/handle.c, dlls/rsaenh/handle.h:
	rsaenh: Use Interlocked functions for reference counting.

2006-07-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, include/dinput.h:
	dinput: Add DISCL_NOWINKEY define.

2006-07-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Skip processing of D3DSIO_PHASE instruction.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Declare a 1D sampler for TEXDP3TEX (GLSL).

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h,
	  include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Start checking for D3DUSAGE_QUERY_* items, improve traces.

2006-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Optimize d3dfmt_convert_surface.

	* configure, configure.ac, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/dga2.c, dlls/winex11.drv/dga2.h,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/mouse.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c, include/config.h.in:
	winex11.drv: Kill DGA support.

2006-07-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/stdole2.tlb/std_ole_v2.idl, include/Makefile.in,
	  include/stdole2.idl:
	stdole2.tlb: Move stdole2.tlb generation to include to allow importlib from
	other IDLs.

2006-07-29  Alexandre Julliard <julliard@winehq.org>

	* Make.rules.in, dlls/stdole2.tlb/Makefile.in,
	  dlls/stdole32.tlb/Makefile.in:
	Make.rules: Replace RC_TLB by IDL_TLB_SRCS as tlb files can be used for other
	things than resources.

2006-07-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c:
	user: Abort WaitForUserIdle if the target process died.

2006-07-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: More shader fixes / new instructions.
	- Replace gl_FragColor with gl_FragData[0] for GLSL pixel shader output.
	- Subtract 1 more constant from total GLSL allowed float constants to
	accommodate the PROJECTION matrix row that we reference.

2006-07-28  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: Render target texturing.

2006-07-28  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/msi/msi_main.c:
	msi: Native DllGetVersion does not fail if the supplied buffer is bigger
	than required.

	* dlls/msi/msipriv.h:
	msi: Make the version information of DllGetVersion same as in version resource.

2006-07-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c:
	rsaenh: More tests and some fixes.
	- correct deleting the default container
	- imported keys should be stored in their container, not just given to the caller
	- tests for these changes

2006-07-27  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/varformat.c:
	oleaut32: VarMonthName - Update error codes and helper functions.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: VarSub: Conformance test.

	* dlls/oleaut32/variant.c:
	oleaut32: VarSub: Fixes several data types and corrects error codes.

2006-07-28  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement GetTypeInfoCount and GetTypeInfo for standard pictures.

	* dlls/oleaut32/olefont.c:
	oleaut32: Implement GetTypeInfoCount for standard fonts.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement setting of the hPal property in IPictureDisp::Invoke.
	Remove some validation code that is already handled by a more generic
	case at the end of the function.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Implement getting of all properties in IPictureDisp::Invoke.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Add a test for passing an invalid number of input parameters into
	IFontDisp::Invoke with DISPATCH_PROPERTYGET.

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	oleaut32: Add validation for parameters in IPictureDisp::Invoke.
	Add some tests for IPictureDisp::Invoke.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Fix the return code for an invalid dispid in IFontDisp::Invoke.

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: Add a successful test for IFontDisp::Invoke.

	* dlls/oleaut32/olefont.c:
	oleaut32: Handle the Weight property in IFontDisp::Invoke.

2006-07-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/secur32/Makefile.in, dlls/secur32/schannel.c,
	  dlls/secur32/tests/Makefile.in, dlls/secur32/tests/schannel.c:
	secur32: Improve schannel's AcquireCredentialsHandle, with tests.

	* include/sspi.h:
	sspi.h: Add missing define.

2006-07-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for MsiDatabaseImport.

2006-07-27  Jacek Caban <jacek@codeweavers.com>

	* include/mshtml.idl:
	mshtml.idl: Fix SAFEARRAY argument declaration.

	* tools/widl/write_msft.c:
	widl: Reorder segments to match midl.

	* tools/widl/write_msft.c:
	widl: Use cval in ATTR_ID.

	* tools/widl/write_msft.c:
	widl: Added ATTR_BINDABLE handling to add_func_desc.

	* tools/widl/write_msft.c:
	widl: Store typekind in msft_typeinfo_t to fix ATTR_DUAL handling.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of GetControlInfo.

2006-07-27  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/d3d9/vertexdeclaration.c, dlls/gdi/tests/font.c:
	Fix 2 "static is not at beginning of declaration" warnings.

	* dlls/msi/tests/package.c:
	msi: 0xdeadbeef is too big for a signed int thus producing sign
	comparison warnings when compared to an int variable. Use 0xdeadbee
	instead.

2006-07-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/tests/prop.c:
	mapi32/tests: Write-strings warning fix.

	* dlls/msi/tests/install.c:
	msi/tests: Write-strings warning fix.

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings fix.

2006-07-27  Stefan Siebert <stefan.siebert@web.de>

	* programs/winebrowser/main.c:
	winebrowser: Pass any given argument that is not a mailto URL to the browser.

2006-07-27  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Don't crash if there's no args.

	* dlls/msi/action.c:
	msi: Don't set the shortcut's working directory if it's NULL.

	* dlls/msi/msi.c, dlls/msi/registry.c:
	msi: Fix some memory leaks.

2006-07-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Keyboard: Use the same event queue mechanism as mouse.

2006-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Do not use the IWineD3DSurface for the cursor.

2006-07-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Avoid a false ERR.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.18.

----------------------------------------------------------------
2006-07-27  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix minor typo from shader patch.

2006-07-27  Huw Davies <huw@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add lnkfile description.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Round up the timeout for poll() to avoid redundant calls.

	* server/request.c:
	server: Don't crash on invalid request sizes.

2006-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winhelp/winhelp.c:
	winhelp: Write-strings warning fix.

	* dlls/user/tests/menu.c:
	user/tests: Write-strings warnings fix.

2006-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/Makefile.in, dlls/msi/package.c:
	msi: Download the MSI package if it is a remote URL.

2006-07-26  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Implement CryptStrToNameA/W, with tests.

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_UNICODE_NAME encoding/decoding.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Public keys should be exported with the CALG_RSA_KEYX alg_id.

2006-07-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/oleaut32/olefont.c:
	oleaut32: Fixed compiler warning.

2006-07-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix some upside-down rendering issues for shaders.

2006-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/surface.c:
	wined3d: BltFast/BltOverride color keying.

2006-07-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warning fix.

2006-07-27  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Blacklist WINED3DFMT_R8G8B8.

2006-07-27  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wineconsole/wineconsole_Ko.rc:
	wineconsole: Updated Korean resource.

2006-07-27  Mike McCormack <mike@codeweavers.com>

	* include/commctrl.h:
	comctl32: Fix a typo.

	* dlls/msi/table.c, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix the value of LONG integers in records (suggested by James Hawkins).

	* dlls/msi/tests/format.c:
	msi: Remember to free a handle.

	* dlls/msi/cond.y:
	msi: Fix some memory leaks in the condition parser.

	* dlls/msi/appsearch.c, dlls/msi/msi.c:
	msi: Use msi_alloc/free, not HeapAlloc/Free.

2006-07-26  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/install.c:
	msi: Test the column types of MSI packages.

	* dlls/msi/tests/package.c:
	msi: Test the states of a component with a compressed file.

	* dlls/msi/table.c:
	msi: Fix a typo.

2006-07-26  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/dinput8_main.c:
	dinput8: Better DirectInput8Create warning.

2006-07-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Change '/'->'\' only for file protocol in UrlCanonicalize.

	* dlls/mshtml/protocol.c:
	mshtml: Fix handling res URLs with full path and number resource ID.

2006-07-26  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Add validation of some more parameters in IFontDisp::Invoke.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut32: Clean up IFontDisp::Invoke by using VariantChangeTypeEx to coerce
	the input parameter into the correct type.

	* dlls/ole32/regsvr.c:
	ole32: Add more self-registration entries for classes and interfaces.

2006-07-26  Huw Davies <huw@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add inifile entries.

2006-07-24  Thomas Kho <tkho@ucla.edu>

	* programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c:
	wcmd: Correct handling of quotes and /s flag when a command argument is present.

2006-07-23  Kovács András <andras@csevego.net>

	* dlls/wined3d/device.c:
	wined3d: Fix CopyRects if pDestPointsArray is NULL.

2006-07-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/monitor.c, dlls/winex11.drv/settings.c:
	x11drv: Number of fixes for ChangeDisplaySettingsEx with tests.

2006-07-26  Ge van Geldorp <ge@gse.nl>

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/be_x86_64.c, programs/winedbg/break.c,
	  programs/winedbg/db_disasm.c, programs/winedbg/debugger.h,
	  programs/winedbg/memory.c, programs/winedbg/source.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/tgt_active.c, programs/winedbg/tgt_minidump.c,
	  programs/winedbg/types.c:
	winedbg: Change ADDRESS variables to ADDRESS64 so we can handle 64-bit addresses.

2006-07-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: More efficient color keying dirtifying.
	Instead of blindly dirtifying the surface LoadTexture keeps track of
	the color key that was used when creating the opengl texture and
	reloads the surface if the color key has changed.

2006-07-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	ddraw: Support using an application-provided surface pointer.

2006-07-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/record.c, dlls/msi/tests/record.c:
	msi: Fix an off by one error in MsiRecordGetString.

	* dlls/msi/Makefile.in, dlls/msi/join.c, dlls/msi/query.h, dlls/msi/sql.y:
	msi: Implement SQL inner joins.

2006-07-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/tests/store.c:
	crypt32/tests: Clean up temp files.

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/server.c,
	  dlls/ntdll/time.c, include/wine/server_protocol.h, server/object.h,
	  server/protocol.def, server/request.c, server/thread.c,
	  server/trace.c:
	server: Convert the server start time to the abs_time_t type.

	* dlls/ntdll/thread.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/thread.c, server/thread.h,
	  server/trace.c:
	server: Convert thread creation/exit times to the abs_time_t type.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/process.c, dlls/ntdll/sync.c,
	  dlls/ntdll/time.c:
	ntdll: Renamed the NTDLL_get/from_server_timeout functions since they don't
	deal only with timeouts.

	* dlls/user/message.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Rename the wait_input_idle request to better reflect what it does.
	Also get rid of the unused timeout field.

	* server/fd.c, server/file.h, server/mailslot.c, server/named_pipe.c,
	  server/serial.c:
	server: Make the create_async function take an absolute timeout.

2006-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* server/console.c, server/ptrace.c, server/queue.c, server/registry.c,
	  server/token.c:
	server: Fix some comparisons between signed and unsigned.

2006-07-26  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server.h, include/wine/server_protocol.h, server/atom.c,
	  server/console.c, server/debugger.c, server/file.c, server/hook.c,
	  server/object.c, server/object.h, server/process.c, server/process.h,
	  server/protocol.def, server/ptrace.c, server/queue.c,
	  server/region.c, server/registry.c, server/request.c,
	  server/request.h, server/snapshot.c, server/symlink.c,
	  server/token.c, server/trace.c, server/user.h, server/window.c,
	  server/winstation.c, tools/make_requests:
	server: Added data_size_t type to represent sizes in the server protocol.
	Make it an unsigned int to save some space on Win64, if we need to
	transfer more than 4Gb over the server pipe something is seriously
	wrong.

2006-07-25  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix the case when CPGetHashParam should return the size of the HASHVAL.

	* dlls/rsaenh/rsaenh.c:
	rsaenh: Fix the case when the CPEncrypt function is asked for the needed
	buffer size.

2006-07-25  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/msi/tests/db.c:
	msi/tests: Write-strings warnings fix.

2006-07-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/winefile/Ko.rc:
	winefile: Updated Korean resource.

2006-07-25  Samuel Lidén Borell <samuellb@bredband.net>

	* dlls/dmime/performance.c:
	dmime: Accept IDirectMusicPerformance2 in QueryInterface.

2006-07-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c, dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Implement file stores.

2006-07-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c:
	wined3d: Enable all bump mapping formats.

2006-07-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix crash caused by bad TRACE.

2006-07-25  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Remove superfluous breaks.

2006-07-25  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Allow trailing commas in attribute lists.

2006-07-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/sql.y:
	msi: Add a FIXME for join queries.

2006-07-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/tests/install.c, dlls/msi/tests/package.c:
	msi: Always load all the components.

2006-07-25  Robert Shearman <rob@codeweavers.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c:
	dbghelp: Implement SymGetSymFromAddr64.

	* configure, configure.ac, dlls/oleaut32/olepicture.c,
	  include/config.h.in:
	configure: Add a check for the DGifOpen function in the gif_lib.h header as
	the v4 of the file does define it, while v3 doesn't.

2006-07-24  Stefan Siebert <stefan.siebert@web.de>

	* dlls/comdlg32/filedlg.c:
	comdlg32: GetOpenFileNameW - Create unicode windows.

2006-07-25  Alexandre Julliard <julliard@winehq.org>

	* programs/uninstaller/main.c:
	uninstaller: Fail more gracefully when the registry key is missing.

2006-07-23  Neil Skrypuch <ns03ja@brocku.ca>

	* dlls/oleaut32/safearray.c:
	oleaut32: Adding a NULL to a safearray is supposed to crash.

2006-07-25  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/server.c:
	ntdll: Avoid accessing the TEB after the memory view has been released.
	When using reserved areas the memory could potentially be reused right
	after the release.

	* server/ptrace.c:
	server: Try harder to find a suitable thread for read/write_process_memory.

2006-07-20  Thomas Kho <tkho@ucla.edu>

	* server/process.c:
	server: Add new threads to end of thread_list.

2006-07-14  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support for SMVARRAY in EmbeddedComplexSize.

2006-07-24  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions.
	Implement D3DSIO_TEXREG2AR, TEXREG2GB, TEXREG2RGB, TEXM3X3TEX, TEXM3X3SPEC.

2006-07-25  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/query.h, dlls/msi/tests/db.c, dlls/msi/where.c:
	msi: Fix where queries on 32bit integer columns.

2006-07-24  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/db.c:
	msi: Add tests for the WHERE SQL clause.

2006-07-25  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/wineps.drv/wps_Ko.rc:
	wineps.drv: Updated Korean resource.

2006-07-25  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/query.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Add real occlusion query support.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Add traces to IWineD3DVertexShaderImpl_SetFunction &
	IWineD3DPixelShaderImpl_SetFunction.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexbuffer.c:
	wined3d: D3d8 shaders can have a NULL pFunction, but a valid vertex declaration.

2006-07-24  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.l, tools/widl/parser.y:
	widl: Support SAFEARRAY(type) syntax.

	* tools/widl/header.c:
	widl: Fix redefinition of types in output.

2006-07-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/webbrowser.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added more test and fixes.

2006-07-24  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Use the correct name when writing the fixed font registry value.

2006-07-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/tests/msg.c:
	user: Add more TrackMouseEvent tests, particularly a test with
	injected mouse move events. Fix a problem detected by the test.

2006-07-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c:
	user: Various TrackMouseEvent fixes.
	- Use WINPOS_WindowFromPoint instead of WindowFromPoint in order to
	use hittest directly to simplify the code.
	- WM_NCMOUSEHOVER and WM_MOUSEHOVER take different parameters.

	* dlls/user/winpos.c:
	user: Add a trace to EndDeferWindowPos.

	* dlls/user/input.c:
	user: Use (win) debug channel by default, add a TRACE to SendInput.

2006-07-24  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/stubs.c:
	setupapi: Move SetupDiGetClassDevsExW into devinst.c.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	msi: Use CLSIDFromString to make squash_guid a bit more robust.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Make MsiConfigureFeature a bit more robust.

	* dlls/msi/Makefile.in, dlls/msi/msi.c, dlls/msi/msi_main.c,
	  dlls/msi/msipriv.h:
	msi: Move COM server implementation to a separate file.

	* configure, configure.ac:
	configure: Check for freetype-config first, then use the libraries it specifies.

2006-07-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_types.h:
	wined3d: Improve traces for D3DTRANSFORMSTATETYPE.
	Added debug function for WINED3DTRANSFORMSTATETYPE and changed all
	references from D3DTS_* to WINED3DTS_*.

2006-07-24  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/main.c, loader/preloader.c:
	preloader: Allocate more space in low memory as well as for top-down allocations.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Allocate the PEB with NtAllocateVirtualMemory too.

	* dlls/ntdll/virtual.c:
	ntdll: Support memory allocations inside reserved areas.

	* dlls/ntdll/virtual.c:
	ntdll: Propagate the MEM_TOP_DOWN flag into the map_view() function.

	* include/wine/library.h, libs/wine/mmap.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Added a function to enumerate the reserved mmap areas.

2006-07-24  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/msi.c:
	msi: The szLogFile parameter of MsiEnableLogW is optional, so handle the case
	of it being NULL.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set BufferMark before calling EmbeddedPointerMarshall,
	EmbeddedPointerUnmarshall or EmbeddedPointerMemorySize.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Improve the stubs for RpcImpersonateClient and RpcRevertToSelf.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support small fixed arrays in EmbeddedComplexSize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Allocate memory based on MaxCount, not ActualCount in
	NdrConformantStringUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add support for marshaling the FC_HYPER base type in complex types.
	Change the FIXME messages to print out unrecognised format characters in
	hex rather than decimal.

	* dlls/uuid/uuid.c:
	uuid: Add IIDs and CLSIDs from xmldso.h.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialize pRetVal in ITypeInfo::Invoke before calling VariantCopyInd
	as native doesn't assume that it doesn't contain valid data.

	* dlls/msxml3/Makefile.in, dlls/msxml3/main.c, dlls/msxml3/regsvr.c:
	msxml3: Use general DLL registration framework to register CLSIDs and ProgID's.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/msi.c:
	msi: Add a test case for MsiGetFileHash.

	* dlls/msi/msi.c:
	msi: Implement MsiGetFileHash.

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Avoid an uninitialized variable warning.

2006-07-24  Alexandre Julliard <julliard@winehq.org>

	* programs/winevdm/winevdm.c:
	winevdm: Load sound.drv too.

2006-07-21  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/header.c:
	widl: Allow write_type to output full pointer types.

2006-07-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Draw the cursor.

2006-07-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Use the ddraw blitting code for IWineD3DDevice::ColorFill.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Reimplement MsiGetUserInfo using awstrings.

2006-07-23  Dan Kegel <dank@kegel.com>

	* dlls/winedos/int21.c:
	winedos: Limit reported disk space to 1GB.

2006-07-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h:
	wined3d: Replace memset/memcpy routines on stateblock (fixes dynamic shader
	constants regression).

2006-07-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/tests/printdlg.c:
	comdlg32/tests: PrintDlg with PD_RETURNDEFAULT can fail.

2006-07-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device_private.h:
	dinput: Simplify code a bit.

2006-07-23  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/dinput_main.c:
	dinput: Fix small typo.

2006-07-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c, dlls/wined3d/utils.c:
	wined3d: Whitelist pixelformats instead of blacklisting.

	* dlls/wined3d/surface.c:
	wined3d: Reactivate the X bits fixup.

2006-07-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/registry.c:
	msi: MoveMsiEnumPatches to registry.c

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register MruListLong.

	* dlls/hlink/hlink_main.c:
	hlink: Implement HlinkNavigateToStringReference.

	* dlls/hlink/link.c:
	hlink: Only release an object that we successfully created.

	* dlls/query/query.spec, dlls/query/query_main.c:
	query: Add a stub implementation for LocateCatalogs.

2006-07-24  Hwang YunSong(황윤성 <hys545@dreamwiz.com>

	* programs/winhelp/Ko.rc:
	winhelp: Updated Korean resource.

2006-07-23  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	winnt.h: Add more SID defines.

2006-07-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/session.c:
	urlmon: Don't use freed string in TRACE.

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in IPersistStreamInit::Load.

2006-07-22  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define one more avi resource.

2006-07-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Add tests for component and feature states.

2006-07-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/tests/shlexec.c:
	shell32/tests: Write-strings warnings fix.

2006-07-21  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  include/richedit.h:
	riched20: Write-strings warnings fix.
	The string members of the FINDTEXT and FINDTEXTEX structs are declared
	constant in the SDK.

2006-07-21  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added interface handling to idl display.

2006-07-21  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Expand features with odd Display values.

	* dlls/msi/dialog.c:
	msi: Don't display a feature if its Display value is zero.

	* dlls/msi/action.c:
	msi: Set the component's initial state based on its attributes.

2006-07-21  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Minor trace corrections in Set___ShaderConstants().

2006-07-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Do not try to create a vbo more than once.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Move vertex fixups into their own function.

2006-07-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Use NtAllocateVirtualMemory to allocate all TEBs except the first one.

2006-07-20  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Fix missing tests and heap errors for VarCat conformance.

	* dlls/oleaut32/variant.c:
	oleaut32: Fix temp variant initialization issues in VarCat.

2006-07-20  Stefan Siebert <stefan.siebert@web.de>

	* dlls/kernel/time.c, dlls/ntdll/process.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	ntdll: Implementation of process CreationTime and ExitTime.

2006-07-20  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec,
	  include/setupapi.h:
	setupapi: Implemented SetupDiCreateDeviceInfoA.

	* dlls/setupapi/tests/devinst.c:
	setupapi: Rename a test.

2006-07-20  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Partial LookupAccountSid implementation.

2006-07-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/heap.c:
	ntdll: Simplify the sanity checks in RtlFreeHeap and RtlReAllocateHeap.

	* dlls/ntdll/heap.c:
	ntdll: Set a proper HEAP_MIN_DATA_SIZE on 64-bit platforms.

	* dlls/ntdll/heap.c:
	ntdll: Add a few more free list entries to the heap.

2006-07-21  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/comdlg32/cdlg_Ko.rc:
	comdlg32: Updated Korean resource.

2006-07-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Handle W/A conversions more correctly in MsiProvideQualifiedComponentEx.

	* dlls/msi/msi.c:
	msi: Use msi_reg_get_val_str() to read a registry value.

	* dlls/msi/msi.c, dlls/msi/msi.spec:
	msi: Add a stub implementation for MsiProvideQualifiedComponentExA.

	* dlls/msi/msi.c:
	msi: Components with INSTALLSTATE_NOTUSED are considered present.

	* dlls/msi/msi.c:
	msi: A component with an empty path is not used.

	* dlls/msi/msi.c:
	msi: Use TRACE not FIXME for already implemented functions.

2006-07-20  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c:
	d3d9: State management test framework for d3d9.

	* dlls/wined3d/device.c:
	wined3d: Respect EnableAutoDepthStencil parameter.

	* dlls/wined3d/stateblock.c:
	wined3d: Correct initial render states.

	* dlls/wined3d/device.c:
	wined3d: Do not return WINED3DERR_INVALIDCALL for Phong shading.

	* dlls/wined3d/device.c:
	wined3d: Restore recording mode later in ActiveRender().

	* dlls/wined3d/device.c:
	wined3d: Read shader constants from correct stateblock.

2006-07-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mscms/tests/profile.c:
	mscms/tests: Write-strings warnings fix.

2006-07-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/tests/msg.c:
	user: Add a TrackMouseEvent test, make it pass under Wine.

2006-07-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add functionality for ScriptXtoCP and ScriptCPtoX calls.

2006-07-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ole32.spec, dlls/ole32/tests/compobj.c:
	ole32: Implement CoRegisterPSClsid.

2006-07-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Don't use fixed-size buffers in AppSearch action.

2006-07-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c, tools/wine.inf:
	dinput8: DirectInput8Create rewrite.

2006-07-19  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/olefont.c:
	oleaut32: OLEFontImpl_GetIDsOfNames conformance test.

	* dlls/oleaut32/olefont.c:
	oleaut32: Implements OLEFontImpl_GetIDsOfNames.

2006-07-19  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/comdlg32/filedlg31.c:
	comdlg32: Remove redundant headers.

2006-07-19  Ge van Geldorp <ge@gse.nl>

	* dlls/gdi/freetype.c:
	gdi: Use variables of correct size.

2006-07-19  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c, dlls/setupapi/setupapi.spec:
	setupapi: Add stub for SetupDiCreateDeviceInfoW.

	* dlls/setupapi/devinst.c:
	setupapi: Remove unneeded NULL checks before MyFree().

2006-07-19  James Hawkins <truiken@gmail.com>

	* dlls/msi/events.c:
	msi: Implement the SetInstallLevel event.

	* dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Forward MsiSetInstallLevel to an internal MSI_SetInstallLevel that can
	be used internally.

	* dlls/msi/action.c, dlls/msi/install.c, dlls/msi/msipriv.h:
	msi: Update feature states after changing install levels, as they may have
	changed.

	* dlls/msi/action.c:
	msi: Rename SetFeatureStates to match the naming scheme of internal msi
	functions.

2006-07-20  Mike McCormack <mike@codeweavers.com>

	* include/amstream.idl, include/ddstream.idl, include/dispex.idl,
	  include/downloadmgr.idl, include/dyngraph.idl, include/mlang.idl,
	  include/mmstream.idl, include/mshtmhst.idl, include/mshtml.idl,
	  include/msxml.idl, include/msxml2.idl, include/objidl.idl,
	  include/tom.idl, include/urlmon.idl, include/xmldom.idl,
	  include/xmldso.idl:
	include: Remove unnecessary semicolons from idl.

	* include/.gitignore, include/Makefile.in, include/dbinit.idl,
	  include/dbprop.idl, include/dbs.idl, include/oledb.idl:
	oledb: Add oledb.idl and some idl files it depends on.

2006-07-19  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Use -fno-builtin to avoid warnings with gcc 4.1.1.

2006-07-20  Mike McCormack <mike@codeweavers.com>

	* include/control.idl, include/hlink.idl, include/indexsvr.idl,
	  include/mshtmhst.idl, include/objsafe.idl, include/propidl.idl,
	  include/pstore.idl, include/richole.idl, include/shobjidl.idl,
	  include/wine/itss.idl:
	include: Semicolons after cpp_quote are a syntax error in midl.

2006-07-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Implement and test ScriptCacheGetHeight.

2006-07-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c:
	urlmon: Added PARSE_CANONICALIZE implementation in CoInternetParseUrl.

	* dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c, dlls/mshtml/install.c,
	  dlls/mshtml/loadopts.c, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c, dlls/mshtml/persist.c,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c, dlls/mshtml/view.c:
	mshtml: Wrap remaining Heap* functions by inline functions.

2006-07-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: FTP_FtpDeleteFileW expects a LPWININETFTPSESSIONW.

2006-07-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/dnsapi/tests/name.c:
	dnsapi/tests: Write-strings warnings fix.

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: Write-strings warnings fix.

2006-07-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Compilation fixes.

2006-07-20  Kovács András <andras@csevego.net>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: joydev_enum_deviceA now returns the correct value.

2006-07-20  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc:
	comctl32: Updated Korean resource.

2006-07-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Implement more string types for X509_NAME_VALUE.

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Correct handling of empty output buffer in CertRDNValueToStr and
	CertNameToStr.

	* dlls/msi/appsearch.c:
	msi: Implement ACTION_AppSearchIni.

2006-07-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	ntdll: Null-terminate strings returned by VFAT_IOCTL_READDIR_BOTH to work
	around a kernel bug.

2006-07-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: FTP_FtpRenameFileW expects a LPWININETFTPSESSIONW.

2006-07-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_UNICODE_NAME_VALUE encoding/decoding.

	* dlls/msi/appsearch.c:
	msi: Implement searching parent in ACTION_AppSearchReg.

2006-07-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Implement MsiConfigureFeatureW.

	* dlls/msi/msi.c:
	msi: Fix the size of base 85 GUIDs.

	* dlls/msi/action.c:
	msi: Only load the features and files tables once.

2006-07-18  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added data freeing in TypeLib Viewer.

	* programs/oleview/main.h, programs/oleview/typelib.c:
	oleview: Added some features to IDL data displaying.

	* programs/oleview/main.h, programs/oleview/pane.c,
	  programs/oleview/typelib.c:
	oleview: Added skeleton for IDL files generation.

2006-07-18  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add ScriptStringCPtoX and ScriptStringXtoCP stubs.

2006-07-19  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Make sure the WINEPRELOADRESERVE area doesn't overlap the low
	memory area.

	* dlls/kernel/process.c:
	kernel: Simplify set_process_name now that it doesn't have to handle winevdm.

	* dlls/kernel/process.c, dlls/ntdll/virtual.c:
	kernel: Added support for exec'ing a new Win32 process.
	Use it to restart execution if the main binary can't be loaded because
	of address space conflicts, and also for Win16/DOS support.

	* dlls/kernel/process.c, dlls/ntdll/server.c,
	  include/wine/server_protocol.h, server/process.c, server/process.h,
	  server/protocol.def, server/request.c, server/trace.c:
	server: Simplify process creation.
	Pass the socket for the new process from the parent through the
	environment.
	Perform initialisations during the new_process request.

2006-07-19  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/vertexdeclaration.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Make the number of floating point shader constants dynamic.

2006-07-17  Stefan Leichter <Stefan.Leichter@camline.com>

	* dlls/crypt32/tests/crl.c:
	crypt32: Make tests loadable on NT4.

2006-07-18  James Hawkins <truiken@gmail.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Add a stub implementation of MsiSourceListClearAll.

	* dlls/msi/action.c, dlls/msi/dialog.c:
	msi: Sort SelectionTree items by their Display value.

2006-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/msi/files.c:
	msi: Create files with the correct file attributes.

2006-07-18  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Check the right pointers for NULL.

	* dlls/msi/msi.c:
	msi: Set properties, not the command line in MsiReinstallFeatureW.

	* dlls/msi/install.c, dlls/msi/msi.spec:
	msi: Implement MsiSetInstallLevel.

2006-07-19  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/mshtml/Ko.rc:
	mshtml: Updated Korean resource.

2006-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Write-strings warnings fix.

2006-07-18  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/main.c:
	crypt32/tests: Write-strings warnings fix.

2006-07-18  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Update error codes for VarMod.

2006-07-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: removeChild should catch a NULL child node.

	* dlls/msxml3/tests/domdoc.c:
	msxml3: Add a test to check that selectSingleNode returns a NULL-ptr when it
	doesn't find a match.

2006-07-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Set name in ACTION_AppSearchGetSignature.

	* dlls/crypt32/encode.c:
	crypt32: Don't return from a try block.

2006-07-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml.spec:
	mshtml: Added stub implementation of ShowHTMLDialog.

2006-07-17  Dan Hipschman <dsh@linux.ucla.edu>

	* libs/wpp/ppl.l:
	wpp: In recursive macro definitions, print the macro name instead of nothing.

2006-07-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c, dlls/ddraw/direct3d.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	ddraw/wined3d: Remove texture format enumeration functions.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Duplicate flips in software if the local copy is up to date.

2006-07-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Disable the fog before writing the back buffer data.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a setting for the render target locking method.

	* dlls/wined3d/surface.c:
	wined3d: Break the glDrawPixels call out of UnlockRect.

2006-07-18  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/cmdlgtst/Ko.rc:
	cmdlgtst: Updated Korean resource.

2006-07-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Output x.500 strings from CertNameToStrA/W.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c:
	crypt32: Fix reading key prov info from serialized data.

	* dlls/crypt32/encode.c:
	crypt32: Always set required encoded length in CryptEncodeObject(Ex).

	* dlls/msi/appsearch.c:
	msi: Fix silly pointer error.

2006-07-17  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Update the feature components' states when a feature is selected.

2006-07-17  Duane Clark <fpga@pacbell.net>

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add tests of file operations in ASCII mode.

2006-07-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c:
	urlmon: Fix handle leak.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/htmltextarea.c:
	mshtml: Wrap more Heap* function by inline functions.

2006-07-17  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add an exception handler around code executed on the server side
	from the typelib marshaler.

	* dlls/msi/msi.c:
	msi: Fix conversion of path to include nul-termination character in
	MsiProvideQualifiedComponentA.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Display a big message box if the user tries to use typelib
	marshaling in native oleaut32 with builtin rpcrt4 to tell them what is
	wrong.

	* dlls/rpcrt4/ndr_marshall.c, include/wine/rpcfc.h:
	rpcrt4: Handle more structure padding values.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Revert check for FUNCFLAG_FRESTRICTED in ITypeInfo::Invoke.
	The change caused regressions in a number of applications and needs more
	study to see what the correct behaviour should be.

2006-07-17  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Readd missing copyright to shaders files.

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Fix typo in ARB pixel shader.

2006-07-17  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/variant.c:
	oleaut32: VarCmp - Corrected function description.

2006-07-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Increment texture_idx when continuing as well.

2006-07-17  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/advapi32/tests/crypt_lmhash.c:
	advapi32/tests: Write-strings warnings fix.

2006-07-17  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/listview.c, dlls/comctl32/tests/listview.c:
	comctl32: All items should be marked as unchecked when LVS_EX_CHECKBOXES is
	initially set.
	When a new item is added with LBS_EX_CHECKBOXES already set then that item is
	marked as unchecked.

2006-07-18  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Store the full path to the prelink tool.

2006-07-17  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix for vertex shaders.

2006-07-16  Duane Clark <fpga@pacbell.net>

	* programs/notepad/main.c:
	notepad: Change notepad printing font.

	* programs/notepad/dialog.c:
	notepad: Make notepad print something reasonable.

2006-07-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/protocol.c:
	mshtml: Wrap Heap* functions by inline functions.

2006-07-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Break out the frame buffer readback of LockRect, implement palettized
	readback.

2006-07-17  Robert Shearman <rob@codeweavers.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Don't access a negative section index in elf_map_section.

	* dlls/dbghelp/stabs.c:
	dbghelp: Avoid accessing a negative string index when parsing stabs entries
	with an empty string.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Fix a return code from RtlVerifyVersionInfo and change the FIXME to a
	TRACE now that all of the tests pass.

	* dlls/kernel/tests/version.c:
	kernel: Fix an incorrect version test.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Fix RtlVerifyVersionInfo handling of major, minor and service pack
	versions, which are tested in a hierarchical manner.
	Add some new tests for the different condition values.

	* dlls/kernel/tests/version.c, dlls/ntdll/version.c:
	ntdll: Use a common condition value for the major, minor and service pack
	version numbers.

	* dlls/ntdll/version.c:
	ntdll: Reduce duplicated code in RtlVerifyVersionInfo by calling a function
	for comparing the values.

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Test the return value of VarCat in the tests.

2006-07-15  Aric Stewart <aric@codeweavers.com>

	* programs/wineboot/Makefile.in, programs/wineboot/wineboot.c:
	wineboot: Copy windows file protection files at boot time.

2006-07-17  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Tidy up MsiCreateAndVerifyInstallerDirectory a bit.

	* dlls/msi/msi.c:
	msi: Implement MsiConfigureFeatureA using MsiConfigureFeatureW.

2006-07-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	msi: Cleanup traces, remove unnecessary includes.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c:
	msi: Move msi_get_property_int() to helpers.c

	* dlls/msi/msi.c:
	msi: Add support for INSTALLSTATE_ADVERTISED to MsiQueryFeatureState.

	* dlls/msi/msi.c:
	msi: MsiGetComponentPath cannot return INSTALLSTATE_ADVERTISED.

2006-07-16  Paul Millar <paul@astro.gla.ac.uk>

	* configure, configure.ac, include/config.h.in, libs/wine/loader.c:
	libwine: Add a configure check for setrlimit.

2006-07-17  Alexandre Julliard <julliard@winehq.org>

	* tools/winegcc/winegcc.c:
	winegcc: Make sure the Wine library paths take precedence in Wine mode.

2006-07-17  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/clock/Ko.rc:
	clock: Updated Korean resource.

2006-07-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comctl32/listview.c:
	comctl32: Use struct member after check for NULL (Coverity).

2006-07-15  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Write the "Microsoft Browser Architecture" CLSID.

2006-07-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Register zone and security manager.

	* dlls/urlmon/session.c, dlls/urlmon/tests/misc.c,
	  dlls/urlmon/urlmon_main.c:
	urlmon: Added UrlMkGetSessionOption implementation.

	* dlls/urlmon/umon.c:
	urlmon: Use URL_FILE_USE_PATHURL flag to combine urls.

	* include/urlmon.idl:
	urlmon.idl: Added some missing declarations.

	* dlls/mshtml/htmldoc.c:
	mshtml: Added get_all implementation.

2006-07-17  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/notepad/Da.rc:
	notepad: Fix typo in Danish translation spotted by Henrik Olsen.

2006-07-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c:
	dinput: Unacquire correct device.

	* dlls/dinput/keyboard.c:
	dinput: Ignore repeated key events.

2006-07-16  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Allocate 4 extra bytes in the dib section.

2006-07-16  Duane Clark <fpga@pacbell.net>

	* tools/examine-relay:
	examine-relay: Indent winex11.drv lines.

2006-07-15  Duane Clark <dclark@akamail.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Set PD_PAGENUMS from print dialog.

2006-07-15  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/wordpad/Ko.rc:
	wordpad: Updated Korean resource.

2006-07-14  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/url.c:
	wininet: Add more tests for InternetCrackurl.

	* dlls/msi/dialog.c:
	msi: Add handling for the ListBox dialog control.

2006-07-14  Milko Krachounov <milko@3mhz.net>

	* dlls/shell32/shell32_Bg.rc:
	shell32: Update Bulgarian translation.

	* dlls/mshtml/Bg.rc:
	mshtml: Update Bulgarian translation.

2006-07-16  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add CreateWellKnownSid and IsWellKnownSid.

2006-07-14  Robert Reif <reif@earthlink.net>

	* include/winnt.h:
	include: Add well known sids and quota limits to winnt.h.

2006-07-14  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/style.c:
	riched20: WM_SETFONT support.

2006-07-14  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Improve CoRegisterMessageFilter and add tests for it.

	* dlls/ole32/rpc.c:
	ole32: Free the buffer allocated in local_server_thread (found by Smatch).

2006-07-13  Aric Stewart <aric@codeweavers.com>

	* configure, configure.ac, dlls/comcat/Makefile.in,
	  dlls/comcat/information.c, dlls/comcat/tests/Makefile.in,
	  dlls/comcat/tests/comcat.c, programs/winetest/Makefile.in:
	comcat: cImplemented or cRequired of -1 means to match everything
	regardless of the implementation or categories.

2006-07-12  Stefan Siebert <stefan.siebert@ssiebert.de>

	* dlls/msi/files.c:
	msi: cabinet_notify - don't fail on files with the same filepath.

2006-07-13  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_main.c:
	wined3d: Only copy memory corresponding to the dib section instead of the
	power of 2 surface.

2006-07-14  András Kovács <andras@csevego.net>

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Stub for SHSetLocalizedName.

2006-07-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Let caller set property in AppSearch.

2006-07-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Use awstring to return strings from MsiGetProductInfo.

	* dlls/msi/msi.c:
	msi: Read from the registry, not the database in MsiGetProductInfo.

	* dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Add some registry reading macro functions.

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/helpers.c,
	  dlls/msi/msipriv.h, dlls/msi/registry.c, dlls/msi/upgrade.c:
	msi: Move version string conversions to registry.c.

	* dlls/msi/classes.c, dlls/msi/msipriv.h, dlls/msi/registry.c:
	msi: Move some registry helper functions to registry.c.

2006-07-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Correct self-signed cert creation.
	- use correct function names for rpcrt functions
	- use CryptGenRandom to create unique serial numbers

2006-07-13  Dan Hipschman <dsh@linux.ucla.edu>

	* tools/widl/parser.y:
	widl: Support coclass forward declarations.

	* tools/widl/header.c:
	widl: Fix unterminated comment in generated code.

2006-07-13  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix cmp instruction for GLSL.
	The current GLSL cmp instruction is incorrect, because:
	- it ignores destination write mask
	- it ignores source swizzle
	- it ignores other source modifiers.
	- it works incorrectly for src0 = 0

	* dlls/wined3d/device.c:
	wined3d: Fix light state bugs.

2006-07-14  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Don't execute a function in ITypeInfo::Invoke if it has the
	FUNCFLAG_FRESTRICTED flag.
	Add some more tests for ITypeInfo::Invoke.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Implement GetClassID for the OLE picture class.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix Variance Callback Functions.
	A callback function for computing the variance puts the computed value
	into the same field as a conformance, so make sure to copy the value
	into pCount before returning from ComputeConformanceOrVariance.

	* dlls/rpcrt4/cpsf.c:
	rpcrt4: Add the threading model and a description when registering a CLSID
	for the PSFactoryBuffer.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole32: Add validation of parameters to CoGetClassObject and make sure to
	initialise ppv to NULL.

2006-07-13  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dinput/device.c, dlls/gdi/tests/brush.c, dlls/winedos/int10.c,
	  dlls/winex11.drv/xim.c:
	Fix swapped 2nd and 3rd argument passed to memset.

2006-07-14  Alexandre Julliard <julliard@winehq.org>

	* programs/msiexec/msiexec.c:
	msiexec: Invert the return values of the boolean functions so that
	their names make more sense.

2006-07-13  James Hawkins <truiken@gmail.com>

	* programs/msiexec/msiexec.c:
	msiexec: Also support options using a hyphen.

	* dlls/msi/dialog.c:
	msi: Add handling for the GroupBox dialog control.

2006-07-13  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/winedump/pe.c:
	winedump: Write-strings warnings fix.

2006-07-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Revert the error exit code for warnings, it causes more
	trouble than it's worth.

2006-07-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c, loader/kthread.c, loader/pthread.c:
	ntdll: Make sure to not unmap anything from reserved areas
	when using NtFreeVirtualMemory with the MEM_SYSTEM flag.

	* dlls/ntdll/virtual.c:
	ntdll: Use the map_view() function to allocate TEBs, now that it supports an
	arbitrary granularity.

	* dlls/ntdll/virtual.c:
	ntdll: Support for arbitrary memory allocation granularity.

2006-07-12  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/notepad/Bg.rc, programs/notepad/Cs.rc, programs/notepad/Da.rc,
	  programs/notepad/De.rc, programs/notepad/Eo.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc:
	notepad: Fix the ellipsis and shortcuts in menus.

	* programs/wordpad/De.rc, programs/wordpad/En.rc, programs/wordpad/Fr.rc,
	  programs/wordpad/Hu.rc, programs/wordpad/Ko.rc,
	  programs/wordpad/Nl.rc, programs/wordpad/No.rc,
	  programs/wordpad/Ru.rc, programs/wordpad/Tr.rc:
	wordpad: Add shortcuts in menus.

2006-07-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comdlg32/cdlg_Pl.rc:
	comdlg32: Update Polish translation.

2006-07-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole32: Don't loop while peeking messages in CoWaitForMultipleHandles.
	It increases the latency on completing the COM call and could result in
	the COM call never completing in some circumstances.

	* dlls/oleaut32/typelib.c:
	oleaut32: Convert void return types to the VT_EMPTY variant type in
	ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut32: Typelib interfaces with the FDUAL flag should also be registered,
	since dispinterfaces don't have the FDISPATCHABLE flag.

	* dlls/ws2_32/socket.c, include/ws2tcpip.h:
	include: Add NI_* defines and add a WS(socklen_t) type.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Add a stub for I_RpcMapWin32Status.

	* dlls/dbghelp/path.c:
	dbghelp: Fix the finding of PDB DS-type files.

2006-07-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/brsfolder.c:
	shell32: Avoid using macros that cause gcc warnings.

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Moved the calling of the process entry point to LdrInitializeThunk.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel32: Moved initialisation of the console handles to DllMain.

2006-07-12  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCommonPrefixA.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathBuildRootA.

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	msi: Update the files target paths as well, because a parent directory might
	have been changed.

2006-07-12  Thomas Kho <tkho@ucla.edu>

	* programs/notepad/dialog.c:
	notepad: Change file not saved alert title to match Windows' notepad.exe.

	* programs/notepad/En.rc, programs/notepad/dialog.c:
	notepad: Change window title to be like Windows' notepad.exe.

2006-07-12  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winspool.drv/tests/info.c:
	winspool.drv/tests: Write-strings warnings fix.

	* dlls/mshtml/main.c:
	mshtml: Write-strings warnings fix.

2006-07-11  James Hawkins <truiken@gmail.com>

	* dlls/urlmon/umon.c:
	urlmon: Implement URLDownloadToCacheFileW.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* dlls/user/class.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c:
	user32: Implement Get/SetClassLongPtrA/W.

2006-07-11  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/user/sysparams.c:
	user: Implement Ascii version of SPI_GETDESKWALLPAPER.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c, dlls/ole32/tests/stg_prop.c:
	ole32: Only return S_FALSE in IPropertyStorage::ReadMultiple if a property
	was not found.

	* dlls/ole32/clipboard.c:
	ole32: Small cleanups.

	* dlls/ole32/stg_prop.c:
	ole32: Remove unnecessary assert(This) calls.

	* dlls/ole32/stg_prop.c, dlls/ole32/tests/stg_prop.c:
	ole32: Fix and test reading and writing of VT_CF properties.

2006-07-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/comctl_Bg.rc, dlls/comctl32/comctl_Cn.rc,
	  dlls/comctl32/comctl_Cs.rc, dlls/comctl32/comctl_De.rc,
	  dlls/comctl32/comctl_En.rc, dlls/comctl32/comctl_Eo.rc,
	  dlls/comctl32/comctl_Es.rc, dlls/comctl32/comctl_Fr.rc,
	  dlls/comctl32/comctl_Hu.rc, dlls/comctl32/comctl_It.rc,
	  dlls/comctl32/comctl_Ja.rc, dlls/comctl32/comctl_Ko.rc,
	  dlls/comctl32/comctl_Nl.rc, dlls/comctl32/comctl_No.rc,
	  dlls/comctl32/comctl_Pl.rc, dlls/comctl32/comctl_Pt.rc,
	  dlls/comctl32/comctl_Ru.rc, dlls/comctl32/comctl_Si.rc,
	  dlls/comctl32/comctl_Sv.rc, dlls/comctl32/comctl_Th.rc,
	  dlls/comctl32/comctl_Tr.rc, dlls/comctl32/comctl_Uk.rc,
	  dlls/comctl32/propsheet.c:
	comctl32: Use wsprintf instead of strcat building the properties
	dialog title to allow different word orders.

2006-07-12  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Split up ACTION_AppSearchReg.

	* dlls/crypt32/store.c:
	crypt32: Add stubs for some stores.

	* dlls/crypt32/crypt32.spec:
	crypt32: Forward CreateFileU to CreateFileW.

2006-07-11  Dan Hipschman <dsh@linux.ucla.edu>

	* dlls/gdi/driver.c, dlls/gdi/enhmfdrv/init.c, dlls/gdi/font.c,
	  dlls/gdi/freetype.c, dlls/gdi/gdi_private.h, dlls/gdi/mfdrv/init.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/psdrv.h,
	  dlls/wineps.drv/wineps.drv.spec, dlls/winex11.drv/codepage.c,
	  dlls/winex11.drv/text.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/x11font.h:
	gdi32: Implement GetTextExtentPoint in terms of GetTextExtentExPoint
	(not vice versa) for efficiency (required adding the Ex functionality
	to drivers).

	* dlls/gdi/tests/font.c:
	gdi32: Add conformance test for GetTextExtentExPointW.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/query/query_main.c:
	query: Return a more appropriate error code from CIState.

2006-07-11  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/urlmon/regsvr.c:
	urlmon: Write-strings warnings fix.

2006-07-12  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Texture stages that reference NULL textures should just pass
	through the result of the previous stage.

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Fix specular color handling for register combiners.
	By default the FinalCombiner is setup to add the specular color to the
	final result of the combiner operations. However, it should only do
	this when the WINED3DRS_SPECULARENABLE renderstate is enabled.

2006-07-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Check the color data type too when deciding whether to convert data.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c:
	ole32: Implement IPropertyStorage::Enum using enumx.

	* dlls/ole32/stg_prop.c:
	ole32: Clean up some declarations.

	* dlls/ole32/stg_prop.c:
	ole32: Use enumx to implement IPropertySetStorage::Enum.

	* dlls/ole32/Makefile.in, dlls/ole32/enumx.c, dlls/ole32/enumx.h:
	ole32: Add a framework for implementing IEnum* interfaces.

2006-07-12  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Don't warn when clearing PropVariants that don't have allocated memory.

	* dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c:
	ole32: Fix conformance test to compile with MSVC6.

	* dlls/ole32/stg_prop.c:
	ole32: This cannot be NULL, so don't check it.

	* dlls/ole32/stg_prop.c:
	ole32: Only return S_FALSE in IPropertyStorage::ReadMultiple if a property
	was not found.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Allocate copied VT_CF data correctly in PropVariantCopy.

2006-07-11  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/avifil32/Makefile.in:
	avifil32: Remove unnecessary dependency on ntdll.

2006-07-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CryptAcquireCertificatePrivateKey.

2006-07-11  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy HeapAlloc bug.

	* include/ntsecapi.h:
	include: Add more policy structures to ntsecapi.h.

2006-07-11  Alexandre Julliard <julliard@winehq.org>

	* libs/Makefile.in, tools/winewrapper:
	libs: Get rid of the libwine symlinks.

	* Make.rules.in, dlls/Makedll.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in, tools/winegcc/winegcc.c:
	winegcc: Automatically add the correct lib paths when building inside the
	Wine tree.

	* Make.rules.in, libs/Makefile.in, tools/widl/Makefile.in,
	  tools/wrc/Makefile.in:
	libs: Get rid of the symlinks for the static libs.

	* Make.rules.in, configure, configure.ac, dlls/advapi32/Makefile.in,
	  dlls/advpack/Makefile.in, dlls/atl/Makefile.in,
	  dlls/avifil32/Makefile.in, dlls/comcat/Makefile.in,
	  dlls/comctl32/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/crtdll/Makefile.in, dlls/devenum/Makefile.in,
	  dlls/dmloader/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dnsapi/Makefile.in, dlls/dplayx/Makefile.in,
	  dlls/dxdiagn/Makefile.in, dlls/gdi/Makefile.in,
	  dlls/hhctrl.ocx/Makefile.in, dlls/hlink/Makefile.in,
	  dlls/infosoft/Makefile.in, dlls/inseng/Makefile.in,
	  dlls/itss/Makefile.in, dlls/kernel/Makefile.in,
	  dlls/lz32/Makefile.in, dlls/mapi32/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mcicda/Makefile.in,
	  dlls/mciseq/Makefile.in, dlls/mciwave/Makefile.in,
	  dlls/midimap/Makefile.in, dlls/mlang/Makefile.in,
	  dlls/mpr/Makefile.in, dlls/msacm32.drv/Makefile.in,
	  dlls/msacm32/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/mshtml/Makefile.in, dlls/msi/Makefile.in,
	  dlls/msvcrt/Makefile.in, dlls/msvcrt20/Makefile.in,
	  dlls/msvfw32/Makefile.in, dlls/msxml3/Makefile.in,
	  dlls/ntdll/Makefile.in, dlls/objsel/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/odbccp32/Makefile.in,
	  dlls/ole32/Makefile.in, dlls/oleaut32/Makefile.in,
	  dlls/powrprof/Makefile.in, dlls/qcap/Makefile.in,
	  dlls/quartz/Makefile.in, dlls/query/Makefile.in,
	  dlls/riched20/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/serialui/Makefile.in, dlls/setupapi/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/shell32/Makefile.in,
	  dlls/shlwapi/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/user/Makefile.in, dlls/userenv/Makefile.in,
	  dlls/uxtheme/Makefile.in, dlls/version/Makefile.in,
	  dlls/winedos/Makefile.in, dlls/winex11.drv/Makefile.in,
	  dlls/wininet/Makefile.in, dlls/winmm/Makefile.in,
	  dlls/winmm/joystick/Makefile.in, dlls/winmm/winearts/Makefile.in,
	  dlls/winmm/winejack/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, dlls/winspool.drv/Makefile.in,
	  dlls/wnaspi32/Makefile.in, dlls/ws2_32/Makefile.in, libs/Makefile.in,
	  libs/unicode/Makefile.in, libs/unicode/c_037.c,
	  libs/unicode/c_10000.c, libs/unicode/c_10006.c,
	  libs/unicode/c_10007.c, libs/unicode/c_10029.c,
	  libs/unicode/c_1006.c, libs/unicode/c_10079.c,
	  libs/unicode/c_10081.c, libs/unicode/c_1026.c, libs/unicode/c_1250.c,
	  libs/unicode/c_1251.c, libs/unicode/c_1252.c, libs/unicode/c_1253.c,
	  libs/unicode/c_1254.c, libs/unicode/c_1255.c, libs/unicode/c_1256.c,
	  libs/unicode/c_1257.c, libs/unicode/c_1258.c, libs/unicode/c_20127.c,
	  libs/unicode/c_20866.c, libs/unicode/c_20932.c,
	  libs/unicode/c_21866.c, libs/unicode/c_28591.c,
	  libs/unicode/c_28592.c, libs/unicode/c_28593.c,
	  libs/unicode/c_28594.c, libs/unicode/c_28595.c,
	  libs/unicode/c_28596.c, libs/unicode/c_28597.c,
	  libs/unicode/c_28598.c, libs/unicode/c_28599.c,
	  libs/unicode/c_28600.c, libs/unicode/c_28603.c,
	  libs/unicode/c_28604.c, libs/unicode/c_28605.c,
	  libs/unicode/c_28606.c, libs/unicode/c_424.c, libs/unicode/c_437.c,
	  libs/unicode/c_500.c, libs/unicode/c_737.c, libs/unicode/c_775.c,
	  libs/unicode/c_850.c, libs/unicode/c_852.c, libs/unicode/c_855.c,
	  libs/unicode/c_856.c, libs/unicode/c_857.c, libs/unicode/c_860.c,
	  libs/unicode/c_861.c, libs/unicode/c_862.c, libs/unicode/c_863.c,
	  libs/unicode/c_864.c, libs/unicode/c_865.c, libs/unicode/c_866.c,
	  libs/unicode/c_869.c, libs/unicode/c_874.c, libs/unicode/c_875.c,
	  libs/unicode/c_878.c, libs/unicode/c_932.c, libs/unicode/c_936.c,
	  libs/unicode/c_949.c, libs/unicode/c_950.c, libs/unicode/casemap.c,
	  libs/unicode/collation.c, libs/unicode/compose.c,
	  libs/unicode/cpmap.pl, libs/unicode/cptable.c, libs/unicode/defaults,
	  libs/unicode/fold.c, libs/unicode/mbtowc.c, libs/unicode/sortkey.c,
	  libs/unicode/string.c, libs/unicode/utf8.c, libs/unicode/wctomb.c,
	  libs/unicode/wctype.c, libs/unicode/wine_unicode.def,
	  libs/unicode/wine_unicode.map, libs/wine/Makefile.in,
	  libs/wine/c_037.c, libs/wine/c_10000.c, libs/wine/c_10006.c,
	  libs/wine/c_10007.c, libs/wine/c_10029.c, libs/wine/c_1006.c,
	  libs/wine/c_10079.c, libs/wine/c_10081.c, libs/wine/c_1026.c,
	  libs/wine/c_1250.c, libs/wine/c_1251.c, libs/wine/c_1252.c,
	  libs/wine/c_1253.c, libs/wine/c_1254.c, libs/wine/c_1255.c,
	  libs/wine/c_1256.c, libs/wine/c_1257.c, libs/wine/c_1258.c,
	  libs/wine/c_20127.c, libs/wine/c_20866.c, libs/wine/c_20932.c,
	  libs/wine/c_21866.c, libs/wine/c_28591.c, libs/wine/c_28592.c,
	  libs/wine/c_28593.c, libs/wine/c_28594.c, libs/wine/c_28595.c,
	  libs/wine/c_28596.c, libs/wine/c_28597.c, libs/wine/c_28598.c,
	  libs/wine/c_28599.c, libs/wine/c_28600.c, libs/wine/c_28603.c,
	  libs/wine/c_28604.c, libs/wine/c_28605.c, libs/wine/c_28606.c,
	  libs/wine/c_424.c, libs/wine/c_437.c, libs/wine/c_500.c,
	  libs/wine/c_737.c, libs/wine/c_775.c, libs/wine/c_850.c,
	  libs/wine/c_852.c, libs/wine/c_855.c, libs/wine/c_856.c,
	  libs/wine/c_857.c, libs/wine/c_860.c, libs/wine/c_861.c,
	  libs/wine/c_862.c, libs/wine/c_863.c, libs/wine/c_864.c,
	  libs/wine/c_865.c, libs/wine/c_866.c, libs/wine/c_869.c,
	  libs/wine/c_874.c, libs/wine/c_875.c, libs/wine/c_878.c,
	  libs/wine/c_932.c, libs/wine/c_936.c, libs/wine/c_949.c,
	  libs/wine/c_950.c, libs/wine/casemap.c, libs/wine/collation.c,
	  libs/wine/compose.c, libs/wine/cpmap.pl, libs/wine/cptable.c,
	  libs/wine/defaults, libs/wine/fold.c, libs/wine/mbtowc.c,
	  libs/wine/sortkey.c, libs/wine/string.c, libs/wine/utf8.c,
	  libs/wine/wctomb.c, libs/wine/wctype.c, libs/wine/wine.def,
	  libs/wine/wine.map, programs/msiexec/Makefile.in,
	  programs/rundll32/Makefile.in, programs/winemenubuilder/Makefile.in,
	  server/Makefile.in, tools/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	libs: Merged libwine_unicode into libwine.
	Most dlls use libwine_unicode at this point, so there's nothing to
	gain by having two separate libraries.

2006-07-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c:
	crypt32: Check a pointer before dereferencing it (Coverity).

	* dlls/shell32/pidl.c, dlls/shell32/tests/shlfolder.c:
	shell32: Always NULL-terminate path in SHGetPathFromIDList.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/infosoft/Makefile.in,
	  dlls/infosoft/infosoft.spec, dlls/infosoft/infosoft_main.c,
	  dlls/infosoft/wordbreaker.c:
	infosoft: Add a word breaker for English.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* tools/winebuild/import.c:
	winebuild: Save registers which might contain parameters for the function to
	be called.

	* dlls/kernel/resource.c, include/winternl.h:
	ntdll: Widen fields in LDR_RESOURCE_INFO to accomodate 64 bit pointers.

2006-07-10  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/package.c:
	msi: Test how SetTargetPath affects the target paths of install files.

2006-07-09  James Hawkins <truiken@gmail.com>

	* dlls/msi/appsearch.c:
	msi: AppSearchReg shouldn't create the key it's looking for if it doesn't exist.

2006-07-10  Benjamin Arai <me@benjaminarai.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Conformance test and patch for VarCat.

2006-07-10  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Improve GetAdapterMonitor stub.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: More flow control instructions.
	- Implement call, callnz, label, and ret
	- Implement support for NOT modifier

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: More flow control instructions
	- Implement if, else, endif, rep, endrep, break
	- Implement ifc, breakc, using undocumented comparison bits in the instruction
	token
	- Fix bug in main loop processing of codes with no dst token
	- Fix bug in GLSL output modifier processing of codes with no dst token
	- Fix bug in loop implementation (src1 contains the integer data, src0 is aL)
	- Add versioning for all the instructions above, and remove
	GLSL_REQUIRED thing, which is useless and should be removed from all
	opcodes in general.

2006-07-09  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix off-by-one constants bug.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Clamp texcoord output between 0 and 1.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Place immediate constants in the same array as global constants.
	- move DEF, DEFI, DEFB handling into the register counting pass
	- keep track of defined constants as a linked list (because there's a
	few of them)
	- apply immediate constants after global constants in the constant
	loading function
	- both types of constants now get loaded with array notation in the
	shader (into the same array)

2006-07-10  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/palette.c,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Palette refcounting fix.
	Do not AddRef the DirectDraw interfaces in CreatePalette of older
	interface version, and add a test for that.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/direct3d.c, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/refcount.c:
	ddraw: Split up the ddraw refcount.

2006-07-10  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/cierror.h:
	include: Add cierror.h.

2006-07-11  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole32: Only print a FIXME if necessary in StgOpenStorageEx.

	* include/indexsvr.idl:
	indexsvr.h: Fix a typo.

2006-07-10  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/directx.c:
	wined3d: Add an "\n" to a fixme to fix another overflow (in
	IWineD3DImpl_CheckDeviceFormatConversion).

2006-07-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/riched20/richole.c, include/.gitignore, include/Makefile.in,
	  include/tom.idl:
	riched20: Add stub implementation of ITextDocument.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement key context property, with tests.

2006-07-10  Ge van Geldorp <ge@gse.nl>

	* programs/winedbg/be_x86_64.c, programs/winedbg/debugger.h:
	winedbg: Implement some x86_64 backend routines.

	* tools/winebuild/spec32.c:
	winebuild: Reserve enough space for null function pointer.

	* server/queue.c:
	server: Widen lparam for timers.

2006-07-10  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/shell32/shlview.c:
	shell32: Write-strings warning fix.

2006-07-08  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/encode.c:
	crypt32/tests: Write-strings warnings test.

2006-07-11  Alexandre Julliard <julliard@winehq.org>

	* server/ptrace.c:
	server: Fixed get_thread_context for x86_64.

2006-07-10  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/amstream/amstream.c, include/mmstream.idl:
	amstream: Fix argument types to match the PSDK.

2006-07-11  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/notepad/En.rc:
	notepad: En.rc: Fix the ellipsis in menu.

2006-07-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Implement removeChild.

2006-07-10  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c:
	dnsapi: Fix a buffer overrun (Coverity).

	* dlls/wldap32/ber.c:
	wldap32: Document the ber functions.

	* dlls/wldap32/rename.c:
	wldap32: Document the rename functions.

	* tools/wine.inf:
	wine.inf: Add msi to the list of fake dlls.

2006-07-10  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/resource.h,
	  programs/oleview/typelib.c:
	oleview: Added more fields to TypeLib Viewer tree.

2006-07-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Always verify mime using FindMimeFromData.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of DoVerb.

	* dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added GetMiscStatus test.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Call SetMenu in activate_ui.

	* dlls/mshtml/olewnd.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added OnFrameWindowActivate implementation.

2006-07-08  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Fix registry API prototypes to match the PSDK.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* include/.gitignore, include/wine/.gitignore:
	include/.gitignore: Moved the wine subdir ignore list to the main file.

	* libs/.gitignore, libs/unicode/.gitignore, libs/wine/.gitignore:
	libs/.gitignore: Added wildcards for libraries.

	* .gitignore, dlls/msi/.gitignore, libs/wpp/.gitignore,
	  programs/winedbg/.gitignore, programs/winhelp/.gitignore,
	  tools/widl/.gitignore, tools/wmc/.gitignore, tools/wrc/.gitignore:
	.gitignore: Added wildcards to ignore lex and bison output files.

	* .gitignore, dlls/amstream/.gitignore, dlls/atl/.gitignore,
	  dlls/avifil32/.gitignore, dlls/cabinet/.gitignore,
	  dlls/cards/.gitignore, dlls/comcat/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.gitignore,
	  dlls/comdlg32/.gitignore, dlls/crypt32/.gitignore,
	  dlls/d3d8/.gitignore, dlls/d3d9/.gitignore, dlls/d3dim/.gitignore,
	  dlls/d3drm/.gitignore, dlls/d3dxof/.gitignore, dlls/ddraw/.gitignore,
	  dlls/devenum/.gitignore, dlls/dinput/.gitignore,
	  dlls/dinput8/.gitignore, dlls/dmband/.gitignore,
	  dlls/dmcompos/.gitignore, dlls/dmime/.gitignore,
	  dlls/dmloader/.gitignore, dlls/dmscript/.gitignore,
	  dlls/dmstyle/.gitignore, dlls/dmsynth/.gitignore,
	  dlls/dmusic/.gitignore, dlls/dmusic32/.gitignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.gitignore, dlls/dsound/.gitignore,
	  dlls/dswave/.gitignore, dlls/dxdiagn/.gitignore, dlls/gdi/.gitignore,
	  dlls/gphoto2.ds/.gitignore, dlls/hhctrl.ocx/.gitignore,
	  dlls/iccvid/.gitignore, dlls/kernel/.gitignore,
	  dlls/kernel/messages/.gitignore, dlls/mciavi32/.gitignore,
	  dlls/mpr/.gitignore, dlls/msacm32/.gitignore, dlls/mscms/.gitignore,
	  dlls/msdmo/.gitignore, dlls/mshtml/.gitignore, dlls/msi/.gitignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.gitignore,
	  dlls/msvfw32/.gitignore, dlls/msvidc32/.gitignore,
	  dlls/mswsock/.gitignore, dlls/objsel/.gitignore,
	  dlls/ole32/.gitignore, dlls/oleaut32/.gitignore,
	  dlls/oledlg/.gitignore, dlls/opengl32/.gitignore,
	  dlls/qcap/.gitignore, dlls/quartz/.gitignore,
	  dlls/riched20/.gitignore, dlls/sane.ds/.gitignore,
	  dlls/serialui/.gitignore, dlls/setupapi/.gitignore,
	  dlls/shdocvw/.gitignore, dlls/shell32/.gitignore,
	  dlls/shlwapi/.gitignore, dlls/stdole2.tlb/.gitignore,
	  dlls/stdole32.tlb/.gitignore, dlls/urlmon/.gitignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.gitignore,
	  dlls/uxtheme/.gitignore, dlls/version/tests/.gitignore,
	  dlls/wineps.drv/.gitignore, dlls/wininet/.gitignore,
	  dlls/winmm/.gitignore, dlls/winspool.drv/.gitignore,
	  dlls/wintrust/.gitignore, dlls/wldap32/.gitignore,
	  dlls/ws2_32/.gitignore, dlls/wsock32/.gitignore,
	  programs/clock/.gitignore, programs/cmdlgtst/.gitignore,
	  programs/msiexec/.gitignore, programs/notepad/.gitignore,
	  programs/oleview/.gitignore, programs/progman/.gitignore,
	  programs/regedit/.gitignore, programs/regsvr32/.gitignore,
	  programs/start/.gitignore, programs/taskmgr/.gitignore,
	  programs/uninstaller/.gitignore, programs/view/.gitignore,
	  programs/wcmd/.gitignore, programs/winecfg/.gitignore,
	  programs/wineconsole/.gitignore, programs/winefile/.gitignore,
	  programs/winemine/.gitignore, programs/winetest/.gitignore,
	  programs/winhelp/.gitignore, programs/wordpad/.gitignore:
	.gitignore: Added wildcards to ignore generated resource files.

	* dlls/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/tests/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/comctl32/tests/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/crypt32/tests/.gitignore, dlls/d3d8/tests/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dnsapi/tests/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/gdi/tests/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/kernel/tests/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/make_dlls,
	  dlls/mapi32/tests/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/tests/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrtd/tests/.gitignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ole32/tests/.gitignore,
	  dlls/oleaut32/tests/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/riched20/tests/.gitignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/tests/.gitignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/tests/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/tests/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/version/tests/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/ws2_32/tests/.gitignore:
	make_dlls: Recursively ignore .ok files in all tests directories.

	* dlls/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/tests/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/comctl32/tests/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/crypt32/tests/.gitignore, dlls/d3d8/tests/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dnsapi/tests/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/gdi/tests/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/kernel/tests/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/make_dlls,
	  dlls/mapi32/tests/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/tests/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrtd/tests/.gitignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ole32/tests/.gitignore,
	  dlls/oleaut32/tests/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/riched20/tests/.gitignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/tests/.gitignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/tests/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/tests/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/version/tests/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/ws2_32/tests/.gitignore:
	make_dlls: Recursively ignore testlist.c in all tests directories.

	* programs/.gitignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.gitignore, programs/control/.gitignore,
	  programs/eject/.gitignore, programs/expand/.gitignore,
	  programs/explorer/.gitignore, programs/hh/.gitignore,
	  programs/icinfo/.gitignore, programs/iexplore/.gitignore,
	  programs/make_progs, programs/msiexec/.gitignore,
	  programs/notepad/.gitignore, programs/oleview/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, programs/wordpad/.gitignore:
	make_progs: Generate the .gitignore file.
	Ignore generated programs from the top-level .gitignore.

	* dlls/.gitignore, dlls/activeds/.gitignore, dlls/advapi32/.gitignore,
	  dlls/advpack/.gitignore, dlls/atl/.gitignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.gitignore,
	  dlls/cabinet/.gitignore, dlls/capi2032/.gitignore,
	  dlls/cards/.gitignore, dlls/cfgmgr32/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comdlg32/.gitignore,
	  dlls/compstui/.gitignore, dlls/crtdll/.gitignore,
	  dlls/crypt32/.gitignore, dlls/cryptdll/.gitignore,
	  dlls/ctl3d32/.gitignore, dlls/d3d8/.gitignore, dlls/d3d9/.gitignore,
	  dlls/d3dim/.gitignore, dlls/d3drm/.gitignore, dlls/d3dx8/.gitignore,
	  dlls/d3dxof/.gitignore, dlls/dbghelp/.gitignore,
	  dlls/dciman32/.gitignore, dlls/ddraw/.gitignore,
	  dlls/dinput/.gitignore, dlls/dinput8/.gitignore,
	  dlls/dmusic32/.gitignore, dlls/dnsapi/.gitignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dsound/.gitignore, dlls/gdi/.gitignore, dlls/glu32/.gitignore,
	  dlls/glut32/.gitignore, dlls/icmp/.gitignore,
	  dlls/imagehlp/.gitignore, dlls/imm32/.gitignore,
	  dlls/iphlpapi/.gitignore, dlls/kernel/.gitignore,
	  dlls/lz32/.gitignore, dlls/make_dlls, dlls/mapi32/.gitignore,
	  dlls/mlang/.gitignore, dlls/mpr/.gitignore, dlls/mprapi/.gitignore,
	  dlls/msacm32/.gitignore, dlls/mscms/.gitignore,
	  dlls/msdmo/.gitignore, dlls/msftedit/.gitignore,
	  dlls/mshtml/.gitignore, dlls/msi/.gitignore, dlls/msimg32/.gitignore,
	  dlls/msvcrt/.gitignore, dlls/msvcrt20/.gitignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.gitignore,
	  dlls/msvfw32/.gitignore, dlls/mswsock/.gitignore,
	  dlls/netapi32/.gitignore, dlls/newdev/.gitignore,
	  dlls/ntdll/.gitignore, dlls/ntdsapi/.gitignore,
	  dlls/odbc32/.gitignore, dlls/odbccp32/.gitignore,
	  dlls/ole32/.gitignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.gitignore, dlls/olecli32/.gitignore,
	  dlls/oledlg/.gitignore, dlls/olepro32/.gitignore,
	  dlls/olesvr32/.gitignore, dlls/opengl32/.gitignore,
	  dlls/powrprof/.gitignore, dlls/psapi/.gitignore,
	  dlls/quartz/.gitignore, dlls/rasapi32/.gitignore,
	  dlls/riched20/.gitignore, dlls/rpcrt4/.gitignore,
	  dlls/rsaenh/.gitignore, dlls/secur32/.gitignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.gitignore,
	  dlls/setupapi/.gitignore, dlls/sfc/.gitignore,
	  dlls/shdocvw/.gitignore, dlls/shell32/.gitignore,
	  dlls/shfolder/.gitignore, dlls/shlwapi/.gitignore,
	  dlls/snmpapi/.gitignore, dlls/sti/.gitignore, dlls/tapi32/.gitignore,
	  dlls/unicows/.gitignore, dlls/url/.gitignore, dlls/urlmon/.gitignore,
	  dlls/user/.gitignore, dlls/usp10/.gitignore, dlls/uxtheme/.gitignore,
	  dlls/vdmdbg/.gitignore, dlls/version/.gitignore,
	  dlls/wined3d/.gitignore, dlls/winedos/.gitignore,
	  dlls/wininet/.gitignore, dlls/winmm/.gitignore,
	  dlls/winnls32/.gitignore, dlls/winspool.drv/.gitignore,
	  dlls/wintab32/.gitignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.gitignore, dlls/wnaspi32/.gitignore,
	  dlls/wow32/.gitignore, dlls/ws2_32/.gitignore,
	  dlls/wsock32/.gitignore, dlls/wtsapi32/.gitignore:
	make_dlls: Ignore generated import libraries from the top-level .gitignore.

	* dlls/.gitignore, dlls/make_dlls:
	make_dlls: Generate the .gitignore file.

	* .gitignore, dlls/.gitignore, dlls/activeds/.gitignore,
	  dlls/advapi32/.gitignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/.gitignore, dlls/advpack/tests/.gitignore,
	  dlls/amstream/.gitignore, dlls/atl/.gitignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.gitignore,
	  dlls/cabinet/.gitignore, dlls/cabinet/tests/.gitignore,
	  dlls/capi2032/.gitignore, dlls/cards/.gitignore,
	  dlls/cfgmgr32/.gitignore, dlls/comcat/.gitignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.gitignore,
	  dlls/comdlg32/.gitignore, dlls/comdlg32/tests/.gitignore,
	  dlls/compstui/.gitignore, dlls/crtdll/.gitignore,
	  dlls/crypt32/.gitignore, dlls/crypt32/tests/.gitignore,
	  dlls/cryptdll/.gitignore, dlls/cryptnet/.gitignore,
	  dlls/ctl3d32/.gitignore, dlls/d3d8/.gitignore,
	  dlls/d3d8/tests/.gitignore, dlls/d3d9/.gitignore,
	  dlls/d3d9/tests/.gitignore, dlls/d3dim/.gitignore,
	  dlls/d3drm/.gitignore, dlls/d3dx8/.gitignore, dlls/d3dxof/.gitignore,
	  dlls/dbghelp/.gitignore, dlls/dciman32/.gitignore,
	  dlls/ddraw/.gitignore, dlls/ddraw/tests/.gitignore,
	  dlls/devenum/.gitignore, dlls/dinput/.gitignore,
	  dlls/dinput/tests/.gitignore, dlls/dinput8/.gitignore,
	  dlls/dmband/.gitignore, dlls/dmcompos/.gitignore,
	  dlls/dmime/.gitignore, dlls/dmloader/.gitignore,
	  dlls/dmscript/.gitignore, dlls/dmstyle/.gitignore,
	  dlls/dmsynth/.gitignore, dlls/dmusic/.gitignore,
	  dlls/dmusic32/.gitignore, dlls/dnsapi/.gitignore,
	  dlls/dnsapi/tests/.gitignore, dlls/dplay/.gitignore,
	  dlls/dplayx/.gitignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.gitignore, dlls/dsound/.gitignore,
	  dlls/dsound/tests/.gitignore, dlls/dswave/.gitignore,
	  dlls/dxdiagn/.gitignore, dlls/dxerr8/.gitignore,
	  dlls/dxerr9/.gitignore, dlls/dxguid/.gitignore, dlls/gdi/.gitignore,
	  dlls/gdi/tests/.gitignore, dlls/glu32/.gitignore,
	  dlls/glut32/.gitignore, dlls/gphoto2.ds/.gitignore,
	  dlls/hhctrl.ocx/.gitignore, dlls/hlink/.gitignore,
	  dlls/iccvid/.gitignore, dlls/icmp/.gitignore,
	  dlls/ifsmgr.vxd/.gitignore, dlls/imaadp32.acm/.gitignore,
	  dlls/imagehlp/.gitignore, dlls/imm32/.gitignore,
	  dlls/inseng/.gitignore, dlls/iphlpapi/.gitignore,
	  dlls/iphlpapi/tests/.gitignore, dlls/itss/.gitignore,
	  dlls/kernel/.gitignore, dlls/kernel/messages/.gitignore,
	  dlls/kernel/tests/.gitignore, dlls/lz32/.gitignore,
	  dlls/lz32/tests/.gitignore, dlls/mapi32/.gitignore,
	  dlls/mapi32/tests/.gitignore, dlls/mciavi32/.gitignore,
	  dlls/mcicda/.gitignore, dlls/mciseq/.gitignore,
	  dlls/mciwave/.gitignore, dlls/midimap/.gitignore,
	  dlls/mlang/.gitignore, dlls/mlang/tests/.gitignore,
	  dlls/mmdevldr.vxd/.gitignore, dlls/monodebg.vxd/.gitignore,
	  dlls/mpr/.gitignore, dlls/mprapi/.gitignore,
	  dlls/msacm32.drv/.gitignore, dlls/msacm32/.gitignore,
	  dlls/msacm32/tests/.gitignore, dlls/msadp32.acm/.gitignore,
	  dlls/mscms/.gitignore, dlls/mscms/tests/.gitignore,
	  dlls/msdmo/.gitignore, dlls/msftedit/.gitignore,
	  dlls/msg711.acm/.gitignore, dlls/mshtml/.gitignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/.gitignore,
	  dlls/msi/tests/.gitignore, dlls/msimg32/.gitignore,
	  dlls/msisys.ocx/.gitignore, dlls/msnet32/.gitignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.gitignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrt20/.gitignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.gitignore,
	  dlls/msvcrtd/tests/.gitignore, dlls/msvfw32/.gitignore,
	  dlls/msvidc32/.gitignore, dlls/mswsock/.gitignore,
	  dlls/msxml3/.gitignore, dlls/msxml3/tests/.gitignore,
	  dlls/netapi32/.gitignore, dlls/netapi32/tests/.gitignore,
	  dlls/newdev/.gitignore, dlls/ntdll/.gitignore,
	  dlls/ntdll/tests/.gitignore, dlls/ntdsapi/.gitignore,
	  dlls/objsel/.gitignore, dlls/odbc32/.gitignore,
	  dlls/odbccp32/.gitignore, dlls/ole32/.gitignore,
	  dlls/ole32/tests/.gitignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.gitignore, dlls/oleaut32/tests/.gitignore,
	  dlls/olecli32/.gitignore, dlls/oledlg/.gitignore,
	  dlls/olepro32/.gitignore, dlls/olesvr32/.gitignore,
	  dlls/opengl32/.gitignore, dlls/powrprof/.gitignore,
	  dlls/psapi/.gitignore, dlls/psapi/tests/.gitignore,
	  dlls/qcap/.gitignore, dlls/quartz/.gitignore,
	  dlls/quartz/tests/.gitignore, dlls/query/.gitignore,
	  dlls/rasapi32/.gitignore, dlls/riched20/.gitignore,
	  dlls/riched20/tests/.gitignore, dlls/riched32/.gitignore,
	  dlls/rpcrt4/.gitignore, dlls/rpcrt4/tests/.gitignore,
	  dlls/rsabase/.gitignore, dlls/rsabase/tests/.gitignore,
	  dlls/rsaenh/.gitignore, dlls/rsaenh/tests/.gitignore,
	  dlls/sane.ds/.gitignore, dlls/secur32/.gitignore,
	  dlls/secur32/tests/.gitignore, dlls/security/.gitignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.gitignore,
	  dlls/setupapi/.gitignore, dlls/setupapi/tests/.gitignore,
	  dlls/sfc/.gitignore, dlls/shdocvw/.gitignore,
	  dlls/shdocvw/tests/.gitignore, dlls/shell32/.gitignore,
	  dlls/shell32/tests/.gitignore, dlls/shfolder/.gitignore,
	  dlls/shlwapi/.gitignore, dlls/shlwapi/tests/.gitignore,
	  dlls/snmpapi/.gitignore, dlls/spoolss/.gitignore,
	  dlls/stdole2.tlb/.gitignore, dlls/stdole32.tlb/.gitignore,
	  dlls/sti/.gitignore, dlls/strmiids/.gitignore,
	  dlls/tapi32/.gitignore, dlls/twain_32/.gitignore,
	  dlls/unicows/.gitignore, dlls/url/.gitignore, dlls/urlmon/.gitignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/.gitignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.gitignore,
	  dlls/userenv/.gitignore, dlls/usp10/.gitignore,
	  dlls/usp10/tests/.gitignore, dlls/uuid/.gitignore,
	  dlls/uxtheme/.gitignore, dlls/uxtheme/tests/.gitignore,
	  dlls/vdhcp.vxd/.gitignore, dlls/vdmdbg/.gitignore,
	  dlls/version/.gitignore, dlls/version/tests/.gitignore,
	  dlls/vmm.vxd/.gitignore, dlls/vnbt.vxd/.gitignore,
	  dlls/vnetbios.vxd/.gitignore, dlls/vtdapi.vxd/.gitignore,
	  dlls/vwin32.vxd/.gitignore, dlls/w32skrnl/.gitignore,
	  dlls/winecrt0/.gitignore, dlls/wined3d/.gitignore,
	  dlls/winedos/.gitignore, dlls/winemp3.acm/.gitignore,
	  dlls/wineps.drv/.gitignore, dlls/winex11.drv/.gitignore,
	  dlls/wininet/.gitignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/.gitignore, dlls/winmm/joystick/.gitignore,
	  dlls/winmm/tests/.gitignore, dlls/winmm/winealsa/.gitignore,
	  dlls/winmm/winearts/.gitignore, dlls/winmm/wineaudioio/.gitignore,
	  dlls/winmm/winecoreaudio/.gitignore, dlls/winmm/wineesd/.gitignore,
	  dlls/winmm/winejack/.gitignore, dlls/winmm/winenas/.gitignore,
	  dlls/winmm/wineoss/.gitignore, dlls/winnls32/.gitignore,
	  dlls/winspool.drv/.gitignore, dlls/winspool.drv/tests/.gitignore,
	  dlls/wintab32/.gitignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.gitignore, dlls/wnaspi32/.gitignore,
	  dlls/wow32/.gitignore, dlls/ws2_32/.gitignore,
	  dlls/ws2_32/tests/.gitignore, dlls/wsock32/.gitignore,
	  dlls/wtsapi32/.gitignore, documentation/.gitignore, fonts/.gitignore,
	  include/.gitignore, include/wine/.gitignore, libs/.gitignore,
	  libs/port/.gitignore, libs/unicode/.gitignore, libs/wine/.gitignore,
	  libs/wpp/.gitignore, loader/.gitignore, programs/.gitignore,
	  programs/clock/.gitignore, programs/cmdlgtst/.gitignore,
	  programs/control/.gitignore, programs/eject/.gitignore,
	  programs/expand/.gitignore, programs/explorer/.gitignore,
	  programs/hh/.gitignore, programs/icinfo/.gitignore,
	  programs/iexplore/.gitignore, programs/msiexec/.gitignore,
	  programs/notepad/.gitignore, programs/oleview/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, programs/wordpad/.gitignore,
	  server/.gitignore, tools/.gitignore, tools/widl/.gitignore,
	  tools/winapi/.gitignore, tools/winebuild/.gitignore,
	  tools/winedump/.gitignore, tools/winegcc/.gitignore,
	  tools/wmc/.gitignore, tools/wrc/.gitignore:
	Take advantage of the recursive nature of .gitignore for Makefile entries.
	Prefix other entries with '/' to make them non-recursive.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.17.

----------------------------------------------------------------
2006-07-07  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/query/.gitignore,
	  dlls/query/Makefile.in, dlls/query/query.spec,
	  dlls/query/query_main.c:
	query: Add a skeleton for query.dll.

2006-07-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Add tests for different configurations of INF filenames and
	working directories for install functions.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, include/basetsd.h, include/windef.h,
	  tools/winegcc/winegcc.c:
	configure: Define _WIN64 when building on a 64-bit platform.

	* include/msvcrt/direct.h, include/msvcrt/malloc.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/stdio.h, include/msvcrt/stdlib.h,
	  include/msvcrt/sys/types.h, include/msvcrt/time.h,
	  include/msvcrt/wchar.h:
	include/msvcrt: Fix all definitions of size_t for Win64.

	* dlls/msvcrt/ctype.c, dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/time.c:
	msvcrt: Avoid including system headers in msvcrt.h.

2006-07-07  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/ntquery.h:
	query: Add ntquery.h.

2006-07-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/tests/reg.c:
	ntdll/tests: Added some NULL testing.

2006-07-10  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c:
	server: Only accept 0 as registry handle in functions that take a parent key.

2006-07-08  Robert Shearman <rob@codeweavers.com>

	* include/winerror.h:
	include: Add more error codes used by newer versions of COM.

	* dlls/oleaut32/typelib2.c:
	oleaut32: Make ctl2_hash_guid match the same function in widl, which has likely
	had much wider testing.

	* dlls/oleaut32/typelib.c:
	oleaut32: MSFT_DoFuncs: "reclength" of the function information record is stored
	in a 16 bit int and not in a 8 bit int as previously supposed, using a 0x1ff
	mask. Upper 16 bits contains the ordinal number of the function.
	Allocation of the "recbuf" must be modified, to support larger data
	(based on a patch by White Snake <whitesnake78@mail.com>).

2006-07-08  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Copying a NULL BSTR should result in an empty BSTR in VariantCopy.

2006-07-07  Thomas Kho <tkho@ucla.edu>

	* dlls/winex11.drv/mouse.c:
	winex11: Use correct multiplier for negative relative mouse movements.

2006-07-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Implement revocation check in CertVerifySubjectCertificateContext.

2006-07-08  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Updated Korean resource.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resource.

2006-07-08  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Nl.rc: Shift Graphics page up to fill the empty place.

2006-07-07  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winecfg/audio.c:
	winecfg: Write-strings warnings fix.

2006-07-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/urlmon_main.c:
	urlmon: Register protocol handlers in DllMain.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Use non heap based objects for class factories.

2006-07-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix typo breaking 3.0 pshaders color input.

2006-07-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Protect X11 calls by a critical section.

	* dlls/user/focus.c, dlls/user/tests/win.c, server/queue.c,
	  server/trace.c, server/window.c:
	user: Improve SetActiveWindow test, add SetForegroundWindow test, make them
	pass under Wine.

2006-07-05  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/winex11.drv/opengl.c:
	Add a common fps counter channel to ddraw, opengl and d3d.

2006-07-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Create nsWineURI even if we don't have valid nsIURI.

	* dlls/shdocvw/tests/Makefile.in, dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of SetClientSite.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Call GetContainer in SetClientSite.

	* dlls/uuid/uuid.c, include/.gitignore, include/Makefile.in,
	  include/htiframe.idl:
	include: Added htiframe.idl.

2006-07-07  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Trace ABS/ABSNEG modifiers.

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Create fake input semantics for d3d8 shaders.
	Use them to remove the need for loading arrays in two different places.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Reverse semantics maps for shaders.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Make WINED3D_ATR macros more flexible.
	Make them operate on a type, as opposed to a semantic name.

	* dlls/wined3d/drawprim.c, include/wine/wined3d_types.h:
	wined3d: Simplify primitiveDeclartationConvertToStrided.
	Assign fixed indices to declaration inputs.
	Then use a common path to load the strided data.

	* dlls/ddraw/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add position_transformed flag to Strided data format.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Only link and use GLSL program if at least one GLSL shader is available.

2006-07-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_En.rc, dlls/shell32/shell32_main.h,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlfileop.c,
	  dlls/shell32/shresdef.h:
	shell32: Show a confirmation before deleting files with syscalls.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: If possible use SHFileOperationW to delete in unixfs.
	This gives confirmation dialogs, recursive directory removal etc.

2006-07-07  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: map_axis must be able to work with LONG's value range.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Remove redundant struct members.

2006-07-06  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Implement the GetProperty call for getting the range of an axis.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Call fake_current_js_state on the places where it is actually needed
	in SetProperty.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Only fake the current state on axes that are actually there.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Move the axes and button configs into the JoyDev struct.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Utilize the offsets and the transform to support the user
	supplied data format.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Adds offset and transform and their basic handling to the joystick
	implementation.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: When handling axes, ignore the ABS_HAT.* as they are handled as POV.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Set the amount of POVs in the caps.

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Detect more than one /dev/input/event joystick.

2006-07-07  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix D3DSIO_TEXKILL for GLSL.

2006-07-07  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/En.rc:
	winecfg: Shift Graphics page up to fill the empty place.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/surface.c, dlls/d3d8/swapchain.c, dlls/d3d8/tests/device.c:
	d3d8: Fix remaining refcount tests and tighten all tests.

2006-07-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: Use correct way of determining the password for anonymous ftp.

2006-07-07  Pierre d'Herbemont <pdherbemont@free.fr>

	* dlls/shell32/shell.c, dlls/shell32/shlfileop.c:
	shell: Move SHIsFileAvailableOffline from shell.c to shlfileop.c to
	ensure the 16/32 bits separation.

	* server/context_powerpc.c:
	server: Fix context_powerpc.c compilation.

2006-07-07  Mike McCormack <mike@codeweavers.com>

	* dlls/uuid/uuid.c:
	uuid: Add indexsvr's IIDs to libuuid.

	* include/.gitignore, include/Makefile.in, include/indexsvr.idl:
	include: Add indexsvr.idl (IWordBreaker).

2006-07-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/riched20/caret.c:
	riched20: Replace an if-statement with empty body with a FIXME comment.

	* dlls/comctl32/trackbar.c, dlls/mlang/tests/mlang.c,
	  dlls/msg711.acm/msg711.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/user/driver16.c, dlls/wined3d/drawprim.c,
	  dlls/winex11.drv/wintab.c, dlls/winmm/driver.c,
	  dlls/wintab32/context.c:
	janitorial: Put "inline static" at the beginning of a declaration.

	* dlls/shell32/systray.c, dlls/wined3d/wined3d_private.h,
	  programs/explorer/systray.c:
	janitorial: Move the storage specifier to the beginning of the declaration.

2006-07-06  Thomas Kho <tkho@ucla.edu>

	* programs/notepad/main.c:
	notepad: Change window classname from NPClass to Notepad.

2006-07-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/x-png mime filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/bmp filter.

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added image/gif filter.

	* dlls/urlmon/tests/misc.c:
	urlmon: Added more test of FindMimeFromData.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Fix handling of proposed mime.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Added image/pjpeg mime filter.

2006-07-06  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warning fix.

2006-07-06  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.l, tools/widl/parser.y,
	  tools/widl/typegen.c, tools/widl/widltypes.h:
	widl: Add support for the builtin constants "TRUE" and "FALSE".

	* dlls/ole32/compobj.c:
	ole32: Fix the return value of COM_RegReadPath and make it static.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: ITypeComp_fnBind should do case-insensitive compares on the name
	passed in.

	* dlls/oleaut32/olepicture.c, include/rpcndr.h:
	oleaut32: Add a typedef for "boolean".
	Fix up an conflict that this type has with jpeglib.h.

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fix the error code returned by ITypeComp on an interface when the
	name matches, but the flags don't.

2006-07-05  James Hawkins <truiken@gmail.com>

	* dlls/advapi32/security.c:
	advapi32: Get the token type in ImpersonateLoggedOnUser.

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Add tests for LookupAccountSid.

2006-07-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/event.c:
	winex11.drv: Add window style and visibility status to the take focus event
	trace.

2006-07-05  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix D3DSIO_M#X# instruction for both ARB and GLSL shaders.
	This instruction was being handled incorrectly in the case where the
	2nd src argument contained a relatively addressed constant.

2006-07-06  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/file.c:
	kernel/tests: More tests for OpenFile.

2006-07-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wininet/ftp.c:
	wininet: Return NULL handle if no connection is established.

2006-07-04  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Clean up drawPrimitive/drawPrimitiveDrawStrided.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/tests/vertexdeclaration.c, dlls/d3d9/vertexdeclaration.c,
	  dlls/wined3d/device.c:
	wined3d: Implement FVF to DECL9 conversion (with tests).

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move register count pass to SetFunction.
	Move semantics pointers out of the reg_maps, make them persistent data
	in the shader (again, for future software shaders).

	* dlls/wined3d/device.c:
	wined3d: Fix STREAM flag override.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Add missing PSIZE register for decl8->9 conversion.

	* dlls/wined3d/device.c:
	wined3d: Allow mix of SW vertex and GLSL pixel shader.
	Do not attach non-GLSL shaders to the GLSL program, that will cause a
	crash. Mix with ARB shaders is never going to happen, because the
	selection code will always choose GLSL for both or ARB for both.

	* dlls/wined3d/baseshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Rework shader mode selection.
	- currently half the shader selection code (GLSL vs ARB) is in
	fillGLcaps. The parts that check for software shaders are in
	GetDeviceCaps. That placement, will work, but is definitely not optimal.
	FillGLcaps should detect support - it should not make decision as to
	what's used, because that's not what the purpose of the function is.
	GetDeviceCaps should report support as it has already been selected.
	Instead, select shader mode in its own function, called in the
	appropriate places.
	- unifying pixel and vertex shaders into a single selection is a
	mistake. A software vertex shader can be coupled with a hardware arb or
	glsl pixel shader, or no shader at all. Split them back into two and add
	a SHADER_NONE variant.
	- drawprim is doing support checks for ARB_PROGRAM, and making shader
	decisions based on that - that's wrong, support has already been
	checked, and decided upon, and shaders can be implemented via software,
	ARB_PROGRAm or GLSL, so that support check isn't valid.
	- Store the shader selected mode into the shader itself. Different types
	of shaders can be combined, so this is an improvement. In fact, storing
	the mode into the settings globally is a mistake as well - it should be
	done per device, since different cards have different capabilities.

2006-07-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/tests/.gitignore, dlls/shdocvw/tests/Makefile.in,
	  dlls/shdocvw/tests/webbrowser.c:
	shdocvw: Added test of IProvideClassInfo.

2006-07-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Features may be published but absent.

	* dlls/msi/msi.c, dlls/msi/tests/msi.c:
	msi: Add a test for MsiGetComponentPath and make it pass.

	* dlls/msi/msi.c:
	msi: Use msi_strcpy_to_awstring to return the string in MsiComponentGetPath.

2006-06-30  Ge van Geldorp <ge@gse.nl>

	* configure, configure.ac:
	configure: Allow relocation on x86_64.

2006-07-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/txtrange.c:
	mshtml: Added get_text implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/selection.c, dlls/mshtml/txtrange.c:
	mshtml: Added createRange implementation.

	* dlls/mshtml/selection.c:
	mshtml: Added get_type implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/selection.c:
	mshtml: Added get_selection implementation.

	* dlls/mshtml/olecmd.c:
	mshtml: Return S_OK in Exec(IDM_BASELINEFONT3).

2006-07-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Flip WINED3DFMT_R8G8B8 to GL_RGB.

2006-07-05  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	msi: Forward MsiUseFeature to MsiUseFeatureEx.

2006-07-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/Makefile.in:
	fonts: Fix a copy/paste bug preventing correct generation of the
	System font for codepages 1256 and 1257.

2006-07-03  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Error out if hInternet is a bad handle.

	* dlls/wininet/ftp.c:
	wininet: Use a blank password if none is provided in FTP_Connect.

2006-07-03  Detlef Riekenberg <wine.dev@web.de>

	* configure, configure.ac, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/tests/.gitignore, dlls/comdlg32/tests/Makefile.in,
	  dlls/comdlg32/tests/printdlg.c, programs/winetest/Makefile.in:
	comdlg32: Add initial test.

2006-07-02  Bang Jun-Young <bang.junyoung@gmail.com>

	* dlls/cryptnet/.gitignore:
	cryptnet: Add .gitignore.

2006-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/user/tests/menu.c:
	user/tests: Write-strings warnings fix.

2006-07-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/mapi32/sendmail.c:
	mapi32: Write-strings warnings fix.

2006-07-04  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/wininet.h:
	wininet.h: Add extra error code.

2006-07-04  Robert Reif <reif@earthlink.net>

	* dlls/dxdiagn/dxdiag_main.c:
	dxdiagn: Fix TRACE/FIXME formats.

2006-07-03  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Recompute header size after an insertion of a column.

2006-07-03  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/reg.c:
	ntdll: Fix possible TRACE crash.

2006-07-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Implement processing of modules for SLTG typelibs.
	Set funckind when processing SLTG functions.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Improve SLTG var support.
	Pass both the start of the block and the offset to the first item into
	SLTG_DoVars as they may be different.
	Process 0xfffe offsets for variable names - this means to use the
	previous name.
	Add support for parsing the optional varflags field.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Fix function support for SLTG dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the processing of functions in SLTG typelibs into a
	separate function and use it when processing dispinterfaces.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the initialisation of memidConstructor and
	memidDestructor of type infos to the common ITypeInfo creation
	function.
	Remove the WARN message as this functionality isn't implemented in
	native either.

	* dlls/oleaut32/typelib.c:
	oleaut: Process references for SLTG dispatch types.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Abstract out the processing of variables in SLTG typelib components
	to a common function.

	* dlls/oleaut32/typelib.c:
	oleaut: Process references when parsing SLTG alias types.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Rename SLTG_DoType to SLTG_DoElem and split out the common TYPEDESC
	generating code to SLTG_DoType.
	Process SLTG alias types with SLTG_DoType as the data is stored in the
	same format as in other components of the typelib.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: The SLTG_MemberHeader and SLTG_TypeInfoTail structures are
	common to all elements, so move the processing of these from the
	individual element processing.
	Improve SLTG alias processing.

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	oleaut: Document some more members of SLTG_TypeInfoTail.

	* dlls/advapi32/service.c:
	advapi32: Fix the service function being called when extended is
	either set or not set (reported by Andrey Turkin).

2006-07-03  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't advance the buffer for FC_STRUCTPAD2.

2006-07-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/keyboard.c:
	winex11.drv: Update Lithuanian keyboard layout to better match the X11 one.

2006-07-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/crypt32/protectdata.c, dlls/msi/table.c:
	Avoid non-portable WCHAR[] constructs.

2006-07-03  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add a function to print out D3DDECLUSAGE9 values.

	* dlls/wined3d/baseshader.c:
	wined3d: Fix faulty DCL trace.

2006-07-02  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/arb_program_shader.c:
	wined3d: Resync ARB mnxn function with GLSL mnxn function.

	* dlls/wined3d/baseshader.c:
	wined3d: Use shader_get_regtype() in register counting pass.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move SHADER_ARB code into arb_program_shader.c.

	* dlls/wined3d/device.c:
	wined3d: Cleanup: print constants in device code.

2006-07-03  Ivan Gyurdiev <ivg231@gmail.com>

	* include/d3d9types.h:
	d3d9: Fix FVF POSITION mask.

2006-07-02  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/typelib.c:
	oleview: Added next field to TypeLib viewer treeview control.

	* programs/oleview/typelib.c:
	oleview: Improved type handling in TypeLib viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/typelib.c:
	oleview: Added open TypeLib file functionality.

	* programs/oleview/En.rc, programs/oleview/resource.h,
	  programs/oleview/typelib.c:
	oleview: Added type displaying in TypeLib Viewer.

2006-06-30  Thomas Kho <tkho@ucla.edu>

	* programs/wcmd/wcmdmain.c:
	wcmd: Modify option parser to allow compound options.

2006-07-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winmm/winealsa/audio.c:
	winmm/winealsa: Write-strings warning fix.

2006-07-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Write-strings warnings fix.

2006-06-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/listview.c:
	comctl32/tests: Write-strings warnings fix.

2006-06-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/regedit/listview.c:
	regedit: Write-strings warnings fix.

2006-06-30  Hervé Poussineau <hpoussin@reactos.org>

	* dlls/mapi32/prop.c:
	mapi32: Use kernel32 functions instead of the ntdll ones.

2006-06-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, tools/wine.inf:
	shdocvw: Get rid of Mozilla ActiveX control dependency.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c,
	  dlls/mshtml/oleobj.c:
	mshtml: Added beginning IDM_BROWSEMODE implementation.

	* tools/wine.inf:
	wine.inf: Set gecko url to activate Wine Gecko installer.

	* dlls/mshtml/install.c:
	mshtml: Add trailing '\' to gecko_path if needed.

2006-06-30  Ge van Geldorp <ge@gse.nl>

	* include/cvconst.h, programs/winedbg/be_x86_64.c:
	winedbg: Implement be_x86_64_init_registers.

	* include/msvcrt/string.h:
	include/msvcrt: Make sure size_t is properly defined for 64-bit.

	* programs/winedbg/be_alpha.c, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/debugger.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/memory.c,
	  programs/winedbg/stack.c:
	winedbg: Adjust the parameters of the backend read/write routines to
	match those of ReadProcessMemory/WriteProcessMemory, since those are
	the ones actually used.

	* server/thread.c:
	server: The "select" call passes handles, not ints.

2006-06-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/.gitignore, dlls/shell32/Makefile.in,
	  dlls/shell32/shlfileop.c, dlls/shell32/shres.rc,
	  dlls/shell32/shresdef.h:
	shell32: Add an icon for delete confirmation.

	* dlls/shell32/shlfileop.c:
	shell32: Allow for custom icons in confirmation messages.

	* dlls/shell32/shell32_main.h, dlls/shell32/shlfileop.c:
	shell32: Pass the correct parent hwnd to confirmation dialogs.

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_DeleteFileW.

2006-07-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Fix parsing of hex numbers with 'e' in the string by moving
	the exponent parsing to after the hex digit parsing.

2006-06-30  Robert Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c:
	advapi32: Implement RegisterServiceCtrlHandleExW.

2006-06-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/setupapi/tests/devinst.c:
	setupapi/tests: Add trailing '\n's to ok() calls.

2006-06-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/amstream/regsvr.c, dlls/avifil32/regsvr.c, dlls/comcat/regsvr.c,
	  dlls/d3dxof/regsvr.c, dlls/ddraw/regsvr.c, dlls/dinput/regsvr.c,
	  dlls/dmband/regsvr.c, dlls/dmcompos/regsvr.c, dlls/dmime/regsvr.c,
	  dlls/dmloader/regsvr.c, dlls/dmscript/regsvr.c,
	  dlls/dmstyle/regsvr.c, dlls/dmsynth/regsvr.c, dlls/dmusic/regsvr.c,
	  dlls/dplayx/regsvr.c, dlls/dpnet/regsvr.c, dlls/dsound/regsvr.c,
	  dlls/dswave/regsvr.c, dlls/dxdiagn/regsvr.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/itss/regsvr.c, dlls/mlang/regsvr.c,
	  dlls/msi/regsvr.c, dlls/objsel/regsvr.c, dlls/ole32/regsvr.c,
	  dlls/oleaut32/regsvr.c, dlls/shdocvw/regsvr.c, dlls/shell32/regsvr.c,
	  dlls/urlmon/regsvr.c:
	Use the return value of register_key_guid.

2006-06-30  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/typelib.c:
	oleview: Added base TypeLib Viewer menu functionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/typelib.c:
	oleview: Added status bar to TypeLib Viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/pane.c, programs/oleview/resource.h,
	  programs/oleview/tree.c, programs/oleview/typelib.c:
	oleview: Added TypeLib Viewer base.
	- Added TypeLib Viewer base.
	- Fixed multiple instance of pane window functionality.
	- Added field with TypeLib path to ITEM_INFO structure.

2006-06-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c:
	wined3d: Perform sanity checks on the rectangle in LockRect.

2006-06-30  Piotr Caban <piotr.caban@gmail.com>

	* dlls/ddraw/ddraw.c:
	ddraw: Added missing '\n' in debug traces.

	* dlls/quartz/pin.c:
	quartz: Fixed crash in releasing uninitializes pAlloc and pReader.

2006-06-30  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: When CoLockObjectExternal with fLock=TRUE is used on an object
	that hasn't yet been marshaled then it should create a new stub
	manager.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix a typo where the FIXME doesn't match the code.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for RpcMgmtSetServerStackSize.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c:
	advapi32: Implement RegDisablePredefinedCache.

2006-06-30  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/reg.c, dlls/ntdll/tests/reg.c:
	ntdll: Fix return codes for NtCreateKey (with tests).

2006-06-29  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathFindExtensionA.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCanonicalize.

2006-06-29  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shfldr_fs.c:
	shell32: Use SHFileOperationW to delete files.

2006-06-29  Ivan Leo <ivanleo@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Comment out a test that crashes on windows nt 4.0.

2006-06-29  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c, dlls/ddraw/material.c, dlls/ddraw/viewport.c:
	ddraw: Fix some material related bugs.

	* dlls/ddraw/device.c, dlls/ddraw/executebuffer.c:
	ddraw: Matrix values in the execute buffer are handles.

2006-06-29  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c:
	winex11.drv: Update window's full screen state on the resolution
	change as well as on the window resize event.

	* dlls/user/defwnd.c, dlls/user/dialog.c, dlls/user/message.c,
	  dlls/user/nonclient.c, dlls/user/win.c, dlls/user/winpos.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winpos.c, include/win.h,
	  include/winpos.h, include/winuser.h:
	include: Move appropriate parts of winpos.h to winuser.h and win.h,
	remove winpos.h afterwards.

2006-06-28  Maarten Lankhorst <M.B.Lankhorst@gmail.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/cryptnet/Makefile.in,
	  dlls/cryptnet/cryptnet.spec, dlls/cryptnet/cryptnet_main.c:
	cryptnet: Implement a stub cryptnet dll.

2006-06-28  Juan Lang <juan_lang@yahoo.com>

	* programs/regedit/childwnd.c:
	regedit: Update status bar after editing key name.

2006-06-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix a few GLSL shader instruction translations.
	This fixes the translations for a few instructions in GLSL and allows
	Cubemap sampling in pixel shaders < 2.0.  It makes some of the
	lighting on textures in Half Life 2 look better, including some of the
	water effects.	It's not perfect yet, but much closer now.

2006-06-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole32: When marshaling a proxy make sure to maintain an external
	reference on the stub object so that the first proxy can be released.
	Implement external refcount sharing between a proxy and the marshaled proxy.
	Extend the marshaling of a proxy test to show that an external reference
	is always kept on the stub object.

	* dlls/ole32/tests/marshal.c:
	ole32: Add a test for CoCreateInstance doing object hosting by
	automatically creating an appropriate apartment for the object and
	returning a proxy to it.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoGetObject.

	* dlls/oleaut32/typelib.c:
	oleaut32: RegisterTypeLib should register any interface that derives
	from IDispatch rather than just dual interfaces.
	This is hinted at, although not explicitly stated on MSDN, but was
	verified by tests with native oleaut32.

2006-06-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/vertexbuffer.c:
	ddraw: Correct a NULL pointer check.

2006-06-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/version.c:
	kernel: Version test was using imports missing on WinME.

2006-06-28  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/quartz/filtergraph.c:
	quartz: Fixed typo (Coverity).

2006-06-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/quartz/regsvr.c:
	quartz: Use the return value of register_key_guid.

2006-06-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Handle bstr length of -1 in typelibs.

	* dlls/shell32/shell32.spec, dlls/shell32/shellord.c:
	shell32: Add a stub for InvalidateDriveType.

2006-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, include/wine/wined3d_interface.h:
	wined3d: Use register combiners for texture stage operations.
	Make wined3d use register combiners for texture stage operations. In
	order to do that the texture unit index needs to be separated from the
	texture stage index. For cards that don't support the
	NV_register_combiners extension nothing should change.

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add code for using register combiners for texture stage operations.
	On nVidia cards the value of GL_MAX_TEXTURE_UNITS is generally not
	larger than 4. In Direct3D that would correspond to
	MaxSimultaneousTextures in the caps, rather than MaxTextureBlendStages
	(which can be much larger) to which it currently corresponds in
	wined3d. Using register combiners we can get around that limitation
	and get up to GL_MAX_GENERAL_COMBINERS_NV (typically 8) texture
	stages. This patch adds code for doing the texture operations with
	register combiners instead of ARB_texture_env_combine or
	NV_texture_env_combine4, but doesn't make use of that code yet. That's
	what the next patch will do.

	* dlls/wined3d/drawprim.c:
	wined3d: Fix uploading of textures for shaders.
	The code for uploading / binding textures for use with pixel shaders
	is slightly different from the one for uploading / binding textures
	for use with the fixed function pipeline. It would be possible to keep
	the code in a single function with a couple of conditionals, but in
	combination with the changes needed for register combiners that would
	become quite messy.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_gl.h:
	wined3d: Texture limits fixes.
	GL_LIMITS(textures) is currently used for both the number of texture
	stages and the maximum number of simultaneous textures. In the current
	code that's the same, but in a later patch that will be separated,
	since a texture stage doesn't have to reference an actual
	texture. Also, shaders can access a larger number of samplers than the
	number of texture units the fixed function pipeline can access.

	* include/wine/wined3d_gl.h:
	wined3d: Add register combiner function pointers.

	* dlls/wined3d/utils.c:
	wined3d: Add & use D3DTEXTUREOP dumping code.

2006-06-27  James Hawkins <truiken@gmail.com>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathAppendA.

2006-06-27  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: If needed show a confirmation dialog when deleting with SHFileOperation.
	Show a confirmation dialog in SHFileOperationW for the FO_DELETE
	operation when called without FOF_NOCONFIRMATION or with
	FOF_WANTNUKEWARNING. That way the user's files won't be deleted
	without a warning.

2006-06-26  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl32: Fix the returned metrics and add a translation vector to the end of
	each list.

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: Moved get/set_thread_context implementation to ptrace.c.

2006-06-27  Ivan Leo <ivanleo@gmail.com>

	* dlls/msvcrt/tests/file.c:
	msvcrt/tests: Don't leave files on the disk.

2006-06-27  William Knop <william.knop@gmail.com>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix for non-elf build (undefined symbol: _elf_is_in_thunk_area).

2006-06-27  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add tests for IsThemePartDefined.

2006-06-27  Hans Leidekker <hans@it.vu.nl>

	* dlls/userenv/userenv.spec, dlls/userenv/userenv_main.c:
	userenv: Add a stub implementation for GetProfileType.

2006-06-27  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/tests/device.c, dlls/ddraw/vertexbuffer.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h:
	wined3d: Vertex buffer can be locked multiple times.

2006-06-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Always have a libxml doc associated with a domdoc object, even if the
	object has no nodes.
	This means we don't need to add checks for NULL libxml node ptrs in our node
	implementation.

2006-06-27  James Hawkins <truiken@gmail.com>

	* dlls/msi/dialog.c:
	msi: Read the font color from the database, and use it for the text control.

2006-06-26  James Hawkins <truiken@gmail.com>

	* programs/msiexec/Makefile.in, programs/msiexec/msiexec.c:
	msiexec: Use CommandLineToArgvW instead of process_args to reduce code
	duplication.

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/critsection.c:
	ntdll: Faster critical sections on MacOS using Mach semaphores.

	* libs/wine/loader.c:
	libwine: Attempt to increase some user limits that are set too low on some
	platforms.

	* configure, configure.ac, include/config.h.in,
	  programs/wineconsole/curses.c:
	wineconsole: Portability fixes in the curses mouse support.

	* tools/widl/widltypes.h:
	widl: Fixed syntax of DECL_LINK macro to look more like C code.

2006-06-21  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shlwapi/tests/path.c:
	shlwapi: Test for UrlGetPart in case of file name.

2006-06-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/path.c, dlls/ntdll/tests/path.c:
	ntdll: Fix 2 failing test on native. Change Wine accordingly.

2006-06-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/shell32/shell.c, dlls/shell32/shell32.spec:
	shell32: Add a stub implementation for SHIsFileAvailableOffline.

2006-06-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/info.c:
	winedbg: Module info.
	when requesting info on a module by address, always print the module
	ELF/PE pair (if this applies) (and not only the embedded PE), which
	can be confusing.

	* programs/winedbg/info.c:
	winedbg: Use 64 bit version of imagehlp_module.
	This allows reimplementing the module list command and do less black
	magic to guess the ELF debug format.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c:
	dbghelp: Implemented SymEnumerateModules64.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c:
	dbghelp: Module info.
	- now internally storing module info as a 64bit module structure
	(the interest in not in the 64 bit side of things, but because
	it allows storing lots of usefull information)
	- fixed SymGetModuleInfo64W which wasn't returning the
	LoadedPdbName field
	- now filling for MSC files with the extended information
	(instead of guessing it)
	- reused the extended module info to store wine ELF module
	information (link for map link, stabs vs dwarf symbol info)

2006-06-27  Alexandre Julliard <julliard@winehq.org>

	* programs/winetest/maketest:
	winetest: Portability fix in the maketest script. Added support for git.

2006-06-26  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/winex11.drv/window.c:
	winex11.drv: Write-strings warning fix.

2006-06-27  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions and a little cleanup.
	- Implement D3DSIO_DP2ADD, D3DSIO_TEXKILL, D3DSIO_TEXM3X3PAD
	- Partially implement D3DSIO_TEXBEM, D3DSIO_TEXM3X3VSPEC (as much as
	they are implemented in ARB_fragment_program at least).
	- Stop copying the SHADER_PARSE_STATE struct in each ARB shader
	routine - use a pointer instead.

2006-06-27  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Remove some redundant code.

	* dlls/wined3d/device.c, dlls/wined3d/vertexbuffer.c:
	wined3d: Fix compilation (VBO constants).

2006-06-26  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/parser.c:
	setupapi: Fix SetupCloseInfFile when a NULL handle is given, with tests.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathAddBackslash.

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathCombineA.

	* dlls/shdocvw/version.rc:
	shdocvw: Upgrade the version to 5.50.4134.599.

2006-06-26  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/device.c:
	ddraw: Fix some compiler warnings.

	* dlls/ddraw/ddraw.c:
	ddraw: Assign the surface descriptions height to the height.

2006-06-26  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed typo (Coverity).

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add tests for GetCurrentThemeName.

2006-06-22  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Added a bit more functional tests to OpenThemeData.

2006-06-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/conpoint.c:
	mshtml: Added Unadvise implementation.

	* dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Destroy connection points.

	* dlls/mshtml/conpoint.c:
	mshtml: Added Advise implementation.

	* dlls/mshtml/nsio.c:
	mshtml: Return text/html by default in GetContentType.

	* dlls/mshtml/nsio.c:
	mshtml: Return NS_OK in GetStatus if channel is NULL.

	* dlls/mshtml/navigate.c:
	mshtml: Call OnStopRequest in OnStopBinding.

	* dlls/mshtml/navigate.c:
	mshtml: Break reading if IStream::Read returns 0 bytes.

2006-06-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/loadopts.c, dlls/mshtml/tests/.gitignore,
	  dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/misc.c:
	mshtml: Added HTMLLoadOptions implementation (with tests).

2006-06-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mci.c:
	mci: Fix some mciSendString quirks.
	Really check in MCI open string commands if the name we have is a
	device (and no longer rely on bad heuristics for it).

2006-06-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Dwarf & thunks.
	- added the elf_is_in_thunk_area() function to locate an address
	within the known thunk area of Wine's builtin modules
	- now passing this thunk information to the dwarf parser so that it
	can drop functions from the thunk areas (as dwarf symbols), so that
	those functions can be later on marked as thunks in dbghelp
	internals

2006-06-23  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Elf for wine and spec definitions.
	Enhancement over previous fix (we don't need to insert NOTYPE symbols
	in our public symbol table, so drop them as early as possible).

2006-06-25  Andrey Turkin <pancha@Mail.nnov.ru>

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	msi: Disable some path validity checks in MsiSetTargetPath.

2006-06-24  Ivan Leo <ivanleo@gmail.com>

	* dlls/amstream/amstream.c:
	amstream: Implement IAMMultiMediaStreamImpl_OpenFile and
	IAMMultiMediaStreamImpl_OpenMoniker.

	* dlls/advapi32/tests/security.c:
	advapi32/tests: Fix a crash when ConvertSidToStringSidA isn't available.

2006-06-24  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/user/resources/user32_Pl.rc:
	user: user32_Pl.rc: Fix the capitalization of OK.

2006-06-23  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/ntdll/time.c:
	ntdll: Add UZT timezone info.

2006-06-23  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/clipper.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/executebuffer.c, dlls/ddraw/gamma.c, dlls/ddraw/main.c,
	  dlls/ddraw/surface.c, dlls/ddraw/tests/d3d.c, dlls/ddraw/utils.c,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c,
	  dlls/shell32/shlfolder.c, dlls/wined3d/device.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/utils.c, programs/winefile/resource.h:
	Assorted spelling, case and grammar fixes.

2006-06-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/classes.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	shell32: Fix computation of default verb.
	Compute the default verb as documented on MSDN instead of blindly
	assuming it is 'open'. This fixes the WordViewer association in some
	cases.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Protect pthread.h inclusion.

	* dlls/ddraw/tests/refcount.c:
	ddraw: Fix compilation with gcc 2.95.

	* dlls/crypt32/tests/encode.c:
	crypt32: Fix compilation with gcc 2.95.

2006-06-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c:
	ddraw: Set the video memory and visible flag on render targets.

	* dlls/ddraw/ddraw.c, dlls/ddraw/ddraw_private.h, dlls/ddraw/direct3d.c:
	ddraw: Enumerate the reference d3ddevice.

	* dlls/wined3d/surface.c:
	wined3d: Fix single buffering.
	Tell gl to draw to the back buffer when a back buffer is used, do not
	use the value from gl.

	* dlls/wined3d/device.c:
	wined3d: Fix a bad trace.

2006-06-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Create vertex buffer objects for D3D vertex buffers.

	* dlls/wined3d/vertexbuffer.c:
	wined3d: Vertex fixups.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_types.h:
	wined3d: Add support for VBOs to the drawing code.

2006-06-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: PathCombineW should return NULL on invalid parameters.

2006-06-26  Hwang YunSong(황윤성) <hys545@dreamwiz.com>

	* programs/oleview/Ko.rc, programs/oleview/rsrc.rc:
	oleview: Added Korean resources.

2006-06-24  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/details.c,
	  programs/oleview/interface.c, programs/oleview/main.h,
	  programs/oleview/resource.h, programs/oleview/tree.c:
	oleview: Fix compilation with gcc 2.95.
	- patch based on Francois Gouget Fix compilation with gcc 2.95 patch
	- moved some string to resources
	- fixed implementation of IPersistStream interface viewer

	* programs/oleview/interface.c:
	oleview: Added propper ClassName displaying to interface viewer.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/interface.c, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h:
	oleview: Added interface viewer.

2006-06-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/surface.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, include/wine/wined3d_interface.h:
	ddraw/wined3d: IDirectDrawSurface7::SetSurfaceDesc corrections.

2006-06-24  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/gdi/tests/metafile.c:
	gdi/tests: Write-strings warnings fix.

2006-06-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* tools/widl/widltypes.h:
	widl: Write-strings warnings fix.

2006-06-23  James Hawkins <truiken@gmail.com>

	* dlls/shell32/brsfolder.c:
	shell32: Add missing multiply by sizeof(WCHAR)l

2006-06-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Calculate size of FC_STRUCT arguments correctly.

	* dlls/winex11.drv/init.c, dlls/winex11.drv/opengl.c,
	  dlls/winex11.drv/x11drv.h:
	winex11: Introduce a function to retrieve the glx drawable and have
	both the GET_GLX_DRAWABLE Escape and SwapBuffers call it.

2006-06-23  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/imagehlp/modify.c:
	imagehlp: Fixed typo (Coverity).

2006-06-23  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/thread.c,
	  server/thread.h:
	server: Moved some common bits of get/set_thread_context to thread.c.

	* dlls/ntdll/server.c, include/wine/pthread.h, loader/kthread.c,
	  loader/pthread.c:
	libwine: Added entry for sigprocmask in the pthread functions table.

	* loader/pthread.c:
	wine-pthread: Set thread scope to force using kernel threads on Solaris.

2006-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl32: If there's no glX context don't return a wgl context.

2006-06-22  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/En.rc, programs/oleview/oleview.c,
	  programs/oleview/resource.h:
	oleview: Added system configuration dialog.

	* programs/oleview/En.rc, programs/oleview/oleview.c:
	oleview: Added copy HTML tag functionality.

	* programs/oleview/oleview.c:
	oleview: Added copy CLSID functionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added CreateInstanceOn functionality.

2006-06-22  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/Makefile.in, dlls/msi/tests/install.c:
	msi: Add tests for components that aren't associated with a feature.

2006-06-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/loadopts.c, dlls/mshtml/main.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added stub implementation of HTMLLoadOptions.

	* dlls/mshtml/main.c, dlls/uuid/uuid.c, include/.gitignore,
	  include/Makefile.in, include/optary.idl:
	mshtml: Added optary.idl file.

	* dlls/mshtml/nsio.c:
	mshtml: Inherit NSContainer in NewURI.

	* dlls/mshtml/conpoint.c, dlls/mshtml/tests/htmldoc.c:
	mshtml: Fix a typo.

	* dlls/mshtml/olecmd.c:
	mshtml: Added CGID_MSHTML to IOleCommandTarget::Exec.

2006-06-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.c:
	advapi: Add a stub for SystemFunction035.

	* dlls/kernel/tests/locale.c:
	kernel: Change failing to test to show it doesn't have anything to do
	with embedded NULLs.

2006-06-22  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/secur32/ntlm.c:
	secur32: Write-strings warnings fix.

	* dlls/ole32/tests/stg_prop.c:
	ole32/tests: Write-strings warning fix.

2006-06-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/mouse.c:
	dinput: Warp mouse each 10ms instead of dropping events.

2006-06-22  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Destroy the windows after we've used them.

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add a case sensitivity test.

2006-06-22  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/oleview/En.rc:
	oleview: Spelling fixes (English).

	* programs/oleview/Fr.rc, programs/oleview/rsrc.rc:
	oleview: French localization.

2006-06-22  Huw Davies <huw@codeweavers.com>

	* dlls/winex11.drv/opengl.c:
	winex11: glXQueryExtension has its error and event base arguments swapped
	compared with other *QueryExtension functions!

2006-06-22  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/details.c, programs/oleview/main.h,
	  programs/oleview/tree.c:
	oleview: Removed use of strlenW, strcmpW and strcpyW functions.

2006-06-22  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Send pkg-config error messages to /dev/null.

2006-06-22  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/editor.c:
	riched20: Fix message range for get_msg_name.

2006-06-21  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec, dlls/crypt32/tests/crl.c,
	  include/wincrypt.h:
	crypt32: Implement CertGetCRLFromStore.
	- implement CertGetCRLFromStore, with tests
	- update tests for CRL revocation functions to show name isn't checked

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	oleaut32: Correctly handle NULLs embedded in BSTRs, with tests.

	* dlls/kernel/tests/locale.c, libs/unicode/sortkey.c:
	kernel: Use the WinXP method for comparing strings with embedded NULLs. Update
	tests.

2006-06-21  Ivan Leo <ivanleo@gmail.com>

	* dlls/quartz/filesource.c:
	quartz: Fix media type detection.

2006-06-21  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/elf_module.c:
	dbghelp: Elf for wine and spec definitions.
	- fixed regression when looking for winebuild's special symbols in ELF symtab
	- STT_NOTYPE is still accepted as a valid symbol type (on top of STT_FUNC
	and STT_OBJECT)

2006-06-21  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in:
	Makefile.in: Add target "ctags" to the overview.

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS: Some directories where added / renamed.

2006-06-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Only test the needed functions once, bail out if one is missing.

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Add some tests for GetWindowTheme.

2006-06-21  James Hawkins <truiken@gmail.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Add a stub implementation of AtlModuleLoadTypeLib.

	* dlls/mapi32/mapi32.spec, dlls/mapi32/mapi32_main.c:
	mapi32: Add a stub implementation of MAPIOpenLocalFormContainer.

2006-06-21  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c:
	ddraw: Use the handle infrastructure for Matrix handles.

2006-06-21  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.16.

----------------------------------------------------------------
2006-06-21  Alexandre Julliard <julliard@winehq.org>

	* programs/oleview/.gitignore, programs/oleview/oleview:
	oleview: Delete the symlink from git.

	* AUTHORS, dlls/shell32/shell32_main.c:
	Updated the AUTHORS list and converted it to utf-8.

2006-06-15  Francois Gouget <fgouget@codeweavers.com>

	* tools/mkinstalldirs:
	tools: Fix mkinstalldirs.
	We cannot trust 'mkdir -p' to set the proper permissions on parent
	directories. So create them manually.
	Fix handling of paths containing spaces.
	Properly prefix the path with './' if it starts with a '-'.
	Stop trying to create a path after the first error.

2006-06-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Extra testing for GetLastError.

2006-06-21  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/msvcrt/tests/string.c:
	msvcrt: Add simple test for _strdup(0).

	* dlls/msvcrt/string.c:
	msvcrt: Fix a crash in _strdup.

2006-06-20  James Hawkins <truiken@gmail.com>

	* dlls/msi/action.c:
	msi: Fix handling of the no-op identifier in the Directory table.

2006-06-19  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/ntdll/server.c:
	ntdll: Write-strings warnings fix.

2006-06-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c, dlls/winspool.drv/tests/info.c:
	winspool/tests: Tests for EnumForms and set an error value in our stub.

2006-06-13  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/msvcrt/data.c, dlls/msvcrt/tests/.gitignore,
	  dlls/msvcrt/tests/Makefile.in, dlls/msvcrt/tests/data.c:
	msvcrt: Fix _initterm, with tests.

2006-06-11  Simon Kissane <skissane@gmail.com>

	* dlls/kernel/kernel32.spec, dlls/kernel/locale.c:
	kernel32: Added SetThreadUILanguage() stub.

2006-06-21  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Stubs for RpcRevertToSelf and RpcMgmtSetComTimeout.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stub for RpcMgmtEnableIdleCleanup.

2006-06-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Pixel format cleanup.

2006-06-20  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/enhmetafile.c, dlls/gdi/tests/metafile.c:
	gdi32: SetWinMetaFileBits: Use the whole device surface if the METAFILEPICT
	parameter is NULL.
	Also use the whole device surface if one of the extents is zero or
	negative and the mapping mode is MM_ANISOTROPIC or MM_ISOTROPIC.
	New tests.

2006-06-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: An empty string as server name is valid for AddPrinterDriver.

2006-06-14  Piotr Caban <piotr.caban@gmail.com>

	* programs/oleview/details.c:
	oleview: Added registry tab in details window.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/details.c, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added details window base.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added base menu funcionality.

	* programs/oleview/En.rc, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/resource.h,
	  programs/oleview/tree.c:
	oleview: Added more TreeView entries.

	* programs/oleview/tree.c:
	oleview: Added TreeView entries read from registry.

	* programs/oleview/En.rc, programs/oleview/Makefile.in,
	  programs/oleview/main.h, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/tree.c:
	oleview: Added TreeView window.

	* programs/oleview/Makefile.in, programs/oleview/main.h,
	  programs/oleview/oleview.c, programs/oleview/pane.c:
	oleview: Added pane bar.

	* configure, configure.ac, programs/Makefile.in,
	  programs/oleview/.gitignore, programs/oleview/En.rc,
	  programs/oleview/Makefile.in, programs/oleview/main.h,
	  programs/oleview/oleview, programs/oleview/oleview.c,
	  programs/oleview/resource.h, programs/oleview/rsrc.rc:
	oleview: Added initial version.

2006-06-21  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Add an "\n" to a fixme to fix an overflow.

2006-06-20  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Bind correct number of samplers for GLSL shaders.
	We are only checking against GL_MAX_TEXTURES when binding samplers,
	when we should be checking against the maximum number of samplers that
	the card supports.  Spotted by H. Verbeet.

2006-06-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec, dlls/crypt32/tests/crl.c:
	crypt32: Implement some CRL verification functions.

	* dlls/crypt32/main.c, include/wincrypt.h:
	wincrypt.h: Add more definitions and prototypes.

2006-06-20  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/wininet/tests/url.c:
	wininet/tests: Write-strings warnings fix.

2006-06-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winex11.drv/winpos.c, dlls/winex11.drv/x11drv.h,
	  dlls/winex11.drv/x11drv_main.c:
	winex11.drv: Add support for full screen window state using the NETWM protocol.

2006-06-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Implement DoInfInstall on top of the install framework.

2006-06-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/file.c:
	kernel: Add tests for OpenFile.

	* dlls/kernel/tests/file.c:
	kernel: Check for an exe which is always present in a system dir.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Small test fixes.

2006-06-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Fix the nBufferMax param of LoadStringW calls from SHELL_ConfirmDialogW.

2006-06-20  Detlef Riekenberg <wine.dev@web.de>

	* tools/winedump/output.c:
	winedump: Add DLL_WINE_PREATTACH to the generated DllMain.

	* tools/winedump/output.c:
	winedump: Use ntdll as template.

	* configure, configure.ac, dlls/Makefile.in, dlls/compstui/.gitignore,
	  dlls/compstui/Makefile.in, dlls/compstui/compstui.spec,
	  dlls/compstui/compstui_main.c:
	compstui: Add minimal compstui.dll (stubs only).

2006-06-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/virtual.c:
	ntdll: Compile VIRTUAL_Dump only when somebody really needs it.

2006-06-20  Vitaly Lipatov <lav@etersoft.ru>

	* programs/winecfg/Ru.rc:
	winecfg: Russian translation.

2006-06-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Call Binding_CloseCacheDownload after Binding_FinishedDownload.

	* dlls/shdocvw/persist.c:
	shdocvw: Return S_OK in IPersistStreamInit::InitNew.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/olecmd.c,
	  dlls/mshtml/oleobj.c:
	mshtml: Move IOleCommandTarget implementation to separate file.

	* dlls/mshtml/persist.c:
	mshtml: Initialize url variable in IPersistMoniker::Load.

	* dlls/mshtml/nsio.c:
	mshtml: Don't crash in GetSecurityInfo if channel is NULL.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IPropertyNotifySink connection point.

2006-06-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/crl.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Rearrange functions a bit.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Small cleanups.
	- forward MLGetUILanguage to kernel32
	- correct type of parameter to MLLoadLibrary

2006-06-20  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/theme.c:
	winecfg: Create Resources directory when adding themes.

2006-06-20  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Don't use a short to hold the packet length, since it can
	result in premature termination of the send.

2006-06-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tape.c:
	ntdll: Fixed tape.c compilation on Solaris.

	* libs/wine/mmap.c:
	libwine: Better memory reservation algorithm for platforms that use
	try_mmap_fixed.

	* configure, configure.ac:
	configure: Default to using wine-pthread on all platforms.

2006-06-20  Jeremy White <jwhite@codeweavers.com>

	* configure, configure.ac:
	configure: Probe more carefully for soname support, primarily for Solaris
	support.

2006-06-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Tidy up leb128 reading.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Indent the code as the rest of dbghelp module.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Support multiple debug formats.
	When several debug formats (eg stabs & dwarf2) exist in the same
	module, allow to load them all (this is needed when different
	compilation units are compiled with different debug options).

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Generate the current source file and store it in dbghelp's
	internals.

	* dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/dwarf.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Added the ability to define a source file by dir+filename instead of
	only filename.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/dwarf.h:
	dbghelp: dwarf: Started parsing the attributes for lines (in compilation unit).
	Walking the whole lot, not doing anything interesting apart from
	traversing the data.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c:
	dbghelp: Pass .debug_loc section information to dwarf.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & parse context.
	- split the data structures for walking through the data (abbrev,
	cu... -> traverse_ctx) and data manipulation/loading (-> parse_ctx)
	- created dwarf2_parse_compilation_unit() for clarity
	- added section structure to gather information about all ELF sections
	related to all dwarf2 sections (more to come)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & udt members.
	- correctly set size & offsets for regular udt members
	- first shot at bitfields for udt members

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & function blocks.
	- properly handling function blocks
	- handling of variables inside of blocks (either on stack, or in a
	register, or relative to the frame register if any)
	- added dwarf2_subprogram_t structure so that we can pass around
	relevant information for function parsing

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Properly handle function formal parameters.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c:
	dbghelp: Storage of func locals & parameters.
	- added the ability to tell to add_func_local whether we're adding
	a local variable or a parameter (and removed the black magic
	we were using)
	- we can now address variables defined as an offset to a register

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & global symbols.
	Offset the addresses for global symbols (func & variables) by the base
	image of the corresponding module.

	* dlls/dbghelp/dwarf.c:
	dbghelp: dwarf: Added support for function labels.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Proper support for nested types definitions (even in C).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf - function scheme.
	- various fixes to follow better the functions definition (nesting,
	subroutines...)
	- don't directly parse types referenced by a subprogram, they'll be
	loaded anyway when needed

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & locations.
	- put back the block attribute parsing
	- added dwarf2_compute_location to properly decode a location (at
	least starting it)

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf compiland.
	- rewrote all entities loading to make use of new dwarf2_debug_info_t scheme
	- commented out the location parsing which is an ugly hack

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & new scheme.
	- add some helpers for the rewrite
	- module is now part of the dwarf2_parse_context

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & type references.
	Removed unused type references scheme that we'll implement using a
	different scheme in next patches.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf merge parsing of UDT.
	Merge into a single function the struct/class/union parsing.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & debug info entries.
	- now loading the debug info entries into specific structures
	- this will help writing new functions
	- this will allow handling of forward references

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf abbrev table is now a sparse array.
	- added a pool for memory allocation when parsing a compilation unit
	- now using the brand new sparse array for the abbrev table

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/storage.c:
	dbghelp: Added another basic type for storage: the sparse array.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Transform a few TRACEs into WARNs (especially for unhandled stuff).

	* dlls/dbghelp/dwarf.c:
	dbghelp: Remove the unneeded level attribute while parsing.

	* dlls/dbghelp/dwarf.c, dlls/dbghelp/dwarf.h:
	dbghelp: Moved all Dwarf standard definitions into dwarf.h file.

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & typedefs.
	- removed lookup for name for the const modifier
	- hard wire dwarf-reference to our pointer types

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf & module's symtype.
	- we should set the module's symtype upon success
	- removed unneeded bRet variable

	* dlls/dbghelp/dwarf.c:
	dbghelp: Dwarf2 & AT_byte_size.
	- AT_byte_size can be larger than a single byte (especially for enums)
	- added missing enumeration type parsing

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Proper handling of typedefs.
	Added types_get_real_type() to get rid of typedef information, and
	access the real underlying type.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Encode/decode CRL issuing dist points.

2006-06-19  Jason Green <jave27@gmail.com>

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c:
	wined3d: Move D3DSIO_DEF instruction for ARB shaders into arb_program_shader.c.

	* dlls/wined3d/glsl_shader.c:
	wined3d: Fix DEF instructions in GLSL for non-Nvidia platforms.
	- NVidia allows "const vec4 = {1.0, 2.0, 3.0, 4.0};", even though
	that's not part of the spec.
	- It should be	"const vec4 = vecr4(1.0, 2.0, 3.0, 4.0);"
	- This patch fixes this for D3DSIO_DEF and D3DSIO_DEFI.

2006-06-20  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	tools/wine.inf: Add d3d8.dll to the fake dlls list.

2006-06-20  Ge van Geldorp <ge@gse.nl>

	* dlls/kernel/global16.c:
	kernel32: "base" is a pointer in 16-bit global heap.

	* programs/winedbg/Makefile.in, programs/winedbg/be_x86_64.c,
	  programs/winedbg/gdbproxy.c, programs/winedbg/winedbg.c:
	winedbg: Added x86_64 support.

2006-06-20  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_ConfirmDialog.

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_fs.c:
	shell32: Use SHELL_ConfirmDialogW when deleting multiple files.

2006-06-20  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Remove dead code from the LZOpenFileW test.

2006-06-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shell32_Pl.rc:
	shell32: Update the Polish translation.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crl.c:
	crypt32: Simplify CRL creation.
	Decoding already handles signed and unsigned CRLs, so don't duplicate
	that in CertCreateCRLContext.

	* dlls/crypt32/cert.c:
	crypt32: Simplify certificate creation.
	Decoding already handles signed and unsigned certs, so don't duplicate
	that in CertCreateCertificateContext.

2006-06-19  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: test LZOpenFileW.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: LZOpenFileA sets last error sometimes.

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Rename function aliases to real (ASCII) function names.

2006-06-19  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_desktop.c:
	shell32: Convert ISF_Desktop_fnGetDisplayNameOf to Unicode.

	* dlls/shell32/shfldr_mycomp.c:
	shell32: Convert ISF_MyComputer_fnGetDisplayNameOf to Unicode.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Move the packet manipulation from the exception filter to the exception
	handler.
	Remove the unused server_sem variable.

2006-06-19  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/tests/encode.c:
	crypt32: Fix decoding signed certs and CRLs.

2006-06-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Added test for IsAppThemed and grouped it with IsThemeActive.

2006-06-20  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/stg_prop.c:
	ole32: Implement reading of VT_CF storage properties.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c:
	libwine: Remove one more directory level when checking for build dir.
	This way it still works if the libdir we got was libs/wine instead of libs.

2006-06-19  Jeremy White <jwhite@codeweavers.com>

	* dlls/msvcrt/time.c:
	msvcrt: Solaris asctime_r compilation fix.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fix a Solaris compilation error.

	* dlls/winex11.drv/winpos.c:
	winex11.drv: On Solaris, Xutil.h is required to define XRegion.

	* dlls/ntdll/directory.c:
	ntdll: On Solaris, limits.h is required for PATH_MAX.

2006-06-19  Ge van Geldorp <ge@gse.nl>

	* dlls/dbghelp/minidump.c:
	dbghelp: Fix compilation for x86_64.

2006-06-19  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/secur32/schannel.c, include/sspi.h:
	include: Fix definition of SECURITY_INTEGER.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/build.h, tools/winebuild/main.c,
	  tools/winebuild/relay.c:
	winebuild: Get rid of the data16 prefix, it shouldn't be needed anymore and
	causes warnings.

2006-06-13  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/Makefile.in, dlls/setupapi/devinst.c,
	  dlls/setupapi/tests/.gitignore, dlls/setupapi/tests/Makefile.in,
	  dlls/setupapi/tests/devinst.c:
	setupapi: Implement SetupDiCreateDeviceInfoListExW.

2006-06-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/tests/system.c:
	uxtheme/tests: Change S_OK to the more appropriate ERROR_SUCCESS.

2006-06-19  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/dnsapi/name.c:
	dnsapi: Fix conflicts nameser.h with winerror.h.

2006-06-19  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/secur32/ntlm.c:
	secur32: Fix another GetProcessHeap vs GetProcessHeap().

2006-06-19  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Fix famous typo in HeapFree call.

2006-06-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/negotiate.c:
	secur32: Remove unneeded function from the Negotiate provider.

2006-06-20  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Fix a typo.

2006-06-19  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c:
	hlink: Add a stub implementation for HlinkNavigateToStringReference.

	* dlls/imm32/imm.c:
	imm32: Fix some return codes.

	* dlls/wininet/urlcache.c:
	wininet: Make sure to null terminate a string before copying it.

2006-06-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/dib.c, dlls/gdi/gdi32.spec:
	gdi32: Get rid of the no longer needed DIB_CreateDIBSection export.

2006-06-19  Detlef Riekenberg <wine.dev@web.de>

	* include/ddk/compstui.h:
	include: Declare remaining exported functions in compstui.h.

2006-06-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw_private.h, dlls/ddraw/device.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/material.c, dlls/ddraw/surface.c, dlls/ddraw/texture.c,
	  dlls/ddraw/viewport.c:
	ddraw: Implement proper handle management.

2006-06-16  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Correct implementation of D3DSIO_LOOP.
	I initially misread the specification.	src0.x is the iteration count,
	not the max amount for the loop register.  This fixes that.

	* dlls/wined3d/baseshader.c:
	wined3d: Fix lookup for LOOP register.

2006-06-17  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Added correct cast support for gl_FogFragCoord and gl_PointSize
	output registers.

2006-06-16  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Load boolean and integer constants into the GLSL shader program.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement locally defined boolean and integer constants in GLSL.

	* dlls/wined3d/arb_program_shader.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add preliminary support for constant boolean and integer registers
	in GLSL.
	- Separate the declaration phase of the shader string generator into
	the arb and glsl specific files.
	- Add declarations and recognition for application-sent constant
	integers and booleans (locally defined ones will follow).
	- Standardize capitilization of pixel/vertex specific variable names.

	* dlls/wined3d/Makefile.in, dlls/wined3d/arb_program_shader.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move constant loading into target-specific files.
	- Moves GLSL constant loading code into glsl_shader.c and out of the
	over-populated drawprim.c.
	- Creates a new file named arb_program_shader.c which will hold code
	specific to ARB_vertex_program & ARB_fragment_program.
	- Remove the constant loading calls from drawprim.c

	* dlls/wined3d/vertexshader.c:
	wined3d: Remove dead vertex shader code.

2006-06-18  Krzysztof Foltman <wdev@foltman.com>

	* dlls/riched20/caret.c:
	riched20: EM_CHARFROMPOS didn't work properly with scrolling
	(vertical scrollbar position was not taken into account).

2006-06-17  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/query.c:
	dnsapi: Free all allocated records instead of just the last one.

	* dlls/dnsapi/query.c:
	dnsapi: Correct testing for zero option value DNS_QUERY_STANDARD.

2006-06-17  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/ddraw.c, dlls/ddraw/palette.c, dlls/ddraw/surface.c,
	  dlls/ddraw/tests/.gitignore, dlls/ddraw/tests/Makefile.in,
	  dlls/ddraw/tests/refcount.c:
	ddraw: Palette refcounting fixes + tests.

2006-06-17  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/om.c:
	ntdll: If ObjectAttributes is NULL then an error is returned at the
	start of the NtOpenSymbolicLinkObject, therefore ObjectAttributes does
	not need to be checked for NULL later on in the function.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Use the thread pool in the RPC server for processing packets.

	* dlls/ole32/ftmarshal.c:
	ole32: Document CoCreateFreeThreadedMarshaler.

	* dlls/ole32/rpc.c:
	ole32: Reuse event handles used for COM calls.
	This reduces the number of server calls during a COM call by half.

2006-06-18  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix updating the proc offset.

2006-06-17  Fatih Aşıcı <fatih.asici@gmail.com>

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resorce file.

2006-06-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/lz32/tests/lzexpand_main.c:
	lz32: Enable old test and expand it.

2006-06-17  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/kernel/cpu.c:
	kernel: Fix reported address space limit to be in keeping with ntdll.

2006-06-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: AddMonitor: Test the driver entry before return an error.

2006-06-16  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msi/tests/db.c, dlls/msi/tests/package.c:
	msi/tests: Write-strings warnings fixes.

2006-06-15  Kevin Koltzau <kevin@plop.org>

	* dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/usrmarshal.c,
	  dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut32: Fix 64bit warnings in tests.

	* dlls/mscms/handle.c:
	mscms: Fix 64bit warnings.

2006-06-16  András Kovács <andras@csevego.net>

	* programs/uninstaller/Hu.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Hungarian translation.

2006-06-16  Scott Bambrough <scottb@xandros.com>

	* configure, configure.ac:
	configure: Test for additional ICU libraries /usr/lib/libicuuc.a and
	/usr/lib/libicudata.a.

2006-06-16  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/inseng/.gitignore,
	  dlls/inseng/Makefile.in, dlls/inseng/inseng.spec,
	  dlls/inseng/inseng_main.c, tools/wine.inf:
	inseng: Initial implementation of inseng (required for IE6 to install under
	win2k).

2006-06-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/En.rc, dlls/mshtml/Makefile.in, dlls/mshtml/install.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/resource.h, dlls/mshtml/rsrc.rc,
	  dlls/mshtml/tests/Makefile.in, dlls/mshtml/tests/htmldoc.c:
	mshtml: Added Wine Gecko installer.

2006-06-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wined3d/device.c:
	wined3d: GetScissorRect should use zero-based scissorBox (Coverity).

2006-06-16  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the argument size of conformant arrays.

2006-06-16  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/msi/tests/package.c:
	msi: Added tests for MsiSetTargetPath.

2006-06-15  Francois Gouget <fgouget@free.fr>

	* dlls/d3d9/tests/stateblock.c, dlls/riched20/tests/editor.c,
	  dlls/uxtheme/tests/system.c, dlls/wined3d/device.c,
	  programs/cmdlgtst/cmdlgtst.c:
	Add trailing '\n's to ok() calls.
	Remove spaces before '\n'.

	* dlls/comctl32/tests/header.c, dlls/d3d9/tests/device.c,
	  dlls/riched20/editor.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/glsl_shader.c, server/token.c:
	Assorted spelling fixes.

2006-06-15  Francois Gouget <fgouget@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Remove dead code in SHELL_FindExecutable().

	* dlls/ntdll/virtual.c:
	ntdll: Use page_size instead of page_mask+1.

2006-06-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/main.c:
	secur32: Implement QueryContextAttributes. Add tests.

2006-06-15  Marcus Meissner <marcus@jet.franken.de>

	* dlls/avifil32/api.c:
	avifil32: Corrected destination size in MultiByteToWideChar.

2006-06-15  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	d3d9: Remove ValidatePixel/VertexShader.

2006-06-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c, dlls/crypt32/encode.c,
	  dlls/crypt32/tests/encode.c:
	crypt32: Correct CRL tests, and fix CRL encoding/decoding accordingly.

2006-06-15  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/hlink/hlink_main.c:
	hlink: Fix typo. We should set hl not ppvObj.

2006-06-16  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  include/wine/wined3d_gl.h:
	wined3d: Add and use GL_EXT_fog_coord defines.

2006-06-16  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/make_dlls,
	  dlls/winex11.drv/.gitignore, dlls/winex11.drv/Makefile.in,
	  dlls/winex11.drv/bitblt.c, dlls/winex11.drv/bitmap.c,
	  dlls/winex11.drv/brush.c, dlls/winex11.drv/clipboard.c,
	  dlls/winex11.drv/clipping.c, dlls/winex11.drv/codepage.c,
	  dlls/winex11.drv/dce.c, dlls/winex11.drv/desktop.c,
	  dlls/winex11.drv/dga2.c, dlls/winex11.drv/dga2.h,
	  dlls/winex11.drv/dib.c, dlls/winex11.drv/dib_convert.c,
	  dlls/winex11.drv/dib_dst_swap.c, dlls/winex11.drv/dib_src_swap.c,
	  dlls/winex11.drv/event.c, dlls/winex11.drv/graphics.c,
	  dlls/winex11.drv/init.c, dlls/winex11.drv/keyboard.c,
	  dlls/winex11.drv/mouse.c, dlls/winex11.drv/mwm.h,
	  dlls/winex11.drv/opengl.c, dlls/winex11.drv/palette.c,
	  dlls/winex11.drv/pen.c, dlls/winex11.drv/scroll.c,
	  dlls/winex11.drv/settings.c, dlls/winex11.drv/text.c,
	  dlls/winex11.drv/window.c, dlls/winex11.drv/winex11.drv.spec,
	  dlls/winex11.drv/winpos.c, dlls/winex11.drv/wintab.c,
	  dlls/winex11.drv/x11ddraw.c, dlls/winex11.drv/x11ddraw.h,
	  dlls/winex11.drv/x11drv.h, dlls/winex11.drv/x11drv_main.c,
	  dlls/winex11.drv/x11font.h, dlls/winex11.drv/xdnd.c,
	  dlls/winex11.drv/xfont.c, dlls/winex11.drv/xim.c,
	  dlls/winex11.drv/xrandr.c, dlls/winex11.drv/xrandr.h,
	  dlls/winex11.drv/xrender.c, dlls/winex11.drv/xvidmode.c,
	  dlls/winex11.drv/xvidmode.h, dlls/x11drv/.gitignore,
	  dlls/x11drv/Makefile.in, dlls/x11drv/bitblt.c, dlls/x11drv/bitmap.c,
	  dlls/x11drv/brush.c, dlls/x11drv/clipboard.c, dlls/x11drv/clipping.c,
	  dlls/x11drv/codepage.c, dlls/x11drv/dce.c, dlls/x11drv/desktop.c,
	  dlls/x11drv/dga2.c, dlls/x11drv/dga2.h, dlls/x11drv/dib.c,
	  dlls/x11drv/dib_convert.c, dlls/x11drv/dib_dst_swap.c,
	  dlls/x11drv/dib_src_swap.c, dlls/x11drv/event.c,
	  dlls/x11drv/graphics.c, dlls/x11drv/init.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/mouse.c, dlls/x11drv/mwm.h, dlls/x11drv/opengl.c,
	  dlls/x11drv/palette.c, dlls/x11drv/pen.c, dlls/x11drv/scroll.c,
	  dlls/x11drv/settings.c, dlls/x11drv/text.c, dlls/x11drv/window.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/winpos.c,
	  dlls/x11drv/wintab.c, dlls/x11drv/x11ddraw.c, dlls/x11drv/x11ddraw.h,
	  dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c,
	  dlls/x11drv/x11font.h, dlls/x11drv/xdnd.c, dlls/x11drv/xfont.c,
	  dlls/x11drv/xim.c, dlls/x11drv/xrandr.c, dlls/x11drv/xrandr.h,
	  dlls/x11drv/xrender.c, dlls/x11drv/xvidmode.c,
	  dlls/x11drv/xvidmode.h:
	x11drv: Renamed the x11drv directory to winex11.drv.

2006-06-15  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/notepad/Pl.rc:
	notepad: Pl.rc: Fix the ellipsis in menu.

2006-06-15  Huw Davies <huw@codeweavers.com>

	* dlls/wineps.drv/init.c, dlls/winspool.drv/info.c:
	printing: Don't limit the printer name length to CCHDEVICENAME characters.

2006-06-15  James Hawkins <truiken@gmail.com>

	* dlls/msi/tests/.gitignore, dlls/msi/tests/Makefile.in,
	  dlls/msi/tests/install.c:
	msi: Add tests for MsiInstallProduct.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ddraw/ddraw.c, dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/surface.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Make some functions static.

	* configure, configure.ac:
	configure: Ues the standard AC_MSG_WARN to print warnings.

	* dlls/Makefile.in, dlls/make_dlls, programs/winetest/Makefile.in:
	dlls: d3d8, d3d9 and ddraw no longer depend on OpenGL or X.

	* dlls/d3dx8/Makefile.in:
	d3dx8: Remove dependencies on OpenGL headers and libraries.

	* dlls/d3d9/Makefile.in, dlls/d3d9/d3d9_private.h:
	d3d9: Remove dependencies on OpenGL headers and libraries.

	* dlls/d3d8/Makefile.in, dlls/d3d8/d3d8_private.h:
	d3d8: Remove dependencies on OpenGL headers and libraries.

2006-06-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c, dlls/d3d9/tests/device.c,
	  dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Support more than one back buffer.

2006-06-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/Makefile.in, dlls/ddraw/clipper.c, dlls/ddraw/d3d_private.h,
	  dlls/ddraw/d3d_utils.c, dlls/ddraw/ddraw.c, dlls/ddraw/ddraw.spec,
	  dlls/ddraw/ddraw_hal.c, dlls/ddraw/ddraw_main.c,
	  dlls/ddraw/ddraw_private.h, dlls/ddraw/ddraw_thunks.c,
	  dlls/ddraw/ddraw_user.c, dlls/ddraw/ddraw_utils.c,
	  dlls/ddraw/device.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/direct3d.c,
	  dlls/ddraw/direct3d_main.c, dlls/ddraw/direct3d_opengl.c,
	  dlls/ddraw/executebuffer.c, dlls/ddraw/gamma.c, dlls/ddraw/gl_api.h,
	  dlls/ddraw/gl_private.h, dlls/ddraw/light.c, dlls/ddraw/main.c,
	  dlls/ddraw/material.c, dlls/ddraw/opengl_private.h,
	  dlls/ddraw/opengl_utils.c, dlls/ddraw/palette.c,
	  dlls/ddraw/palette_hal.c, dlls/ddraw/palette_main.c,
	  dlls/ddraw/parent.c, dlls/ddraw/surface.c, dlls/ddraw/surface_dib.c,
	  dlls/ddraw/surface_fakezbuffer.c, dlls/ddraw/surface_gamma.c,
	  dlls/ddraw/surface_hal.c, dlls/ddraw/surface_main.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/surface_user.c,
	  dlls/ddraw/surface_wndproc.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/texture.c, dlls/ddraw/utils.c, dlls/ddraw/vertexbuffer.c,
	  dlls/ddraw/viewport.c:
	ddraw: Rewrite most of ddraw using WineD3D.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	server: Fixed a compiler warning on MacOSX.

	* libs/wine/config.c:
	libwine: Fixed a compiler warning on MacOSX.

2006-06-12  Peter Åstrand <astrand@cendio.se>

	* dlls/winmm/mci.c:
	winmm: Add support for "open new" commands.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add test for _Streams table (based on patch by Andrey Turkin).

2006-06-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  include/wine/wined3d_gl.h:
	wined3d: Correct vertex fog for transformed vertices and correctly
	handle non-vertex, non-table fog.

2006-06-13  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement more GLSL instructions.
	- Implemented: D3DSIO_SGN, LOOP, ENDLOOP, LOGP, LIT, DST, SINCOS
	- Process instruction-based modifiers (function existed, it just
	wasn't being called)
	- Add loop checking to register maps.
	- Renamed "sng" to "sgn" for D3DSIO_SGN - it's not handled anywhere
	except for GLSL, so won't matter.

2006-06-14  Robert Shearman <rob@codeweavers.com>

	* dlls/atl/atl_main.c:
	atl: Add a partial implementation of AtlModuleRegisterWndClassInfoW
	based on documentation by Mike McCormack.

	* dlls/kernel/tests/sync.c:
	kernel: Add a test for mutexes.

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/version.c:
	kernel: Add some tests for VerifyVersionInfo.

	* dlls/ole32/git.c, dlls/ole32/tests/marshal.c:
	ole32: Always rewind the stream in StdGlobalInterfaceTable_GetInterfaceFromGlobal
	as CoUnmarshalInterface may have advanced the stream, even if it failed.

	* dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c:
	ole32: Add a tests for OleSetMenuDescriptor and the global interface table.

2006-06-14  Alexander Nicolaysen Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

	* dlls/gphoto2.ds/gphoto2_No.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Norwegian Bokmål resources.

2006-06-15  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/stack.c:
	winedbg: Avoid a crash when there's no backtrace to print.

	* dlls/kernel/heap.c:
	kernel32: Use unsigned types in GlobalMemoryStatusEx to prevent overflows.

2006-06-15  Mike McCormack <mike@codeweavers.com>

	* server/thread.c:
	server: Fix a win64 warning.

	* server/user.c:
	server: Cast user handles to unsigned long for win64 compatibility.

	* server/handle.c:
	server: Cast handles to unsigned long for win64 compatibility.

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/listview.c:
	comctl32: Add a short test for the listview.

	* dlls/comctl32/listview.c:
	comctl32: Arrange the listview after deleting all items so we will place icons
	at the top again.

	* dlls/comctl32/listview.c:
	comctl32: Use the listview's background colour when drawing with imagelist.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	msi: Don't define COND_SPACE twice.

2006-06-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/mciwave/mciwave.c:
	mciwave: Fixed a bogus free.

2006-06-14  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/combo.c:
	user32: Fix character conversion in combo box.
	Replace toupper/tolower with CharUpper/CharLower functions.

2006-06-14  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* tools/wine.inf:
	wine.inf: Add fake dll for advpack.dll.

2006-06-14  Robert Shearman <rob@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlwin.h:
	atl: Add a stub for AtlModuleRegisterWndClassInfoW.

	* dlls/ntdll/virtual.c:
	ntdll: Change the test for no relocation information to use the
	IMAGE_FILE_RELOCS_STRIPPED flag instead of a zero sized relocations
	section.
	This fixes loading of resource-only DLLs that have a load-address of
	0x400000.

	* dlls/msxml3/domdoc.c:
	msxml: Text nodes with just whitespace should be stripped.

	* dlls/msxml3/text.c:
	msxml: Implement IXMLDOMElement for text elements by using
	create_element instead of create_basic_node.

	* dlls/msxml3/element.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml: Allow the element implementation to be aggregatable.

2006-06-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* configure, configure.ac, dlls/uxtheme/Makefile.in,
	  dlls/uxtheme/tests/.gitignore, dlls/uxtheme/tests/Makefile.in,
	  dlls/uxtheme/tests/system.c, programs/winetest/Makefile.in:
	uxtheme: Add framework and initial tests.

2006-06-14  Choe Hwanjin <choe.hwanjin@gmail.com>

	* include/winuser.h:
	winuser.h: Add some missing virtual key symbols.

2006-06-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add a test for reading long strings.

	* dlls/msi/tests/db.c:
	msi: Add a test for creating a record with a long string.

	* dlls/msi/tests/db.c:
	msi: Add a test for MsiDatabaseExport.

2006-06-14  Mike McCormack <mike@codeweavers.com>

	* include/mapi.h:
	mapi: Fix declaration of LPMAPISENDMAIL (spotted by Cho Hwanjin).

	* dlls/advpack/reg.c:
	advpack: Remove some dead code. (Coverity)

	* include/dbghelp.h:
	dbghelp: Fix the prototype of some callbacks.

	* dlls/crypt32/oid.c:
	crypt32: Fix a cast for Win64.

	* tools/wrc/parser.y:
	wrc: Remove some tokens declared twice.

2006-06-13  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: getaddrinfo returns any non-zero value on failure, not just negative
	values.

2006-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/serial.c:
	ntdll: Cast termios.c_cflag to avoid a printf format warning.

	* programs/winedbg/gdbproxy.c:
	winedbg: sscanf arguments should be ints, not size_t.

	* tools/winebuild/relay.c, tools/winebuild/res32.c:
	winebuild: Fix a few printf format warnings by casting size_t.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/oleaut32/vartype.c:
	oleaut32: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/msvcrt/cppexcept.h:
	msvcrt: Use unsigned int instead of size_t to avoid printf format warnings.

	* dlls/crypt32/context.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Use unsigned int instead of size_t to avoid printf format warnings.

	* tools/widl/server.c, tools/widl/typegen.c:
	widl: Use unsigned int instead of size_t to avoid printf format warnings.

	* programs/winevdm/winevdm.c:
	winevdm: Don't use sizeof in traces to avoid printf format warnings.

	* programs/rpcss/np_server.c:
	rpcss: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/wineps.drv/glyphlist.c, dlls/wineps.drv/ppd.c:
	wineps.drv: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/user/dde_misc.c, dlls/user/message.c:
	user32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcss_np_client.c:
	rpcrt4: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/ole32/oleproxy.c, dlls/ole32/stg_prop.c:
	ole32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/netapi32/netbios.c:
	netapi32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/msvfw32/msvideo_main.c:
	msvfw32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/mciseq/mcimidi.c:
	mciseq: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/kernel/format_msg.c, dlls/kernel/toolhelp.c:
	kernel32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/primary.c, dlls/dsound/sound3d.c:
	dsound: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dplayx/dplayx_global.c:
	dplayx: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dmstyle/commandtrack.c, dlls/dmstyle/style.c:
	dmstyle: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/dinput/device.c:
	dinput: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/d3d9/stateblock.c:
	d3d9: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/d3d8/device.c:
	d3d8: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/comdlg32/printdlg16.c:
	comdlg32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/mru.c:
	comctl32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/advapi32/service.c:
	advapi32: Don't use sizeof in traces to avoid printf format warnings.

	* dlls/winmm/tests/capture.c, dlls/winmm/tests/wave.c:
	winmm/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/version/tests/info.c:
	version/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/urlmon/tests/misc.c:
	urlmon/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/rpcrt4/tests/rpc.c:
	rpcrt4/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/ole32/tests/marshal.c, dlls/ole32/tests/moniker.c:
	ole32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/ntdll/tests/env.c, dlls/ntdll/tests/info.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlstr.c:
	ntdll/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mshtml/tests/htmldoc.c, dlls/mshtml/tests/protocol.c:
	mshtml/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mlang/tests/mlang.c:
	mlang/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/mapi32/tests/prop.c, dlls/mapi32/tests/util.c:
	mapi32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/kernel/tests/codepage.c, dlls/kernel/tests/comm.c,
	  dlls/kernel/tests/file.c, dlls/kernel/tests/locale.c,
	  dlls/kernel/tests/pipe.c:
	kernel32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/gdi/tests/bitmap.c, dlls/gdi/tests/font.c:
	gdi/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/crypt32/tests/cert.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/store.c:
	crypt32/tests: Don't use sizeof in ok() to avoid printf format warnings.

	* dlls/wininet/tests/internet.c, dlls/wininet/tests/url.c:
	wininet/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/version/tests/install.c:
	version/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/shlwapi/tests/ordinal.c:
	shlwapi/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/ntdll/tests/path.c:
	ntdll/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/mscms/tests/profile.c:
	mscms/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/kernel/tests/module.c, dlls/kernel/tests/path.c:
	kernel32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/crypt32/tests/base64.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/str.c:
	crypt32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

	* dlls/advapi32/tests/crypt.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c:
	advapi32/tests: Use lstrlenA instead of strlen in ok() to avoid printf format
	warnings.

2006-06-08  Nick Burns <adger44@hotmail.com>

	* include/windef.h:
	include: Use force_align_arg_pointer on MacOS to fix the stack on entry to Wine.

2006-06-13  Mike McCormack <mike@codeweavers.com>

	* include/custcntl.h, include/dispdib.h, include/mapi.h,
	  include/objbase.h, include/storage.h, include/twain.h,
	  include/winnls32.h:
	include: Remove non-ASCII characters in headers for winelib compatibility.

	* dlls/wineps.drv/init.c, dlls/x11drv/init.c, include/wingdi.h:
	wingdi: Fix typo in definition of BLTALIGNMENT (spotted by Choe Hwanjin).

	* dlls/msi/table.c:
	msi: Fix loading of long strings.

	* dlls/winmm/joystick/joystick.c:
	winmm: Undefine SW_MAX defined by linux/input.h to avoid a conflict with
	winuser.h.

2006-06-12  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/avifil32/acmstream.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/wavfile.c,
	  dlls/comdlg32/filedlg31.c, dlls/dbghelp/msc.c,
	  dlls/ddraw/executebuffer.c, dlls/gdi/gdiobj.c, dlls/mciseq/mcimidi.c,
	  dlls/mpr/wnet.c, dlls/msvfw32/msvideo_main.c, dlls/ntdll/path.c,
	  dlls/user/exticon.c, dlls/user/listbox.c:
	Yet another round of redundant NULL checks before HeapFree.

2006-06-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/console.c, dlls/msvcrt/cpp.c, dlls/msvcrt/cppexcept.c,
	  dlls/msvcrt/ctype.c, dlls/msvcrt/data.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/environ.c, dlls/msvcrt/errno.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/exit.c, dlls/msvcrt/file.c, dlls/msvcrt/heap.c,
	  dlls/msvcrt/locale.c, dlls/msvcrt/lock.c, dlls/msvcrt/main.c,
	  dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/misc.c,
	  dlls/msvcrt/process.c, dlls/msvcrt/scanf.c, dlls/msvcrt/string.c,
	  dlls/msvcrt/thread.c, dlls/msvcrt/time.c, dlls/msvcrt/undname.c,
	  dlls/msvcrt/wcs.c:
	msvcrt: Explicitly specify CDECL calling convention on exported functions.

	* dlls/oledlg/oledlg_main.c:
	oledlg: Declare varargs functions as WINAPIV instead of cdecl.

	* dlls/avifil32/api.c:
	avifil32: Declare varargs functions as WINAPIV instead of cdecl.

2006-06-12  Mike McCormack <mike@codeweavers.com>

	* dlls/userenv/userenv_main.c, include/Makefile.in, include/profinfo.h:
	userenv: Add profinfo.h.

2006-06-12  Ivan Gyurdiev <ivg231@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix params for DP2ADD/TEXLDD.
	DP2ADD is valid on pshaders 2.0 and above, has 4 parameters.
	TEXLDD is valid on pshaders 2.x and above, has 5 parameters.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Mark instructions without a destination token.
	There are a total of 17 instructions without a destination token. Of
	those 9 have num_params != 0, which means that we will not process any
	of them correctly, because we assume the first token (if present) is a
	destination token.
	Those are basically all the flow control instructions, which we plan to
	support very soon. They have source tokens, and no destination. Add a
	flag that marks them up to the ins table. Use this flag in the trace
	pass, and generation pass.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c:
	wined3d: Keep pshader and vshader constants in GLSL separate.
	GLSL uniforms have as scope the entire program.
	To prevent conflicts, name pshader and vshader constants differently.
	Based on a patch by Jason Green.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Improve Sampler support on 2.0 and 3.0 shaders.
	- track sampler declarations and store the sampler usage in reg_maps structure
	- store a fake sampler usage for 1.X shaders (defined as 2D sampler)
	- re-sync glsl TEX implementation with the ARB one (no idea why they diverged..)
	- use sampler type in new TEX implementation to support 2D, 3D, and Cube sampling
	- change drawprim to bind pixel shader samplers
	Additional improvements:
	- rename texture limit to texcoord to prevent confusion
	- add sampler limit, and use that for samplers - *not* the same as texcoord above

	* dlls/wined3d/glsl_shader.c:
	wined3d: Cast more things.
	Anything with a swizzle has to be casted to vec4, or it won't work properly.
	There's multiple ways to do this, for the moment pick the easiest one.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add support for shader model 3.0 I/O registers.
	SM 3.0 can pack multiple "semantics" into 12 generic input/output registers.
	To support that, define temporaries called IN and OUT, and use those as
	the output registers. At the end of the vshader, unpack the OUT temps
	into the proper GL variables. At the beginning of the pshader, pack the
	GL variables back into 12 IN registers.

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c:
	wined3d: Trivial cleanups
	- compiler warnings and errors should be FIXME
	- remove obsolete comment, and change variable type.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Register map cleanups.
	Various cleanups:
	- do not use DWORD as a bitmask, that places artificial limit of 32 on
	registers
	- track attributes that are used and declare only those
	- move declarations function call in pshader/vshader to allow us to
	insert pixel or vertex specific code between the declarations and
	the rest of the code
	- remove redundant 0 intializers
	- remove useless continue statement

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Share trace pass
	Now that the declaration function is out of the way, the tracing pass,
	which is very long and 100% the same can be shared between pixel and
	vertex shaders.
	The new function is called shader_trace_init(), and is responsible for:
	- tracing the shader
	- initializing the function length
	- setting the shader version [needed very early]

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Rework dcl processing.
	The new function is called in pass 2 (getister counting/maps), and
	it's now in baseshader. It operates on all INPUT and OUTPUT registers,
	which, in addition to the old vertex shader input declarations covers
	Shader Model 3.0 vshader output and pshader input declarations. The
	result is stored into the reg_map structure.

	* dlls/wined3d/baseshader.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: The namedArrays code path is dead (always FALSE).
	Delete the entire namedArrays code path and all its dependencies (one
	of which is quite long - storeOrder in drawprim is always FALSE, for
	example). Delete declaredArrays, and make its code path the default.

2006-06-12  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Eliminate complex test macro to make source navigation easier.

2006-06-13  Michael Stefaniuc <mstefani@redhat.de>

	* include/winnt.h:
	include: The visibility attribute is supported only by gcc >= 3.3.

2006-06-12  Robert Shearman <rob@codeweavers.com>

	* dlls/mlang/mlang.c:
	mlang: Return S_OK from fnIMultiLanguage2_SetMimeDBSource.
	The source is largely irrelevant since we are not likely to be wanting
	to ship updates to the MIME database as registry updates, instead of
	just changing the code.

	* dlls/mlang/mlang.c:
	mlang: Add us-ascii encoding to the list of supported encodings.

	* dlls/advapi32/security.c:
	advapi32: Fix the parsing of string SIDs with multiple sub-authorities.

	* dlls/advapi32/security.c:
	advapi32: Replace some mixed tabs with spaces.

	* dlls/advapi32/security.c:
	advapi32: Support well-knowns SIDs in string SIDs.

	* dlls/advapi32/security.c:
	advapi32: Nul-terminate the domain string in LookupAccountNameW.

	* dlls/ole32/compobj.c:
	ole32: Print an error if a DLL's DllGetClassObject fails as this is
	usually a good indicator of a bug elsewhere in Wine.

2006-06-09  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: Move a checkGLcall to it's gl call inside an "if".

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix stencil related render states.

	* dlls/wined3d/directx.c, include/d3d9caps.h, include/d3dcaps.h:
	wined3d: Enable two sided stencil in the caps.

	* dlls/wined3d/utils.c:
	wined3d: Also print the format like a fourcc if unknown in debug_d3dformat.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrtd/debug.c:
	msvcrtd: Explicitly specify CDECL calling convention on exported functions.

	* dlls/msvcrt20/msvcrt20.c:
	msvcrt20: Explicitly specify CDECL calling convention on exported functions.

	* dlls/crtdll/crtdll_main.c:
	crtdll: Explicitly specify CDECL calling convention on exported functions.

	* dlls/ntdll/misc.c:
	ntdll: Explicitly specify CDECL calling convention on exported functions.

	* dlls/ole32/memlockbytes16.c, dlls/ole32/ole16.c, dlls/ole32/storage.c:
	ole32: Explicitly specify CDECL calling convention on exported functions.

	* dlls/wldap32/add.c, dlls/wldap32/ber.c, dlls/wldap32/bind.c,
	  dlls/wldap32/compare.c, dlls/wldap32/control.c,
	  dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/extended.c, dlls/wldap32/init.c, dlls/wldap32/misc.c,
	  dlls/wldap32/modify.c, dlls/wldap32/modrdn.c, dlls/wldap32/option.c,
	  dlls/wldap32/page.c, dlls/wldap32/parse.c, dlls/wldap32/rename.c,
	  dlls/wldap32/search.c, dlls/wldap32/value.c, include/winldap.h:
	wldap32: Explicitly specify CDECL calling convention on exported functions.

	* dlls/glut32/glut.c, include/winbase.h:
	include: Added prototype for DllMain.

	* dlls/mshtml/main.c, dlls/wininet/wininet_main.c, include/objbase.h,
	  include/shlwapi.h:
	include: Make the Dll* entry points hidden.

	* dlls/ntdll/ntdll.spec:
	ntdll: Added spec entry for NtQueryMultipleValueKey.

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix an uninitialized variable bug.
	Mark todo a test that depended on the bug to succeed.

2006-06-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/utils.c, dlls/wined3d/wined3d_private.h:
	wined3d: Cleanup GetSrcAndOpFromValue().
	- Cleanup GetSrcAndOpFromValue().
	- Use naming more consistent with the rest of the file.

2006-06-12  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/db.c:
	msi: Add some more test cases for INSERT.

	* dlls/msi/tests/format.c:
	msi: Add some more MsiFormatRecord tests.

	* dlls/msi/tests/package.c:
	msi: Add tests for creating packages and formatting records.

	* dlls/msi/tests/package.c:
	msi: Delete any databases we create at the end of each test.

	* dlls/msi/tests/msi.c:
	msi: Fix compilation on msvc6.

	* dlls/msi/tests/db.c:
	msi: Remove an inconsistent test.

	* dlls/msi/tests/format.c:
	msi: Fix some test cases to pass against win2k.

2006-06-12  Robert Shearman <rob@codeweavers.com>

	* include/xmldom.idl:
	include: Add IXMLHttpRequest interface and XMLHttpRequest coclass to xmldoc.idl.

	* dlls/atl/atl_main.c:
	atl: Implement AtlModuleGetClassObject.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix domelem_get_tagName to return a string with the namespace prefixed,
	if it is present.

	* dlls/msxml3/nodelist.c:
	msxml3: Initialise output interface pointers to NULL in
	xmlnodelist_QueryInterface and xmlnodelist_nextNode.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps.drv/type42.c:
	wineps.drv: Make some variables static.

	* dlls/crypt32/oid.c:
	crypt32: Make some variables static and/or const.

	* dlls/shell32/brsfolder.c, dlls/shell32/shellole.c,
	  dlls/shell32/shlview.c:
	shell32: Make some variables static and/or const.

	* dlls/kernel/registry16.c:
	kernel32: Make some variables static.

	* dlls/advapi32/crypt.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	advapi32: Make some variables static and/or const.

	* dlls/winemp3.acm/common.c, dlls/winemp3.acm/huffman.h,
	  dlls/winemp3.acm/l2tables.h, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpegl3.c,
	  dlls/winemp3.acm/mpg123.h, dlls/winemp3.acm/tabinit.c:
	winemp3.acm: Make some variables static and/or const.

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/events.c:
	msi: Make some variables static and/or const.

	* dlls/crtdll/crtdll.spec:
	crtdll: Fixed copy/paste error in definition of _baseminor_dll and
	_baseversion_dll.

	* dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c:
	x11drv: Get rid of the no longer used desktop_tid variable.

2006-06-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c:
	user32: Remove redundant SetLastError call from MENU_SetMenu.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* include/Makefile.in, include/ddk/compstui.h:
	include/ddk: Add minimal compstui.h.

2006-06-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* programs/winedbg/tgt_minidump.c:
	winedbg: Write-strings warnings fix.

2006-06-09  Christian Gmeiner <christian.gmeiner@students.fhv.at>

	* dlls/setupapi/devinst.c:
	setupapi: Documentation update.

2006-06-11  Mike McCormack <mike@codeweavers.com>

	* dlls/user/message.c:
	user32: Win64 lparam and wparam are longs.

	* dlls/user/lstr.c:
	user32: Fix a pointer size warning in Win64.

	* dlls/kernel/locale.c:
	kernel32: Fix a cast for Win64.

	* dlls/msi/tests/db.c:
	msi: Add some test cases for "SELECT ... WHERE condition".

	* dlls/msi/handle.c:
	msi: Freeing the zero handle always succeeds.

	* dlls/msi/msiquery.c:
	msi: Always initialize MsiViewFetch's returned record to zero.

2006-06-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/device.c:
	d3d9: Make some test functions static.

	* dlls/d3d8/tests/device.c:
	d3d8: Make some test functions static.

2006-06-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/except.c:
	msvcrt: Print exception code in hex.

2006-06-10  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Map D3DSIO_DEF to it's GLSL generating function for vertex shaders.

2006-06-10  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Add an exception handler for CStdStubBuffer_Invoke.
	This is needed because IRpcStubBuffer::Invoke should not allow RPC
	exceptions to be passed to the caller.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialise pStubMsg->MemorySize to zero before calling
	ComplexStructMemorySize from NdrComplexArrayUnmarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use safe_mutiply in conformant array functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass in a maximum variance value to ReadVariance to allow us
	to validate the conformance values being read from the wire.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Check that strings are null-terminated on unmarshaling of
	conformant-varying structs.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use safe_multiply when multiplying anything by pStubMsg->ActualCount
	or pStubMsg->MaxCount.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception during unmarshaling if a conformant string isn't
	null-terminated.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Introduce a new function, safe_multiply, which will raise an
	exception if a multiply overflows a 4-byte integer.
	This will protect the unmarshaling code against attacks specifying a
	large variance.
	Use this new function in the conformant string functions to harden them
	against attack.

2006-06-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/uuid/uuid.c, include/guiddef.h:
	uuid: Mark all GUID variables as hidden.

	* dlls/dnsapi/main.c:
	dnsapi: DnsExtractRecordsFromMessage_A is not exported.

	* dlls/advapi32/advapi32.spec:
	advapi32: Added spec entry for GetEffectiveRightsFromAclW.

2006-06-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/glsl_shader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Make all the local shader functions static.

	* dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/surface_gdi.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Make the virtual table functions static where possible.

2006-06-09  Pavel Roskin <proski@gnu.org>

	* programs/winecfg/drivedetect.c:
	winecfg: Recognize all CD and floppy devices listed in Linux devices.txt.

	* programs/winecfg/drivedetect.c, programs/winecfg/winecfg.h:
	winecfg: Allow and prefer using A: and B: for floppies.
	Pass drive type to allocate_letter().  Start search from 'A' for
	floppies.
	Fix missing parentheses in the DRIVE_MASK_BIT definition.  It's a bug
	that is triggered by non-sequential drive allocation.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/glsl_shader.c:
	wined3d: Change fog output variable name for GLSL shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/glsl_shader.c:
	wined3d: Fix regression from register maps switch for ARB shaders.
	I missed a register mask in the move to share the shader_hw_def()
	function between pixel and vertex shaders for ARB shaders.  Fixed
	that, and made the GLSL version use the same mask for consistency.

2006-06-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Enable CND/CMP for SHADER_ARB.

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Print out sampler state names.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Downgrade Get*Shader FIXME to TRACE.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Tests for GetPrintProcessorDirectory.

2006-06-09  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/registry.c:
	advapi32: Test RegSetValueEx[AW] for setting some sequential strings as one.

2006-06-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/msi/create.c, dlls/msi/delete.c, dlls/msi/distinct.c,
	  dlls/msi/insert.c, dlls/msi/msipriv.h, dlls/msi/order.c,
	  dlls/msi/select.c, dlls/msi/table.c, dlls/msi/where.c:
	msi: Make all the ops structures static and const.

	* dlls/imagehlp/Makefile.in, dlls/imagehlp/internal.c:
	imagehlp: Remove the unused internal.c file.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Make the virtual table functions static where possible.

	* dlls/ole32/memlockbytes.c, dlls/ole32/storage32.c,
	  dlls/ole32/storage32.h:
	ole32: Make the virtual table functions static where possible.

	* dlls/itss/itss.c:
	itss: Make the virtual table functions static where possible.

	* dlls/dxdiagn/container.c, dlls/dxdiagn/dxdiag_private.h,
	  dlls/dxdiagn/provider.c:
	dxdiagn: Make the virtual table functions static where possible.

	* dlls/dswave/dswave.c, dlls/dswave/dswave_private.h:
	dswave: Make the virtual table functions static where possible.

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c:
	dsound: Make the virtual table functions static where possible.

	* dlls/dpnet/address.c, dlls/dpnet/client.c, dlls/dpnet/dpnet_private.h:
	dpnet: Make the virtual table functions static where possible.

	* dlls/dmusic/buffer.c, dlls/dmusic/clock.c, dlls/dmusic/collection.c,
	  dlls/dmusic/dmusic.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/thru.c:
	dmusic: Make the virtual table functions static where possible.

	* dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/synth.c,
	  dlls/dmsynth/synthsink.c:
	dmsynth: Make the virtual table functions static where possible.

	* dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_private.h,
	  dlls/dmstyle/motiftrack.c, dlls/dmstyle/mutetrack.c,
	  dlls/dmstyle/style.c, dlls/dmstyle/styletrack.c:
	dmstyle: Make the virtual table functions static where possible.

	* dlls/dmscript/dmscript_private.h, dlls/dmscript/script.c,
	  dlls/dmscript/scripttrack.c:
	dmscript: Make the virtual table functions static where possible.

	* dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/dmloader_private.h, dlls/dmloader/loader.c,
	  dlls/dmloader/loaderstream.c:
	dmloader: Make the virtual table functions static where possible.

	* dlls/dmcompos/chordmap.c, dlls/dmcompos/chordmaptrack.c,
	  dlls/dmcompos/composer.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/signposttrack.c:
	dmcompos: Make the virtual table functions static where possible.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/resource.c, dlls/d3d9/stateblock.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Make the virtual table functions static where possible.

	* dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c:
	d3dx8: Make the virtual table functions static where possible.

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/pixelshader.c,
	  dlls/d3d8/resource.c, dlls/d3d8/stateblock.c, dlls/d3d8/surface.c,
	  dlls/d3d8/swapchain.c, dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Make the virtual table functions static where possible.

2006-06-09  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Write-strings warnings fix.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool: Add GetPrintProcessorDirectoryA.

2006-06-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: We always pass in an IRpcChannelBuffer to IRpcStubBuffer::Invoke now,
	so remove the case for it being NULL.

	* dlls/ole32/rpc.c:
	ole32: If IRpcStubBuffer_Invoke fails, we should raise an exception to
	tell the RPC runtime that the call failed.

	* dlls/ole32/regsvr.c:
	ole32: Register ISequentialStream for marshaling.

	* dlls/ole32/compobj.c, dlls/ole32/ole32.spec:
	ole32: Implement CoQueryClientBlanket, CoImpersonateClient and
	CoRevertToSelf on top of CoGetCallContext, which is a stub.

	* dlls/ole32/ftmarshal.c:
	ole32: Implement FTMarshalImpl_GetMarshalSizeMax.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/regsvr.c, dlls/shell32/shfldr.h,
	  dlls/shell32/shfldr_unixfs.c:
	shell32: Use the standard DEFINE_GUID macro to define GUIDs.

	* dlls/riched20/richole.c:
	riched32: Use the standard DEFINE_GUID macro to define GUIDs.

	* dlls/ole32/antimoniker.c, dlls/ole32/classmoniker.c,
	  dlls/ole32/compobj_private.h, dlls/ole32/compositemoniker.c,
	  dlls/ole32/filemoniker.c, dlls/ole32/ftmarshal.c,
	  dlls/ole32/itemmoniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c, dlls/ole32/regsvr.c, dlls/ole32/stubmanager.c:
	ole32: Use the standard DEFINE_OLEGUID macro to define GUIDs.

	* dlls/oleaut32/oleaut.c, dlls/oleaut32/regsvr.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib.h, dlls/oleaut32/usrmarshal.c:
	oleaut32: Use the standard DEFINE_OLEGUID macro to define GUIDs.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/glsl_shader.c:
	wined3d: GLSL shader cleanup patch.
	- Based on comments from H. Verbeet
	- Changed the distinction from .rgba & .xyzw masks to only use .xyzw
	in GLSL shaders.  They are interchangeable, and only served to make
	the trace look more intuitive, but they don't always apply as-is, so
	we'll just leave everything to .xyzw.
	- Got rid of the "UseProgramObjectARB(0)" call in drawprim.  If there
	is no shader set on the next primitive, then that primitive will
	call UseProgramObjectARB(0) when it begins to draw.

2006-06-08  Pierre d'Herbemont <stegefin@free.fr>

	* dlls/dbghelp/minidump.c:
	dbghelp: Implement fetch_thread_info on powerpc.

	* dlls/ntdll/thread.c:
	ntdll: Fix NtQueryInformationThread on non x86.

2006-06-09  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear an object pointer during unmarshaling, otherwise we
	could end up using the previously allocated memory even if it isn't
	the right size, causing heap corruption.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Initialise pStubMsg->MemorySize to zero before calling
	ComplexStructMemorySize from NdrComplexArrayUnmarshall.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Don't raise an exception if there is no freer function - not all types
	have a freer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement more base types for complex types.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Now that there's a process-wide pool of connections we don't
	need to copy the FromConn field when copying bindings.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Return the status received from RPCRT4_Send in I_RpcSend instead of
	always returning RPC_S_OK.

2006-06-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/texture.c:
	d3d9: Add a test for default texture stage state values.

2006-06-09  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: ScriptTextOut updated to reflect that it must have a hdc passed to it.

2006-06-09  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/msvidc32_Hu.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/msvidc32_No.rc,
	  dlls/msvidc32/msvidc32_Tr.rc:
	msvidc: Change short description to MS-CRAM.

2006-06-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/win.c, dlls/user/win.c:
	user: Neither WS_CAPTION nor WS_EX_APPWINDOW has anything to do how
	passed in to CreateWindow menu should be handled.

2006-06-09  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: Fix safearray data destruction.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c:
	opengl32: Store function pointers in a separate array to avoid a bunch of
	relocations.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/wgl.c:
	opengl32: Only store the glX name if different from the wgl name.

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.c,
	  dlls/opengl32/opengl_ext.h:
	opengl32: Make all the function pointers and thunks static.

2006-06-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Update the progress control while installing.

	* dlls/msi/action.c:
	msi: Remove some unnecessary NULL checks.

2006-06-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: Allow drawPrim to create and use the GLSL program.

	* dlls/wined3d/device.c:
	wined3d: Add GLSL helper functions to Device.
	- Add functions to attach & detach shader objects, create and delete programs,
	and maintain the list of programs.
	- Add a list of GLSL shader programs to the device which is initialized on
	Init3D(), and deleted on Release().

	* dlls/wined3d/vertexshader.c:
	wined3d: Map vertex shader instructions to GLSL generating functions.

	* dlls/wined3d/pixelshader.c:
	wined3d: Map pixel shader instructions to GLSL generating functions.

	* dlls/wined3d/wined3d_private.h:
	wined3d: Prototype the GLSL functions for use with pixel and vertex shaders.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c:
	wined3d: Added more declarations to GLSL.
	- Declare more variable names for GLSL programs.
	- Some of these won't need to be declared eventually, but it doesn't hurt to
	do it for now.
	- Correct output name for pixel shaders (gl_FragColor instead of glFragColor).

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Unified float constant register mapping between ARB pixel and vertex
	shaders.
	- Got rid of the separate constant maps.
	- Side effect of this is that the map is a bit larger for pixel shaders than
	it needs to be

	* dlls/wined3d/Makefile.in, dlls/wined3d/baseshader.c,
	  dlls/wined3d/glsl_shader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add the bulk of the GLSL string generation functions.
	- Add a new file glsl_shader.c which contains almost every GLSL specific
	function we'll need
	- Move print_glsl_info() into glsl_shader.c
	- Move the shader_reg_maps struct info into the private header, and make it
	part of SHADER_OPCODE_ARG.
	- Create a new shared ps/vs register map for float constants (future patch
	will make ARB programs use this, too)

2006-06-08  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move constant loading out of DrawPrimDrawStrided() and enable
	loading float constants for GLSL.
	- DrawPrim is just too big of a function.  This separates the passing
	of constants to the shader into new functions.
	- Fixes an off-by-one error when loading vertex declaration constants
	(should be <, not <=)
	- Adds a function for GLSL loading of constants (aka Uniforms)
	- Adds a GLSL program variable to the stateblock and sets it to 0 (a
	future patch will actually create this program)

2006-06-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Return FALSE in the WM_CLOSE PROPSHEET_DialogProc handler.
	Return FALSE in the WM_CLOSE PROPSHEET_DialogProc handler in order to
	allow DefDlgProc to post us WM_COMMAND/IDCANCEL and unblock modal
	message loop.

2006-06-09  Detlef Riekenberg <wine.dev@web.de>

	* programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Use standard debug functions.

2006-06-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/comdlg32/Makefile.in, dlls/comdlg32/finddlg.c,
	  dlls/comdlg32/finddlg16.c:
	comdlg32: Rename finddlg.c to finddlg16.c.

2006-06-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/hlink/hlink.spec:
	hlink: Add spec file entry for HlinkQueryCreateFromData.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Make the protseq_ops structure constant.

	* dlls/kernel/heap.c:
	kernel: Added support for GlobalMemoryStatus on MacOS.

	* dlls/mshtml/navigate.c:
	mshtml: Changed C syntax that winapi_check doesn't like.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.15.

----------------------------------------------------------------
2006-06-06  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Update ScriptStringAnalyse and tests for ScriptString functions.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Update ScriptGetCMap to conform to Windows.

	* dlls/usp10/tests/usp10.c:
	usp10: Update tests in test_ScriptItemIzeShapePlace to match Windows results.

2006-06-07  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stubs for ScriptCPtoX, ScriptXtoCP and ScriptBreak and some basic
	tests.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/rpcrt4/epm_towers.h:
	rpcrt4: Avoid potential redefinition of uuid_t.

	* configure, configure.ac:
	configure: Make the font warning more explicit about what package is missing.

2006-06-08  Robert Reif <reif@earthlink.net>

	* include/Makefile.in, include/lm.h, include/lmmsg.h:
	include: Add lmmsg.h.

2006-06-07  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/shell32/tests/shlfileop.c:
	shell32/tests: Test to make sure we can create a non-nested directory.

	* dlls/shell32/shlfileop.c:
	shell32: SHCreateDirectoryEx can create a non-nested directory.

2006-06-07  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/tests/.gitignore, dlls/user/tests/Makefile.in,
	  dlls/user/tests/resource.c, dlls/user/tests/resource.rc:
	user/tests: Update LoadImage test.
	Include a bitmap in the resources and don't depend on Windows'
	OBM_CHECK bitmap anymore.

2006-06-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/variant.c:
	oleaut32: Uncomment a line to implement conversion from VT_DISPATCH to VT_BSTR.

	* dlls/oleaut32/vartype.c:
	oleaut32: Handle BSTRs in VARIANT_CopyData.

2006-06-08  Mike McCormack <mike@codeweavers.com>

	* server/registry.c:
	server: Fix a possible memory leak.

	* server/queue.c, server/sock.c, server/user.h:
	server: Make wparam and lparam values unsigned long for win64 compatability.

2006-06-07  Robert Shearman <rob@codeweavers.com>

	* server/window.c:
	server: Don't attach the thread input when changing parents if the new
	parent is the desktop (i.e. it is becoming a top-level window).

	* server/named_pipe.c:
	server: Don't set the client's server field before the server has
	changed into a connected state, otherwise we could assert in
	pipe_client_destroy.

2006-06-08  Alexandre Julliard <julliard@winehq.org>

	* server/event.c, server/process.c, server/request.c, server/thread.c,
	  server/trace.c:
	server: Don't report a fatal protocol error for things that we can recover from.

2006-06-07  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/wininet/ftp.c:
	wininet: ftp: Fix crash if input buffer is larger than MAX_PATH.

	* dlls/wininet/ftp.c:
	wininet: ftp: 125 is an acceptable response code for the STORE command.

2006-06-07  Robert Shearman <rob@codeweavers.com>

	* libs/unicode/Makefile.in, libs/unicode/c_20127.c, libs/unicode/cpmap.pl,
	  libs/unicode/cptable.c:
	libunicode: Add a code page table for the US-ASCII encoding.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Implement a process-wide connection pool for client connections,
	rather than relying on the restriction of one connection per
	binding. This also avoids the problem of two threads using the same
	connection at the same time.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the retrieval of This for interpreted proxies.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Implement full-pointer support for interpreted stubs.
	Move the calls to the full pointer init functions before
	NdrClient/ServerInitializeNew, like in MIDL-generated code.

2006-06-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/surface.c, dlls/d3d9/tests/volume.c:
	d3d9: Add a test for GetContainer (Volumes & Surfaces).

	* dlls/d3d9/vshaderdeclaration.c:
	d3d9: Remove unused vshaderdeclaration.c.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/resource.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/surface.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Fix QueryInterface.
	QueryInterface should return S_OK on success and set the object
	pointer to NULL on failure. This is similar to the patch Ivan
	submitted a while ago for wined3d.

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/surface.c, dlls/d3d8/swapchain.c,
	  dlls/d3d8/texture.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Fix QueryInterface.
	QueryInterface should return S_OK on success and set the object
	pointer to NULL on failure. This is similar to the patch Ivan
	submitted a while ago for wined3d.

2006-06-03  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/undname.c:
	msvcrt: Write-strings warning fix.

2006-06-02  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/kernel/tests/process.c:
	kernel/tests: Write-strings warnings fix.

2006-06-01  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/encode.c:
	crypt32: Write-strings warning fix.

	* dlls/dbghelp/source.c:
	dbghelp: Write-strings warning fix.

2006-06-07  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: TEXREG2GB is valid on pshaders 1.1.

2006-06-06  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c:
	wined3d: Fix NULL dereference in generator function.

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Fix missing light recording.
	Write a light with the default parameters in disabled state if
	capturing a missing light.

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Test missing light recording.
	When a light does not exist, and the app attempts to capture it in the
	stateblock, a disabled light with the default light parameters is
	written instead.

	* dlls/d3d9/tests/device.c:
	d3d9: Mipmaps level test.

2006-06-07  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/msi/msi.rc, dlls/msi/msi_Ru.rc:
	msi: Add Russian resource file.

2006-06-07  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/netapi32.c, dlls/netapi32/netapi32.spec,
	  include/lmserver.h:
	netapi32: Add stub for NetServerEnumEx.

2006-06-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	server: open_console's from field should be a handle.

	* include/wine/server_protocol.h, server/protocol.def, server/trace.c,
	  tools/make_requests:
	server: Use unsigned long for request types that are 64bit in win64.

2006-06-07  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Print process/thread id instead of pointer in protocol errors.

2006-06-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/advpack/install.c, dlls/setupapi/install.c, dlls/shlwapi/assoc.c,
	  dlls/x11drv/dib.c, programs/regedit/listview.c:
	Remove more redundant NULL checks before HeapFree (found by Smatch).

2006-06-05  EA Durbin <ead1234@hotmail.com>

	* dlls/msi/tests/db.c:
	msi/tests: Fixed a typo.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* dlls/hlink/hlink.spec, dlls/hlink/hlink_main.c, tools/wine.inf:
	hlink: Implement DllRegisterServer.

	* dlls/hlink/Makefile.in, dlls/hlink/browse_ctx.c,
	  dlls/hlink/hlink_main.c, dlls/hlink/link.c:
	hlink: Add a basic implementation (based on work by Aric Stewart).

	* configure, configure.ac, dlls/Makefile.in, dlls/hlink/.gitignore,
	  dlls/hlink/Makefile.in, dlls/hlink/hlink.spec,
	  dlls/hlink/hlink_main.c:
	hlink: Add a stub implementation (based on Aric Stewart's code).

	* include/hlink.idl:
	hlink: Declare prototypes for some functions.

2006-06-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winecfg/main.c:
	winecfg: Avoid unnecessary casts.

	* dlls/comctl32/propsheet.c:
	comctl32: Remove WM_SYSCOMMAND handler from PROPSHEET_DialogProc.

2006-06-06  Andrew Ziem <ahziem1@mailbolt.com>

	* include/winuser.h:
	include: Add SETWALLPAPER_DEFAULT to winuser.h.

2006-06-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Return the result of QueryInterface in GetContainer.

	* dlls/wined3d/utils.c:
	wined3d: Remove a redundant break.

	* dlls/wined3d/device.c:
	wined3d: Don't hardcode type sizes for shader constants.

	* dlls/d3d9/tests/shader.c:
	d3d9: Add a test for setting / getting vertex shader constants.

2006-06-06  Robert Shearman <rob@codeweavers.com>

	* dlls/shdocvw/regsvr.c:
	shdocvw: Register some more documented classes that native also registers.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y:
	widl: Support coclass forward declarations.

	* include/exdisp.idl:
	include: Add two more coclasses to exdisp.idl.

2006-06-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add stub implementations for the remaining documented functions.

2006-06-06  Magnus Lundborg <magnus.lundborg.6955@student.uu.se>

	* dlls/x11drv/xvidmode.c:
	x11drv: Declared two functions as static to avoid compiler warnings.

2006-06-06  Alexandre Julliard <julliard@winehq.org>

	* programs/winedbg/debug.l:
	Revert "winedbg: Remove useless NOCMD state."
	This reverts 92deacbe425bfd986a2cc3bf1e776aca02cf08c8 commit.

2006-06-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* tools/wine.inf:
	wine.inf: Added default values for .htm and .html file extension.

2006-06-04  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	oleaut32: safearray: Convert dimension index at the API boundary.

2006-06-06  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Remove constant type field in stateblock.
	It is wrong to maintain a mapping from a constant index to a type
	field, because different constant types do not share an index -
	boolean constant 0 is supposed to co-exist with floating point
	constant 0, not replace it. Drawprim and other code using the type
	array to decide whether to look up a constant in bools, floats, or
	ints is wrong - you can't make that decision based on the index.

	* dlls/wined3d/vertexshader.c:
	wined3d: Rename vertex shader constants.
	From const%lu to C%lu for consistency (to match pshaders).

	* dlls/wined3d/pixelshader.c:
	wined3d: Add limits for ps_2_x.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Trace improvements.

	* dlls/wined3d/pixelshader.c:
	wined3d: pshader defi has 5 parameters.

2006-06-06  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Don't treat a NULL rect as an empty rect in ExtTextOutW.

2006-06-05  James Hawkins <truiken@gmail.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Only BYREF DispCallFunc args whose input args are not BYREF should
	be changed.

	* dlls/oleaut32/typelib.c:
	oleaut32: Copy BYREF args directly if they have the same variant type.

2006-06-05  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/tests/bitmap.c:
	gdi: New tests for GetDIBits.
	New tests that check if GetDIBits works with a bitmap that is selected
	in a device context (works in Windows, should fail according to the
	API documentation)

2006-06-05  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/msvcrt/wcs.c:
	msvcrt: Write-strings warnings fix.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Make some pointer casts win64 compliant.

	* programs/wineconsole/dialog.c:
	wineconsole: Use correct prototypes for dialog procs.

	* programs/wcmd/wcmdmain.c:
	wcmd: Fix a Win64 warning.

	* programs/taskmgr/affinity.c, programs/taskmgr/taskmgr.c:
	taskmgr: Use correct types for Win64.

	* programs/hh/main.c:
	hh: Cast GetProcAddress's return to supress a Win64 warning.

	* programs/winetest/gui.c:
	winetest: Fix dialog prototypes.

2006-06-05  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/userenv/.gitignore,
	  dlls/userenv/Makefile.in, dlls/userenv/userenv.spec,
	  dlls/userenv/userenv_main.c:
	userenv: Add a stub implementation of userenv.dll.

2006-06-05  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/codepage.c:
	kernel/tests: Some tests for WideCharToMultiByte.

2006-06-06  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/crypt.c:
	advapi32: Fix comment to match the function (thanks to Dan Kegel).

2006-06-05  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/info.c:
	winedbg: Get rid of unused mode command.

2006-06-05  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/user/driver.c, dlls/user/user_private.h, dlls/user/win.c,
	  dlls/x11drv/clipboard.c, dlls/x11drv/event.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c:
	x11drv: Improve handling of the case where the clipboard is opened
	with a window from another thread or process.

	* include/ddrawi.h:
	include: Add DDHAL_UPDATEOVERLAYDATA structure.

2006-06-05  Huw Davies <huw@codeweavers.com>

	* dlls/msi/tests/package.c:
	msi: Add some integer condition tests.

2006-06-05  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/kernel/tests/file.c:
	kernel/tests: More tests for FindFirstFile.

2006-06-05  Magnus Lundborg <magnus.lundborg.6955@student.uu.se>

	* programs/wordpad/wordpad.c:
	wordpad: Declare three functions as static to avoid compiler warnings.

2006-06-05  Mike McCormack <mike@codeweavers.com>

	* include/Makefile.in, include/hlguids.h:
	hlink: Add hlguids.h (based on a patch by Aric Stewart).

	* dlls/dnsapi/ns_parse.c:
	dnsapi: Fix the case where we have libresolv headers but no libraries.

2006-06-04  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c:
	wined3d: Render target locking fixes.

2006-06-04  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction031.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction030.

2006-06-05  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/cond.y:
	msi: Fix some copy/paste bugs in the implementation of condition operators.

2006-06-04  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/debug.l:
	winedbg: Remove useless NOCMD state.

	* dlls/user/winpos.c:
	user: Use SetPropW rather than SetPropA for internal property.

2006-06-05  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/where.c:
	msi: An empty string is equivalent to nil, so handle this in the optimised
	WHERE_execute path.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement varying array NDR functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't call NdrBaseTypeMemorySize from within NdrBaseTypeUnmarshall.

2006-06-04  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/types.c:
	winedbg: Correct typedefs in type manipulations.

2006-06-04  Mike McCormack <mike@codeweavers.com>

	* programs/progman/dialog.c, programs/progman/group.c,
	  programs/progman/program.c:
	progman: Win64 fixes.

	* programs/cmdlgtst/cmdlgtst.c:
	cmdlgtst: Use correct types for Win64.

	* programs/winemine/dialog.c, programs/winemine/main.h:
	winemine: Fix dialog proc prototypes for Win64.

	* programs/winemine/dialog.c, programs/winemine/dialog.h,
	  programs/winemine/main.c:
	winemine: Remove dialog.h as it's redundant.

	* include/windef.h:
	include: Fix FARPROC, NEARPROC and PROC definitions for amd64.

2006-06-02  Juan Lang <juan_lang@yahoo.com>

	* programs/winedbg/debug.l:
	winedbg: Fix a crash on initial empty input.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/decode.c,
	  dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement X509_NAME_VALUE encoding/decoding.

2006-06-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Set focus in ui_activate.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Use mime type reported by moniker if possible.

	* dlls/mshtml/navigate.c:
	mshtml: Return S_OK in OnStartBinding and OnStopBinding.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Added beginning OnDataAvailable implementation.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Added begining binding code in IPersistMoniker::Load.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Set binding channel, listener and context in AsyncOpen.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Store BSCallback in NSContainer and use it instead of load_call.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c:
	mshtml: Add create_nscallback function to allow using BSCallback out of
	navigate.c.

	* dlls/mshtml/nsio.c:
	mshtml: Move some code from before_async_open to AsyncOpen.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Get rid of (currently disabled anyway) nsIWebBrowserStream.
	We have to handle it in another way.

2006-06-03  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c, dlls/secur32/tests/main.c:
	secur32: Don't fail on SECURITY_NETWORK_DREP, ntlm_auth handles this just fine.

2006-06-03  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use task queue to handle OnDataAvailable call.

	* dlls/urlmon/binding.c:
	urlmon: Added OnResponse implementation.

2006-06-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/sane.ds/sane_main.c:
	sane.ds: Replace FIXME() by TRACE() on sane_exit.

2006-06-02  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c, dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Don't try to resolve the name when constructing a protocol tower.
	Instead just fill it in with all zeros.

	* dlls/rpcrt4/ndr_misc.h:
	rpcrt4: Change ComputeConformance and ComputeVariance from macros to
	inline functions. Clear pStubMsg->Offset in ComputeVariance since it
	isn't set by ComputeConformanceOrVariance and so could be left filled
	with garbage.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The lifetime of the binding handle stored in the context
	handle is independent of the binding handle used in the call that
	unmarshaled it, so we should use RpcBindingCopy to make a copy of it
	and then call RpcBindingFree later to free it.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix an incorrect format string pointer being passed in to
	ComputeVariance in NdrConformantVaryingStructBufferSize.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Skip over the right-hand-side data for the protocol floor so
	that we can parse the towers received from native rpcrt4.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Align the buffer correctly when marshaling and unmarshaling context
	handles.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Freeing a NULL context handle is allowed.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: NdrClientContextMarshall/Unmarshall should both increment the buffer
	pointer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the unmarshaling of pointers in conformant varying arrays,
	by passing the correct type format string to ReadConformance.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: CContext can be NULL in NDRCContextMarshall, in which case we should
	marshall all-zeros.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the pointer count used when handling embedded pointers in varying
	arrays.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Print some more informative error messages when getaddrinfo fails.

2006-06-02  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Simple tests for InternetGetCookie's parameters.

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix up and test InternetSetCookie parameter checking.

	* dlls/wininet/internet.c:
	wininet: Remove some dead code (Coverity).

2006-06-02  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/registry.c:
	advapi32: Enable some tests and extend them to succeed on XP and 2003 SP1.

	* dlls/rsaenh/rsaenh.c:
	rasenh: Fix a copy&paste bug at passing only one string to RegSetValueExW()
	at a time.

2006-06-02  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlfileop.c:
	shell32: Remove the now unused SHELL_DeleteFileA and SHELL_DeleteDirectoryA.

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shlfileop.c:
	shell32: Avoid Unicode->ANSI conversion when deleting a file.

2006-06-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Add name value tests.
	Add tests for name values, and move tests for different string
	encodings to there.

2006-06-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/decode.c:
	crypt32: Remove exception handling from internal decoding functions.

	* dlls/crypt32/tests/encode.c:
	crypt32: Add a couple CRL encoding tests, one that shows a problem.

2006-06-02  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/user/listbox.c:
	user32: Fix selection handling for listboxes with LBS_EXTENDEDSEL style.

2006-05-25  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user/defwnd.c, dlls/user/tests/msg.c, dlls/x11drv/winpos.c,
	  include/winpos.h:
	user32: Send WM_SIZE when window changes state between restored/min/maximized.

2006-06-01  Wino Rojo <winorojo@hotmail.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix for a BadMatch error.

2006-06-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Remove the check for unimplemented functions.

2006-05-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool.drv/info.c:
	winspool.drv: Add GetPrintProcessorDirectoryW.

2006-06-01  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_epmap.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: All of the parameters to TowerExplode are optional.

	* dlls/rpcrt4/rpc_epmap.c, dlls/rpcrt4/rpcrt4.spec,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Implement TowerConstruct and TowerExplode.
	Add some tests for these undocumented functions.

	* dlls/rpcrt4/epm_towers.h, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add functions for generating and parsing the upper floors in
	endpoint-mapper towers for different transports.

	* dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/rpcrt4_main.c:
	rpcrt4: Implement I_RpcAllocate and I_RpcFree.

	* dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Don't send the unused part of the allocated buffer.

	* dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: NdrClientInitializeNew shouldn't clear all of the stub message, only
	selected fields.

2006-06-02  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/comctl32/header.c:
	comctl32/header: Check Null before accessing struct member.

2006-06-01  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Add EncryptMessage and DecryptMessage stubs.

2006-06-02  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c:
	user32: Popup menu position fixes.
	- Open large popup menus on the other side only if there's enough space
	- Open popup menus such that the y position of the first item in the
	popup menu is the same as the y position of the focused menu item.

2006-06-01  Emmanuel Maillard <mahanuu@opendarwin.org>

	* programs/winecfg/audio.c:
	winecfg: Add CoreAudio to audio drivers list.

2006-06-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Replace PeekMessage loops in the PeekMessage test by explicit calls.
	Replace all 'while (PeekMessage()) DispatchMessage();' loops in the
	PeekMessage test by explicit calls to PeekMessage(), check queue
	status and processed messages after each call to see what is going on
	behind the scene.

2006-06-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/base64.c:
	crypt32: Make base64 tests loadable on win9x.

2006-06-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shellpath.c:
	shell32: Add Fonts to user's shell folders list.

2006-06-01  Robert Shearman <rob@codeweavers.com>

	* tools/widl/widl.man.in:
	widl: Fix a typo in the man page.

	* tools/widl/typegen.c:
	widl: Properly size the return value procformat.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h, tools/widl/widltypes.h:
	widl: Only write one procformat string and one typeformat string per file.

2006-06-01  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: FreeType's idea of metrics has changed for bitmap fonts.

2006-06-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h:
	winecoreaudio: Fixed the FSF address.

2006-05-24  Ken Thomases <ken@codeweavers.com>

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Don't CFAllocate buffer for port message.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Use unique name for message port.
	Use a unique port name for the message port to the message thread.
	Port names are system-global, so using a non-unique constant name
	prevents the CoreAudio driver from being used in multiple processes
	simultaneously.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: 8-bit Linear PCM data is unsigned.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Keep processing wavehdrs to satisfy AudioUnit data request.
	When fulfilling the output AudioUnit's request for audio data, don't
	stop when the current wavehdr is exhausted; advance to the next.  This
	addresses the buzzy quality of the sound.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Improve state tracking.
	Improved tracking of device state (stopped, playing, or paused).
	Also, tied starting and stopping the AudioUnit more directly to the
	state.	No need to change the state when preparing or unpreparing
	wavehdrs.  Pausing overrides both playing and stopped states; if
	stopped, pausing prevents output from starting when the program
	writes.  When, restarting from the paused state, the device starts
	playing if there are queued wavehdrs.  Otherwise, it goes to stopped
	state.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Miscellaneous cleanup.
	Miscellaneous cleanup: release resources when done with them; protect
	against null pointers; reduce redundant code; avoid potential integer
	underflow; clarify a do-nothing loop.

	* dlls/winmm/winecoreaudio/audio.c:
	winecoreaudio: Fix race to open.
	Fixes a race condition (noted in a comment for wodOpen) when multiple
	threads try to open the same wave-out device simultaneously.
	Addressed by creating the device mutexes when the driver is
	initialized, instead of as each device is opened.  Then use the mutex
	to protect the open operation against races.  At the same time, made
	the mutexes recursive to avoid self-deadlocks the driver was
	encountering when reentered from the callback.

2006-06-01  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NDRCContext(Un)marshall and NDRCContextBinding.

2006-06-01  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Adjust the video mem when dropping the pow2 size in GDISurface.

2006-05-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Remove no longer needed binding value in task_t.

	* dlls/urlmon/binding.c:
	urlmon: Use task queue for cross thread calls in on_progress.

	* dlls/urlmon/binding.c:
	urlmon: Use task queue in Switch implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added task queue architecture and use it for OnProgress calls from
	Continue call.

	* dlls/urlmon/binding.c:
	urlmon: Make suse that every OnProgress call is in an apartment thread.

2006-05-31  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/tests/cert.c:
	crypt32/tests: Write-strings warning fix.

2006-05-31  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Update the rects in HEADER_Refresh if needed.

2006-05-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/query.c:
	dnsapi: Fall back to a netbios query when a dns query fails.

2006-05-27  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/wsock32/service.c, dlls/wsock32/wsock32.spec, include/nspapi.h:
	wsock32: Added GetService{A,W} stubs.

2006-05-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Use FindMimeFromData to determine MIME type.

2006-05-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add ENUM32 support to ComplexStructMemorySize.

2006-05-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Make sure to read the memid and the name offset from the
	correct offsets, after the function data, so add cFuncs to the offsets
	in MSFT_DoVars.
	Resolve referenced types for variables.
	Fixes initialisation of the dbgrid32 OCX.

	* dlls/oleaut32/typelib.c:
	oleaut32: Resolve referenced types for return values as well as parameters in
	MSFT typelibs.

	* tools/widl/parser.y:
	widl: Allow some more "reserved words" to be used as identifiers.

	* include/rpcdcep.h:
	include: Add some defines used by MIDL-generated code.

2006-05-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/winmm/winecoreaudio/audio.c, dlls/winmm/winecoreaudio/audiounit.c:
	winecoreaudio: Fixed a bunch of compiler warnings.

	* configure, configure.ac, dlls/dnsapi/ns_parse.c, include/config.h.in:
	dnsapi: Added check for _msg_ptr vs. _ptr member in ns_msg struct.

	* dlls/dnsapi/ns_name.c, dlls/dnsapi/ns_parse.c, dlls/dnsapi/query.c:
	dnsapi: Remove a bunch of unused functions that cause naming conflicts.

	* dlls/dnsapi/ns_name.c, dlls/dnsapi/query.c:
	dnsapi: Portability fixes.

2006-05-31  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/base64.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/tests/.gitignore,
	  dlls/crypt32/tests/Makefile.in, dlls/crypt32/tests/base64.c,
	  include/wincrypt.h:
	crypt32: Implement CryptBinaryToStringA and CryptStringToBinaryA.
	Implement CryptBinaryToStringA and CryptStringToBinaryA based on Kai
	Blin's base64 encoder/decoder.

2006-05-31  Mike McCormack <mike@codeweavers.com>

	* programs/wineconsole/dialog.c:
	wineconsole: Store the font as a DWORD_PTR.

	* programs/wineconsole/user.c:
	wineconsole: Use a Get/SetWindowLongPtr to store a pointer.

	* programs/wordpad/wordpad.c:
	wordpad: Use GetWindowLongPtr to get the HINSTANCE.

2006-05-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Added text/html filter.

	* dlls/urlmon/urlmon_main.c:
	urlmon: Use filters mechanism in FindMimeFromData.

2006-05-31  Troy Rollo <wine@troy.rollo.name>

	* dlls/ole32/storage32.c:
	ole32: Use STGM_WRITE when opening child storage to delete its children.

2006-05-30  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c, dlls/winmm/tests/winmm_test.h:
	winmm: Always check for open and close enents in wave test.
	Always check for open and close events.
	Send WM_APP message to thread to terminate it rather than TerminateThread.
	Fix CreateThread/waveOutOpen race by waiting for background thread to
	run before waveOutOpen is called.
	Add more non-hardware supported formats.  There is a bug in wave
	mapper GetPosition when multiple headers are used and this helps
	trigger it.

2006-05-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/dnsapi/query.c:
	dnsapi: Fixed missing lock release on error path.

2006-05-30  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/tests/device.c:
	d3d8: Backport of the d3d9 swapchain test to d3d8.

	* dlls/d3d8/device.c:
	d3d8: Back buffer count fix.

2006-05-30  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/crypt32/cert.c:
	crypt32: Write-strings warning fix.

	* dlls/winmm/joystick/Makefile.in:
	winmm/joystick: joystick.c requires Unicode library.

2006-05-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/propsheet.c:
	comctl32: propsheet: Fixed buffer sizes for LoadStringW.

2006-05-28  Emmanuel Maillard <mahanuu@opendarwin.org>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/winmm/winecoreaudio/.gitignore,
	  dlls/winmm/winecoreaudio/Makefile.in,
	  dlls/winmm/winecoreaudio/audio.c,
	  dlls/winmm/winecoreaudio/audiounit.c,
	  dlls/winmm/winecoreaudio/coreaudio.c,
	  dlls/winmm/winecoreaudio/coreaudio.h,
	  dlls/winmm/winecoreaudio/winecoreaudio.drv.spec, include/config.h.in:
	winecoreaudio: Initial Audio Driver for Mac OS X.

2006-05-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/query.c:
	dnsapi: Implement DnsQuery_{A,UTF8,W}.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.h, dlls/dnsapi/ns_name.c,
	  dlls/dnsapi/ns_parse.c:
	dnsapi: Add DNS message parsing routines from BIND.

2006-05-30  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Ignore out-of-range iOrder in SetItemT.

	* dlls/kernel/format_msg.c:
	kernel32: Prevent truncating characters to 8 bits in FormatMessageW.

2006-05-28  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/msi/tests/format.c:
	msi: Increase verbosity in some failing tests.

2006-05-30  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't crash when querying NULL values.

	* dlls/wininet/tests/http.c:
	wininet: Add a test for basic authentication.

	* dlls/user/class.c, dlls/user/user32.spec, dlls/user/win.c:
	user32: Stub implementations for Win64's Get/Set LongPtr functions.

2006-05-29  Troy Rollo <wine@troy.rollo.name>

	* include/wine/wined3d_gl.h:
	wined3d: Add missing GL_VERTEX_SHADER_ARB definition.

2006-05-30  Troy Rollo <wine@troy.rollo.name>

	* dlls/comdlg32/filedlg.c:
	comdlg32: Prevent SEGV in FILEOPEN95_OnOpen when a malformed filter is passed.
	FILEOPEN95_OnOpen assumes that each item in the filter list returns a
	non-NULL pointer for CB_GETITEMDATA.

2006-05-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/device.c:
	wined3d: Properly destroy texture object if we failed to create its surfaces.

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c, dlls/d3d9/directx.c,
	  dlls/d3d9/surface.c, dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c:
	d3d9: Add reference to the parent device for surfaces.
	Allow some objects to have no parent device.
	Tighten refcount tests and test refound decrement on Release.

2006-05-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make UserMarshalFlags static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: We should never pass an fMustAlloc value of TRUE into the
	unmarshaler routines of embedded complexes in complex struct and array
	unmarshaling.
	Fixes a regression caused by commit
	19fad8e71032707cb036239f69f085e1b0249d01, reported by Ulrich
	Dobramysl.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make sure to set a unique pointer with an id of 0 to NULL when
	unmarshaling.

	* dlls/rpcrt4/ndr_fullpointer.c:
	rpcrt4: If the number of pointers is 0 for NdrFullPointerXlatInit then
	set the number of pointers to a large default, so that NumberOfBuckets
	doesn't end up less than zero.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle marshaling/unmarshaling full pointers.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: For full pointers the state consists of flags, so or new flags into
	the field instead of assigning.
	The return value of all full pointer functions that return an int
	depends on the passed in query type being a flag in the state.

2006-05-29  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32/tests: Write-strings warnings fix.

2006-05-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/msi/msi.c:
	msi: Implement MsiLocateComponent{A,W}.

2006-05-30  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Improve 64bit compatibility.

2006-05-29  Mike McCormack <mike@codeweavers.com>

	* dlls/wldap32/add.c, dlls/wldap32/modify.c:
	wldap32: Fix unused variable warnings.

	* dlls/gdi/freetype.c:
	gdi32: Fix an unused variable warning.

2006-05-29  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Do not disable GL_BLEND when alpha blending is active.

	* dlls/wined3d/surface_gdi.c:
	wined3d: Release the memory in IWineGDISurface::PrivateSetup before calling
	GetDC.

2006-05-28  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Add multiple header wave tests.
	The current wave tests only use a single header for playback.  Tests
	have been added to use multiple headers and to reuse them.  This is
	how streaming applications and direct sound use the wave api.

2006-05-27  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comctl32/tests/header.c, dlls/comctl32/tests/tab.c:
	comctl32/tests: Write-strings warning fix.

2006-05-27  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS: Some directories are renamed / removed / added.

	* dlls/winspool.drv/tests/info.c:
	winspool/tests: Use 0xdeadbeef as magic value.

	* dlls/winspool.drv/info.c:
	winspool: Documentation for GetPrintProcessorDirectory.

2006-05-28  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Return an error for invalid requests instead of killing the client
	process.

	* dlls/user/winproc.c:
	user: Fixed WM_ACTIVATEAPP mapping with null task handle.

	* Make.rules.in:
	Make.rules: Define datarootdir to avoid a configure warning.

2006-05-28  Frank Richter <frank.richter@gmail.com>

	* dlls/shdocvw/shdocvw_main.c:
	shdocvw: Install Mozilla control silently.

	* dlls/shdocvw/De.rc:
	shdocvw: Improve German translation.

2006-05-28  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/main.c:
	secur32: Cleaning up the authentication tests.
	This should make it easier to add encryption tests later.

2006-05-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Improve debug traces.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Store STGMEDIUM in Binding object and set its pUnkForRelease.

	* dlls/urlmon/binding.c, dlls/urlmon/session.c, dlls/urlmon/urlmon_main.h:
	urlmon: Return IClassFactory in get_protocol_handler and fix get_protocol.

2006-05-27  Alexandre Julliard <julliard@winehq.org>

	* tools/sfnt2fnt.c:
	sfnt2fnt: Clean output files when aborting on a signal.

	* tools/make_ctests.c:
	make_ctests: Clean output files when aborting on an error or signal.

	* tools/fnt2fon.c:
	fnt2fon: Clean output files when aborting on an error or signal.

	* tools/bin2res.c:
	bin2res: Clean output files when aborting on an error or signal.

	* tools/widl/widl.c:
	widl: Clean output files when aborting on a signal.

	* tools/wrc/wrc.c:
	wrc: Clean output files when aborting on an error or signal.

	* tools/wmc/wmc.c:
	wmc: Clean output files when aborting on an error or signal.

2006-05-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/loader.c:
	ntdll: Free TLS pointers when exiting thread.

	* dlls/kernel/selector.c, dlls/ntdll/thread.c, include/winternl.h:
	ntdll/kernel32: Moved GetThreadSelectorEntry to ntdll.
	- implemented NtQueryInformationThread's ThreadDescriptorTableEntry
	information class
	- used it to implement the kernel32's equivalent (GetThreadSelectorEntry)

	* dlls/kernel/sync.c, dlls/ntdll/file.c, include/winbase.h,
	  include/wine/server_protocol.h, include/winternl.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c:
	ntdll/kernel32: Pipe information.
	- implemented ntdll.NtQueryInformationFile's FilePipeLocalInformation control
	code
	- reimplemented kernel32.GetNamedPipeInfo on top of it
	- enhance current features to make this work both on client and server handles
	- now also returning the number of instances

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add ability to generate GLSL shader objects for vertex and pixel
	shaders.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Final move of the GLSL registry check (hopefully).

2006-05-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/kernel/module.c, include/winbase.h:
	kernel32: Partial implementation of GetModuleHandleExA/W.

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: Implemented RtlPcToFileHeader.

2006-05-26  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/base64_codec.c:
	secur32: Fix wrong bit shift in the base64 encoder.
	Thanks to Juan Lang for catching this one.

2006-05-26  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Store the QueryType in the state table in NdrFullPointerQueryRefId.
	Implement NdrFullPointerFree.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Fix NdrFullPointerQueryRefId to make more tests pass.

	* dlls/rpcrt4/ndr_fullpointer.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement remaining part of NdrFullPointerQueryPointer and implement
	NdrFullPointerInsertRefId.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/ndr_fullpointer.c,
	  dlls/rpcrt4/rpcrt4.spec, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Implement some full pointer functions and add stubs for others.
	Add some tests.

2006-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::BltFast.

2006-05-26  Mike McCormack <mike@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Avoid some code duplication.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrClientContext(Un)Marshall.

2006-05-26  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CertVerifyCRLTimeValidity and partially implement
	CertVerifySubjectCertificateContext.

	* dlls/crypt32/context.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Combine redundant code.

2006-05-25  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: The font cache needs to discriminate whether the device can cope with
	bitmap fonts or not.

2006-05-26  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Even though FC_DEREFERENCE conformance is handled elsewhere in
	ComputeConformanceOrVariance it is still necessary to set the count
	variable to the value retrieved.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Return the actual status code sent back by the server, rather than
	RPC_S_CALL_FAILED.

2006-05-26  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface_gdi.c:
	wined3d: Fix IWineGDISurface::SaveSnapshot.

	* dlls/wined3d/surface.c:
	wined3d: Disable the depth test in UnlockRect

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Fix regression introduced by recent multitexture patch.

2006-05-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/theme_dialog.c:
	comctl32: Dialog procedures should be called with CallWindowProc.

	* dlls/user/controls.h, dlls/user/user16.c, dlls/user/win.c,
	  dlls/user/winproc.h:
	user: Only include winproc.h where necessary.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the listbox and combobox messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the edit control messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for button and scrollbar messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_GETTEXT, WM_SETTEXT and similar messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for the WM_DDE* messages.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_MDIACTIVATE, WM_MDIGETACTIVE and
	WM_MDISETMENU.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_COPYDATA, WM_GETDLGCODE and WM_NEXTMENU.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_GETMINMAXINFO, WM_NCCALCSIZE and
	WM_WINDOWPOSCHANGING/CHANGED.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_COMPARE/DELETE/MEASURE/DRAWITEM.

	* dlls/user/winproc.c:
	user: Added fast 32->16 mapping for WM_CREATE, WM_NCCREATE and WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for the WM_DDE* messages.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_MDIACTIVATE, WM_MDIGETACTIVE and
	WM_MDISETMENU.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_COPYDATA, WM_GETDLGCODE and WM_NEXTMENU.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_GETMINMAXINFO, WM_NCCALCSIZE and
	WM_WINDOWPOSCHANGING/CHANGED.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_COMPARE/DELETE/MEASURE/DRAWITEM.

	* dlls/user/winproc.c:
	user: Added fast 16->32 mapping for WM_CREATE, WM_NCCREATE and WM_MDICREATE.

	* include/wine/unicode.h:
	wine_unicode: Add prototypes for inline functions (from a patch by Andrew
	Talbot).

	* dlls/crypt32/context.c, dlls/gphoto2.ds/gphoto2_Ko.rc:
	Fixed a couple of instances of the old FSF address that crept back in.

2006-05-25  Phil Costin <philcostin@hotmail.com>

	* dlls/d3d9/d3d9.spec, dlls/d3d9/d3d9_main.c:
	wined3d: Create stub for D3DPERF_SetOptions function.

2006-05-25  Pierre d'Herbemont <stegefin@free.fr>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Obtain wine and wineserver from the bindir, instead of
	relaying on the PATH.

2006-05-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Put the new item in place of the hot divider instead of
	swapping.

2006-05-25  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Draw the drag image and hot dividers while dragging an item.

	* dlls/comctl32/header.c:
	comctl32: header: Fix an order-related bug in HEADER_InternalHitTest.

	* dlls/comctl32/header.c:
	comctl32: header: Implement HDM_SETHOTDIVIDER.

	* dlls/comctl32/header.c:
	comctl32: header: Implement HDM_CREATEDRAGIMAGE.

2006-05-26  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Apply the HDS_DRAGDROP header style if needed.
	Apply the HDS_DRAGDROP header style if the listview has the
	LVS_EX_HEADERDRAGDROP. Block the columns reordering as the listview
	doesn't support them.

2006-05-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c:
	crypt32: Implement CertSerializeCRLStoreElement.

2006-05-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mapi32/util.c:
	mapi32: Break out of the loop as soon as MSI call succeeds.

	* dlls/gdi/freetype.c:
	gdi: Add more const qualifiers.

2006-05-26  Jason Green <jave27@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Move the GLSL registry check again.

2006-05-26  Mike McCormack <mike@codeweavers.com>

	* tools/winapi/tests.dat:
	winapi: IMAGE_OPTIONAL_HEADER has different members on x86-64.

	* include/rpcndr.h:
	rpcrt4: Remove unused IN and OUT macros.

2006-05-25  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mapi32/mapi32.spec, dlls/mapi32/util.c:
	mapi32: Implement FGetComponentPath.

	* dlls/msi/msi.c:
	msi: Translate the resulting string only if the previous call succeeded.

2006-05-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c, dlls/urlmon/urlmon_main.c:
	urlmon: Fix implementation of ReleaseBindInfo.

	* dlls/urlmon/binding.c:
	urlmon: Better pending read handling.

	* dlls/urlmon/binding.c:
	urlmon: Added Switch implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added handling BINDDSTATUS_FINDINGSOURCE and BINDSTATUS_CONNECTING
	in ReportProgress.

	* dlls/urlmon/binding.c, dlls/urlmon/urlmon_main.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Call OnProgress in apartment thread.

	* dlls/urlmon/binding.c:
	urlmon: Return MK_S_ASYNCHRONOUS if bindindg is asynchronous.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Added ReportResult implementation.

	* dlls/urlmon/binding.c:
	urlmon: Added GetRootSecurityId and BeginningTransaction implementation.

2006-05-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crl.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/store.c, dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Add support for CRLs.

	* dlls/crypt32/cert.c:
	crypt32: Use public functions when finding certificates.

2006-05-25  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c:
	wined3d: Shader caps fix - code relocation.

2006-05-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_gl.h:
	wined3d: Dynamicly load GL_ARB_multitexture functions.

2006-05-25  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Small rhw vertex fix.
	Fix the one pixel displacement and move the glOrtho code in a common
	function.

2006-05-25  Alexandre Julliard <julliard@winehq.org>

	* configure:
	configure: Regenerated with autoconf 2.59d.

	* include/wine/debug.h, include/wine/library.h, include/wine/test.h,
	  include/wine/unicode.h:
	include: Prevent internal Wine headers from being used in tests.

	* dlls/wined3d/surface.c:
	wined3d: Fixed a compiler warning.

2006-05-25  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ntdll/file.c:
	ntdll: Return FILE_DEVICE_CD_ROM_FILE_SYSTEM for supermount filesystems.

2006-05-24  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/wininet/http.c, dlls/wininet/urlcache.c:
	wininet: Constify data.

	* dlls/gdi/dib.c, dlls/gdi/freetype.c, dlls/gdi/tests/palette.c:
	gdi: Constify data.

2006-05-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Get correct horizontal spacing value in the presence of ETO_PDY flag.

2006-05-24  Jason Green <jave27@gmail.com>

	* include/wine/wined3d_gl.h:
	wined3d: Add some more GLSL defines.

2006-05-25  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Stub implementations for NDRS marshalling functions.

	* dlls/crypt32/oid.c:
	crypt32: Fix a integer to pointer cast.

	* dlls/msi/action.c, dlls/msi/database.c:
	msi: Fix some pointer to integer casts.

	* dlls/kernel/console.c:
	kernel32: Fix some pointer to integer casts.

	* dlls/mapi32/mapi32_main.c:
	mapi32: Fix prototype of MAPILogon and MAPILogoff.

	* include/richedit.h:
	richedit: Fix prototype of the callback function.

2006-05-24  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/ftmarshal.c:
	ole32: Add a class factory for CLSID_InProcFreeMarshaler.

	* dlls/ole32/ftmarshal.c:
	ole32: Implement GetUnmarshalClass for the free-threaded marshaler and
	remove unnecessary unmarshaling code for the standard-marshal case -
	this is handled by CoUnmarshalInterface and CoReleaseMarshalData.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Implement table-strong marshaling and ReleaseMarshalData for the
	free-threaded marshaler.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Implement table-weak marshaling for the free-threaded marshaler.

	* dlls/ole32/ftmarshal.c:
	ole32: Release the standard marshal in the free-threaded marshaler's
	UnmarshalInterface function.

	* dlls/ole32/ftmarshal.c, dlls/ole32/tests/marshal.c:
	ole32: Add a rough implementation of the free-threaded marshaler MarshalInterface
	and UnmarshalInterface methods, with test cases.

	* dlls/ole32/ftmarshal.c:
	ole32: Fix the free-threaded marshaler when it has no outer unknown.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Set the Memory field of the stub message structure to the
	start of the memory that an embedded pointer is embedded in so that
	FC_POINTER conformance works correctly.

	* dlls/rpcrt4/ndr_stubless.c, include/rpcndr.h:
	rpcrt4: Implement explicit generic binding handles.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the getting of the client binding handle to a separate function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Move the initialising of the stub message structure nearer to the top
	of NdrClientCall2.
	Set stubMsg.StackTop after calling the initialise function.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Store the arguments exclusively in stubMsg.StackTop.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Implement RpcBindingCopy.

	* dlls/ole32/compobj.c, dlls/uuid/uuid.c:
	uuid: Add some COM CLSIDs.

	* include/urlmon.idl:
	include: Add several more interfaces to urlmon.idl.

2006-05-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/misc.c:
	urlmon: Added registering name space test.

	* dlls/urlmon/binding.c, dlls/urlmon/internet.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	urlmon: Use registered protocols.

	* dlls/urlmon/session.c:
	urlmon: Added [Un]RegisterNamespace implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/service.c:
	mshtml: The secret interface is CMarkup. Improve FIXMEs.

2006-05-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Add one more test of CertAddEncodedCertificateToStore.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/store.c:
	crypt32: Move cert functions that don't depend on the implementation of stores
	to cert.c.

2006-05-25  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c:
	wined3d: Fog fixes.

2006-05-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Turn around the image in LockRect.

	* dlls/wined3d/device.c:
	wined3d: Silence the offscreen surface creation fixme.

	* dlls/wined3d/device.c:
	wined3d: Color keying emulation.

2006-05-24  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/stateblock.c, dlls/d3d9/tests/device.c:
	d3d9: StateBlock is also created in EndStateBlock. With tests.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.14.

----------------------------------------------------------------
2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/usp10/tests/usp10.c:
	usp10: Fixed a compiler warning.

	* dlls/avifil32/Makefile.in, dlls/comdlg32/Makefile.in,
	  dlls/dmloader/Makefile.in, dlls/dmusic/Makefile.in,
	  dlls/dplayx/Makefile.in, dlls/hhctrl.ocx/Makefile.in,
	  dlls/mciavi32/Makefile.in, dlls/mciseq/Makefile.in,
	  dlls/mciwave/Makefile.in, dlls/midimap/Makefile.in,
	  dlls/msacm32.drv/Makefile.in, dlls/msdmo/Makefile.in,
	  dlls/odbc32/Makefile.in, dlls/rpcrt4/Makefile.in,
	  dlls/shdocvw/Makefile.in, dlls/urlmon/Makefile.in,
	  dlls/winmm/winearts/Makefile.in, dlls/winmm/winenas/Makefile.in,
	  dlls/winmm/wineoss/Makefile.in, programs/msiexec/Makefile.in,
	  programs/rundll32/Makefile.in, programs/winemenubuilder/Makefile.in:
	Link against libwine_unicode everywhere we use Unicode functions.

	* dlls/ntdll/tests/atom.c, dlls/ntdll/tests/env.c,
	  dlls/ntdll/tests/port.c, dlls/oleaut32/tests/vartype.c,
	  dlls/rpcrt4/tests/ndr_marshall.c, dlls/rpcrt4/tests/rpc.c,
	  dlls/shdocvw/tests/shortcut.c, dlls/shell32/tests/shlfolder.c,
	  dlls/shlwapi/tests/path.c:
	Tests should not use wine/unicode.h.

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Get rid of unnecessary inclusion of unicode.h.

	* libs/wine/debug.c:
	libwine: Don't use libwine_unicode functions.

2006-05-24  Mike McCormack <mike@codeweavers.com>

	* dlls/gdi/font.c, dlls/msi/classes.c, dlls/quartz/filtergraph.c,
	  programs/winefile/winefile.c:
	Fixed more boolean comparisons against TRUE.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add stub implementations for NDRCContext(Un)Marshall.

	* dlls/wininet/dialogs.c:
	wininet: Fix a possible NULL pointer deference.

2006-05-21  Detlef Riekenberg <wine.dev@web.de>

	* Makefile.in:
	Makefile.in: find needs a slash when the source dir is a symlink.

2006-05-22  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/gphoto2.ds/gphoto2_Ko.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Korean resources.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/locale.c, dlls/ntdll/rtlstr.c, include/wine/unicode.h,
	  libs/unicode/string.c, libs/unicode/wine_unicode.def,
	  libs/unicode/wine_unicode.map:
	libwine_unicode: Renamed is_dbcs_leadbyte to wine_is_dbcs_leadbyte.

	* include/wine/unicode.h, libs/unicode/string.c,
	  libs/unicode/wine_unicode.def, libs/unicode/wine_unicode.map:
	libwine_unicode: Define all functions in the library even if they can be inlined.

2006-05-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user: Add a test to check the queue status if there is a pending
	posted message and the quit flag is set.

2006-05-24  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d9/swapchain.c, dlls/d3d9/tests/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Swapchain and back buffer corrections + tests.

2006-05-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Set a default radio button.

	* dlls/msi/action.c:
	msi: Fix a possible memory leak.

2006-05-21  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Fix ARB_imaging abuse.

2006-05-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/wined3d/device.c:
	wined3d: Fixed a couple of boolean comparisons against TRUE.

2006-05-23  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Replaced USING_GLSL define with a new wined3d_settings option based
	on the registry.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add function to print the infolog of a GLSL shader on errors.
	With assistance from H. Verbeet.

	* include/wine/wined3d_gl.h:
	wined3d: Added some GLSL defines and function prototypes.

2006-05-23  Andrew Talbot <Andrew.Talbot@talbotville.com>

	* dlls/comdlg32/printdlg.c:
	comdlg32: Write-strings warning fix.

2006-05-23  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/comctl32/comctl_Fr.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/msacm32/msacm_Fr.rc, programs/cmdlgtst/Fr.rc,
	  programs/notepad/Fr.rc, programs/progman/Fr.rc,
	  programs/regedit/Fr.rc, programs/taskmgr/Fr.rc,
	  programs/winefile/Fr.rc, programs/winhelp/Fr.rc,
	  programs/wordpad/Fr.rc:
	Uniformization of French main menu accelerators.

2006-05-23  Hans Leidekker <hans@it.vu.nl>

	* programs/uninstaller/Nl.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Add Dutch resources.

2006-05-24  Marcus Meissner <marcus@jet.franken.de>

	* dlls/x11drv/xrender.c:
	x11drv: GdiAlphaBlend fix for X errors if width or height is 0.

2006-05-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Test and fix a couple CertAddCertificateContextToStore corner cases.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Remove a double cap flag.

	* dlls/wined3d/surface.c:
	wined3d: Remove an unnecessary NULL check.

2006-05-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/persist.c:
	mshtml: Added stub implementation of IPersistStreamInit.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added OLEIVERB_UIACTIVATE implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Don't do verb that is already done.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Move UI activating to the separated function.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Move inplace activating code to the separated function.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser v1 implementation.

	* dlls/shdocvw/regsvr.c:
	shdocvw: Added WebBrowser v1 registration.

2006-05-23  Robert Shearman <rob@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Fix the loading of strings for the property sheet page by
	caching the ID of the string to load before overwriting it with an
	Alloc call.

2006-05-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Reuse the fast A->W function to implement the 16->32W case.
	Get rid of the no longer needed 16->32W mapping functions.

	* dlls/user/winproc.c:
	user: Reuse the fast W->A function to implement the 32W->16 case.
	Get rid of the no longer needed 32W->16 mapping functions.

	* dlls/user/msg16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks for the remaining 16-bit messaging functions.

2006-05-22  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Don't try to draw items outside the clipping rect.

	* dlls/comctl32/header.c:
	comctl32: header: Make the column resizing smooth in full drag mode.
	Make the column resizing smooth in full drag mode even for listview
	with lots of elements by redrawing only the resized column and calling
	UpdateWindow.

2006-05-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/context.c,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/store.c:
	crypt32: Abstract contexts.
	- create an abstract interface for contexts, and use it for certificates
	- create a simple context list, and use it for memory stores

2006-05-23  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stub for ScriptStringOut.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Do not addref a NULL backbuffer in IWineD3DSwapChain::GetBackBuffer.

2006-05-23  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Uncomment test now that it works correctly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Add another static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix some comments and move the NdrSimpleType* functions out from
	amongst the NdrSimpleStruct* ones.

2006-05-23  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winspool.drv/.gitignore, dlls/winspool.drv/Bg.rc,
	  dlls/winspool.drv/De.rc, dlls/winspool.drv/En.rc,
	  dlls/winspool.drv/Eo.rc, dlls/winspool.drv/Fi.rc,
	  dlls/winspool.drv/It.rc, dlls/winspool.drv/Ko.rc,
	  dlls/winspool.drv/Makefile.in, dlls/winspool.drv/Nl.rc,
	  dlls/winspool.drv/Ru.rc, dlls/winspool.drv/Tr.rc,
	  dlls/winspool.drv/info.c, dlls/winspool.drv/tests/.gitignore,
	  dlls/winspool.drv/tests/Makefile.in, dlls/winspool.drv/tests/info.c,
	  dlls/winspool.drv/winspool.drv.spec, dlls/winspool.drv/winspool.rc,
	  dlls/winspool.drv/wspool.c, dlls/winspool.drv/wspool.h,
	  dlls/winspool/.gitignore, dlls/winspool/Bg.rc, dlls/winspool/De.rc,
	  dlls/winspool/En.rc, dlls/winspool/Eo.rc, dlls/winspool/Fi.rc,
	  dlls/winspool/It.rc, dlls/winspool/Ko.rc, dlls/winspool/Makefile.in,
	  dlls/winspool/Nl.rc, dlls/winspool/Ru.rc, dlls/winspool/Tr.rc,
	  dlls/winspool/info.c, dlls/winspool/tests/.gitignore,
	  dlls/winspool/tests/Makefile.in, dlls/winspool/tests/info.c,
	  dlls/winspool/winspool.drv.spec, dlls/winspool/winspool.rc,
	  dlls/winspool/wspool.c, dlls/winspool/wspool.h,
	  programs/winetest/Makefile.in:
	winspool: Renamed the directory to winspool.drv.

	* configure, configure.ac, dlls/Makefile.in, dlls/wineps.drv/.gitignore,
	  dlls/wineps.drv/Makefile.in, dlls/wineps.drv/afm.c,
	  dlls/wineps.drv/afm2c.c, dlls/wineps.drv/bitblt.c,
	  dlls/wineps.drv/bitmap.c, dlls/wineps.drv/brush.c,
	  dlls/wineps.drv/builtin.c, dlls/wineps.drv/clipping.c,
	  dlls/wineps.drv/color.c, dlls/wineps.drv/data/AvantGarde_Book.c,
	  dlls/wineps.drv/data/AvantGarde_BookOblique.c,
	  dlls/wineps.drv/data/AvantGarde_Demi.c,
	  dlls/wineps.drv/data/AvantGarde_DemiOblique.c,
	  dlls/wineps.drv/data/Bookman_Demi.c,
	  dlls/wineps.drv/data/Bookman_DemiItalic.c,
	  dlls/wineps.drv/data/Bookman_Light.c,
	  dlls/wineps.drv/data/Bookman_LightItalic.c,
	  dlls/wineps.drv/data/COPYRIGHTS, dlls/wineps.drv/data/Courier.c,
	  dlls/wineps.drv/data/Courier_Bold.c,
	  dlls/wineps.drv/data/Courier_BoldOblique.c,
	  dlls/wineps.drv/data/Courier_Oblique.c,
	  dlls/wineps.drv/data/Helvetica.c,
	  dlls/wineps.drv/data/Helvetica_Bold.c,
	  dlls/wineps.drv/data/Helvetica_BoldOblique.c,
	  dlls/wineps.drv/data/Helvetica_Narrow.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_Bold.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_BoldOblique.c,
	  dlls/wineps.drv/data/Helvetica_Narrow_Oblique.c,
	  dlls/wineps.drv/data/Helvetica_Oblique.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Bold.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_BoldItalic.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Italic.c,
	  dlls/wineps.drv/data/NewCenturySchlbk_Roman.c,
	  dlls/wineps.drv/data/Palatino_Bold.c,
	  dlls/wineps.drv/data/Palatino_BoldItalic.c,
	  dlls/wineps.drv/data/Palatino_Italic.c,
	  dlls/wineps.drv/data/Palatino_Roman.c, dlls/wineps.drv/data/Symbol.c,
	  dlls/wineps.drv/data/Times_Bold.c,
	  dlls/wineps.drv/data/Times_BoldItalic.c,
	  dlls/wineps.drv/data/Times_Italic.c,
	  dlls/wineps.drv/data/Times_Roman.c,
	  dlls/wineps.drv/data/ZapfChancery_MediumItalic.c,
	  dlls/wineps.drv/data/ZapfDingbats.c, dlls/wineps.drv/data/agl.c,
	  dlls/wineps.drv/data/agl.h, dlls/wineps.drv/download.c,
	  dlls/wineps.drv/driver.c, dlls/wineps.drv/encode.c,
	  dlls/wineps.drv/escape.c, dlls/wineps.drv/font.c,
	  dlls/wineps.drv/generic.ppd, dlls/wineps.drv/glyphlist.c,
	  dlls/wineps.drv/graphics.c, dlls/wineps.drv/init.c,
	  dlls/wineps.drv/mkagl.c, dlls/wineps.drv/objects.c,
	  dlls/wineps.drv/pen.c, dlls/wineps.drv/ppd.c, dlls/wineps.drv/ps.c,
	  dlls/wineps.drv/psdlg.h, dlls/wineps.drv/psdrv.h,
	  dlls/wineps.drv/rsrc.rc, dlls/wineps.drv/text.c,
	  dlls/wineps.drv/truetype.c, dlls/wineps.drv/type1.c,
	  dlls/wineps.drv/type1afm.c, dlls/wineps.drv/type42.c,
	  dlls/wineps.drv/wineps.drv.spec, dlls/wineps.drv/wineps16.drv.spec,
	  dlls/wineps.drv/wps_Bg.rc, dlls/wineps.drv/wps_Cs.rc,
	  dlls/wineps.drv/wps_De.rc, dlls/wineps.drv/wps_En.rc,
	  dlls/wineps.drv/wps_Es.rc, dlls/wineps.drv/wps_Fr.rc,
	  dlls/wineps.drv/wps_Hu.rc, dlls/wineps.drv/wps_It.rc,
	  dlls/wineps.drv/wps_Ja.rc, dlls/wineps.drv/wps_Ko.rc,
	  dlls/wineps.drv/wps_Nl.rc, dlls/wineps.drv/wps_No.rc,
	  dlls/wineps.drv/wps_Pt.rc, dlls/wineps.drv/wps_Ru.rc,
	  dlls/wineps.drv/wps_Si.rc, dlls/wineps.drv/wps_Sk.rc,
	  dlls/wineps.drv/wps_Tr.rc, dlls/wineps.drv/wps_xx.rc,
	  dlls/wineps/.gitignore, dlls/wineps/Makefile.in, dlls/wineps/afm.c,
	  dlls/wineps/afm2c.c, dlls/wineps/bitblt.c, dlls/wineps/bitmap.c,
	  dlls/wineps/brush.c, dlls/wineps/builtin.c, dlls/wineps/clipping.c,
	  dlls/wineps/color.c, dlls/wineps/data/AvantGarde_Book.c,
	  dlls/wineps/data/AvantGarde_BookOblique.c,
	  dlls/wineps/data/AvantGarde_Demi.c,
	  dlls/wineps/data/AvantGarde_DemiOblique.c,
	  dlls/wineps/data/Bookman_Demi.c,
	  dlls/wineps/data/Bookman_DemiItalic.c,
	  dlls/wineps/data/Bookman_Light.c,
	  dlls/wineps/data/Bookman_LightItalic.c, dlls/wineps/data/COPYRIGHTS,
	  dlls/wineps/data/Courier.c, dlls/wineps/data/Courier_Bold.c,
	  dlls/wineps/data/Courier_BoldOblique.c,
	  dlls/wineps/data/Courier_Oblique.c, dlls/wineps/data/Helvetica.c,
	  dlls/wineps/data/Helvetica_Bold.c,
	  dlls/wineps/data/Helvetica_BoldOblique.c,
	  dlls/wineps/data/Helvetica_Narrow.c,
	  dlls/wineps/data/Helvetica_Narrow_Bold.c,
	  dlls/wineps/data/Helvetica_Narrow_BoldOblique.c,
	  dlls/wineps/data/Helvetica_Narrow_Oblique.c,
	  dlls/wineps/data/Helvetica_Oblique.c,
	  dlls/wineps/data/NewCenturySchlbk_Bold.c,
	  dlls/wineps/data/NewCenturySchlbk_BoldItalic.c,
	  dlls/wineps/data/NewCenturySchlbk_Italic.c,
	  dlls/wineps/data/NewCenturySchlbk_Roman.c,
	  dlls/wineps/data/Palatino_Bold.c,
	  dlls/wineps/data/Palatino_BoldItalic.c,
	  dlls/wineps/data/Palatino_Italic.c,
	  dlls/wineps/data/Palatino_Roman.c, dlls/wineps/data/Symbol.c,
	  dlls/wineps/data/Times_Bold.c, dlls/wineps/data/Times_BoldItalic.c,
	  dlls/wineps/data/Times_Italic.c, dlls/wineps/data/Times_Roman.c,
	  dlls/wineps/data/ZapfChancery_MediumItalic.c,
	  dlls/wineps/data/ZapfDingbats.c, dlls/wineps/data/agl.c,
	  dlls/wineps/data/agl.h, dlls/wineps/download.c, dlls/wineps/driver.c,
	  dlls/wineps/encode.c, dlls/wineps/escape.c, dlls/wineps/font.c,
	  dlls/wineps/generic.ppd, dlls/wineps/glyphlist.c,
	  dlls/wineps/graphics.c, dlls/wineps/init.c, dlls/wineps/mkagl.c,
	  dlls/wineps/objects.c, dlls/wineps/pen.c, dlls/wineps/ppd.c,
	  dlls/wineps/ps.c, dlls/wineps/psdlg.h, dlls/wineps/psdrv.h,
	  dlls/wineps/rsrc.rc, dlls/wineps/text.c, dlls/wineps/truetype.c,
	  dlls/wineps/type1.c, dlls/wineps/type1afm.c, dlls/wineps/type42.c,
	  dlls/wineps/wineps.drv.spec, dlls/wineps/wineps16.drv.spec,
	  dlls/wineps/wps_Bg.rc, dlls/wineps/wps_Cs.rc, dlls/wineps/wps_De.rc,
	  dlls/wineps/wps_En.rc, dlls/wineps/wps_Es.rc, dlls/wineps/wps_Fr.rc,
	  dlls/wineps/wps_Hu.rc, dlls/wineps/wps_It.rc, dlls/wineps/wps_Ja.rc,
	  dlls/wineps/wps_Ko.rc, dlls/wineps/wps_Nl.rc, dlls/wineps/wps_No.rc,
	  dlls/wineps/wps_Pt.rc, dlls/wineps/wps_Ru.rc, dlls/wineps/wps_Si.rc,
	  dlls/wineps/wps_Sk.rc, dlls/wineps/wps_Tr.rc, dlls/wineps/wps_xx.rc:
	wineps: Renamed the directory to wineps.drv.

	* configure, configure.ac, dlls/Makefile.in, dlls/msisys.ocx/.gitignore,
	  dlls/msisys.ocx/Makefile.in, dlls/msisys.ocx/msisys.c,
	  dlls/msisys.ocx/msisys.ocx.spec, dlls/msisys/.gitignore,
	  dlls/msisys/Makefile.in, dlls/msisys/msisys.c,
	  dlls/msisys/msisys.ocx.spec:
	msisys: Renamed the directory to msisys.ocx.

2006-05-18  Jonathan Ernst <jonathan@ernstfamily.ch>

	* COPYING.LIB, LICENSE, aclocal.m4, dlls/activeds/activeds_main.c,
	  dlls/advapi32/advapi.c, dlls/advapi32/crypt.c, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/crypt_des.c,
	  dlls/advapi32/crypt_lmhash.c, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/crypt_md5.c, dlls/advapi32/crypt_sha.c,
	  dlls/advapi32/eventlog.c, dlls/advapi32/lsa.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c, dlls/advapi32/tests/crypt.c,
	  dlls/advapi32/tests/crypt_lmhash.c, dlls/advapi32/tests/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md5.c, dlls/advapi32/tests/crypt_sha.c,
	  dlls/advapi32/tests/lsa.c, dlls/advapi32/tests/registry.c,
	  dlls/advapi32/tests/security.c, dlls/advpack/advpack.c,
	  dlls/advpack/advpack_private.h, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c,
	  dlls/advpack/tests/advpack.c, dlls/advpack/tests/files.c,
	  dlls/advpack/tests/install.c, dlls/amstream/amstream.c,
	  dlls/amstream/amstream_private.h, dlls/amstream/main.c,
	  dlls/amstream/mediastream.c, dlls/amstream/regsvr.c,
	  dlls/amstream/version.rc, dlls/atl/atl_main.c, dlls/atl/atlbase.h,
	  dlls/atl/atliface.idl, dlls/atl/registrar.c, dlls/atl/rsrc.rc,
	  dlls/avicap32/avicap32_main.c, dlls/avifil32/acmstream.c,
	  dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/avifile_Cs.rc, dlls/avifil32/avifile_De.rc,
	  dlls/avifil32/avifile_En.rc, dlls/avifil32/avifile_Es.rc,
	  dlls/avifil32/avifile_Fr.rc, dlls/avifil32/avifile_Hu.rc,
	  dlls/avifil32/avifile_It.rc, dlls/avifil32/avifile_Ja.rc,
	  dlls/avifil32/avifile_Ko.rc, dlls/avifil32/avifile_Nl.rc,
	  dlls/avifil32/avifile_No.rc, dlls/avifil32/avifile_Pl.rc,
	  dlls/avifil32/avifile_Pt.rc, dlls/avifil32/avifile_Ru.rc,
	  dlls/avifil32/avifile_Si.rc, dlls/avifil32/avifile_Tr.rc,
	  dlls/avifil32/avifile_private.h, dlls/avifil32/editstream.c,
	  dlls/avifil32/extrachunk.c, dlls/avifil32/extrachunk.h,
	  dlls/avifil32/factory.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/regsvr.c,
	  dlls/avifil32/rsrc.rc, dlls/avifil32/tmpfile.c,
	  dlls/avifil32/wavfile.c, dlls/cabinet/cabinet.h,
	  dlls/cabinet/cabinet.rc, dlls/cabinet/cabinet_main.c,
	  dlls/cabinet/fci.c, dlls/cabinet/fdi.c, dlls/cabinet/tests/extract.c,
	  dlls/capi2032/cap20wxx.c, dlls/capi2032/cap20wxx.h,
	  dlls/cards/cards.c, dlls/cards/cards.h, dlls/cards/cards.rc,
	  dlls/cards/version.rc, dlls/cfgmgr32/main.c,
	  dlls/comcat/comcat_main.c, dlls/comcat/comcat_private.h,
	  dlls/comcat/factory.c, dlls/comcat/information.c,
	  dlls/comcat/manager.c, dlls/comcat/register.c, dlls/comcat/regsvr.c,
	  dlls/comcat/version.rc, dlls/comctl32/animate.c,
	  dlls/comctl32/comboex.c, dlls/comctl32/comctl32.h,
	  dlls/comctl32/comctl32undoc.c, dlls/comctl32/comctl_Bg.rc,
	  dlls/comctl32/comctl_Cn.rc, dlls/comctl32/comctl_Cs.rc,
	  dlls/comctl32/comctl_De.rc, dlls/comctl32/comctl_En.rc,
	  dlls/comctl32/comctl_Eo.rc, dlls/comctl32/comctl_Es.rc,
	  dlls/comctl32/comctl_Fr.rc, dlls/comctl32/comctl_Hu.rc,
	  dlls/comctl32/comctl_It.rc, dlls/comctl32/comctl_Ja.rc,
	  dlls/comctl32/comctl_Ko.rc, dlls/comctl32/comctl_Nl.rc,
	  dlls/comctl32/comctl_No.rc, dlls/comctl32/comctl_Pl.rc,
	  dlls/comctl32/comctl_Pt.rc, dlls/comctl32/comctl_Ru.rc,
	  dlls/comctl32/comctl_Si.rc, dlls/comctl32/comctl_Sv.rc,
	  dlls/comctl32/comctl_Th.rc, dlls/comctl32/comctl_Tr.rc,
	  dlls/comctl32/comctl_Uk.rc, dlls/comctl32/commctrl.c,
	  dlls/comctl32/datetime.c, dlls/comctl32/dpa.c,
	  dlls/comctl32/draglist.c, dlls/comctl32/dsa.c,
	  dlls/comctl32/flatsb.c, dlls/comctl32/header.c,
	  dlls/comctl32/hotkey.c, dlls/comctl32/imagelist.c,
	  dlls/comctl32/imagelist.h, dlls/comctl32/ipaddress.c,
	  dlls/comctl32/listview.c, dlls/comctl32/monthcal.c,
	  dlls/comctl32/nativefont.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/rsrc.rc,
	  dlls/comctl32/smoothscroll.c, dlls/comctl32/status.c,
	  dlls/comctl32/string.c, dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/dpa.c,
	  dlls/comctl32/tests/header.c, dlls/comctl32/tests/imagelist.c,
	  dlls/comctl32/tests/monthcal.c, dlls/comctl32/tests/mru.c,
	  dlls/comctl32/tests/progress.c, dlls/comctl32/tests/propsheet.c,
	  dlls/comctl32/tests/propsheet.rc, dlls/comctl32/tests/subclass.c,
	  dlls/comctl32/tests/tab.c, dlls/comctl32/tests/toolbar.c,
	  dlls/comctl32/tests/tooltips.c, dlls/comctl32/tests/treeview.c,
	  dlls/comctl32/tests/updown.c, dlls/comctl32/theme_combo.c,
	  dlls/comctl32/theme_dialog.c, dlls/comctl32/theme_edit.c,
	  dlls/comctl32/theme_listbox.c, dlls/comctl32/theming.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/comdlg32/cdlg.h, dlls/comdlg32/cdlg16.h,
	  dlls/comdlg32/cdlg32.c, dlls/comdlg32/cdlg_Bg.rc,
	  dlls/comdlg32/cdlg_Ca.rc, dlls/comdlg32/cdlg_Cn.rc,
	  dlls/comdlg32/cdlg_Cs.rc, dlls/comdlg32/cdlg_Da.rc,
	  dlls/comdlg32/cdlg_De.rc, dlls/comdlg32/cdlg_En.rc,
	  dlls/comdlg32/cdlg_Eo.rc, dlls/comdlg32/cdlg_Es.rc,
	  dlls/comdlg32/cdlg_Fi.rc, dlls/comdlg32/cdlg_Fr.rc,
	  dlls/comdlg32/cdlg_Hu.rc, dlls/comdlg32/cdlg_It.rc,
	  dlls/comdlg32/cdlg_Ja.rc, dlls/comdlg32/cdlg_Ko.rc,
	  dlls/comdlg32/cdlg_Nl.rc, dlls/comdlg32/cdlg_No.rc,
	  dlls/comdlg32/cdlg_Pl.rc, dlls/comdlg32/cdlg_Pt.rc,
	  dlls/comdlg32/cdlg_Ru.rc, dlls/comdlg32/cdlg_Si.rc,
	  dlls/comdlg32/cdlg_Sk.rc, dlls/comdlg32/cdlg_Sv.rc,
	  dlls/comdlg32/cdlg_Th.rc, dlls/comdlg32/cdlg_Tr.rc,
	  dlls/comdlg32/cdlg_Uk.rc, dlls/comdlg32/cdlg_Wa.rc,
	  dlls/comdlg32/cdlg_Zh.rc, dlls/comdlg32/cdlg_xx.rc,
	  dlls/comdlg32/colordlg.c, dlls/comdlg32/colordlg16.c,
	  dlls/comdlg32/filedlg.c, dlls/comdlg32/filedlg16.c,
	  dlls/comdlg32/filedlg31.c, dlls/comdlg32/filedlg31.h,
	  dlls/comdlg32/filedlgbrowser.c, dlls/comdlg32/filedlgbrowser.h,
	  dlls/comdlg32/filetitle.c, dlls/comdlg32/finddlg.c,
	  dlls/comdlg32/finddlg32.c, dlls/comdlg32/fontdlg.c,
	  dlls/comdlg32/fontdlg16.c, dlls/comdlg32/printdlg.c,
	  dlls/comdlg32/printdlg.h, dlls/comdlg32/printdlg16.c,
	  dlls/comdlg32/rsrc.rc, dlls/crtdll/crtdll_main.c,
	  dlls/crypt32/cert.c, dlls/crypt32/crypt32.rc,
	  dlls/crypt32/crypt32_De.rc, dlls/crypt32/crypt32_En.rc,
	  dlls/crypt32/crypt32_Ko.rc, dlls/crypt32/crypt32_No.rc,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/cryptres.h,
	  dlls/crypt32/decode.c, dlls/crypt32/encode.c, dlls/crypt32/main.c,
	  dlls/crypt32/oid.c, dlls/crypt32/proplist.c,
	  dlls/crypt32/protectdata.c, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c, dlls/crypt32/str.c, dlls/crypt32/tests/cert.c,
	  dlls/crypt32/tests/encode.c, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/oid.c, dlls/crypt32/tests/protectdata.c,
	  dlls/crypt32/tests/store.c, dlls/crypt32/tests/str.c,
	  dlls/crypt32/version.rc, dlls/cryptdll/cryptdll.c,
	  dlls/ctl3d32/ctl3d.c, dlls/ctl3d32/ctl3d32.c,
	  dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/d3d8_main.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/surface.c, dlls/d3d8/swapchain.c,
	  dlls/d3d8/tests/device.c, dlls/d3d8/texture.c, dlls/d3d8/version.rc,
	  dlls/d3d8/vertexbuffer.c, dlls/d3d8/vertexshader.c,
	  dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c,
	  dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_main.c, dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/resource.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/surface.c, dlls/d3d9/swapchain.c,
	  dlls/d3d9/tests/device.c, dlls/d3d9/tests/shader.c,
	  dlls/d3d9/tests/stateblock.c, dlls/d3d9/tests/vertexdeclaration.c,
	  dlls/d3d9/texture.c, dlls/d3d9/version.rc, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c,
	  dlls/d3d9/vshaderdeclaration.c, dlls/d3dim/d3dim_main.c,
	  dlls/d3dim/version.rc, dlls/d3drm/d3drm_main.c,
	  dlls/d3drm/version.rc, dlls/d3dx8/d3dx8_main.c,
	  dlls/d3dx8/d3dx8core_private.h, dlls/d3dx8/d3dxbuffer.c,
	  dlls/d3dxof/d3dxof.c, dlls/d3dxof/d3dxof_private.h,
	  dlls/d3dxof/main.c, dlls/d3dxof/regsvr.c, dlls/d3dxof/version.rc,
	  dlls/dbghelp/coff.c, dlls/dbghelp/dbghelp.c,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/elf_module.c, dlls/dbghelp/image.c,
	  dlls/dbghelp/memory.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h,
	  dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/source.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/stack.c, dlls/dbghelp/storage.c,
	  dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, dlls/dbghelp/wdbgexts.h,
	  dlls/dciman32/dciman_main.c, dlls/ddraw/clipper.c,
	  dlls/ddraw/d3d_private.h, dlls/ddraw/d3d_utils.c,
	  dlls/ddraw/ddcomimpl.h, dlls/ddraw/ddraw_hal.c,
	  dlls/ddraw/ddraw_main.c, dlls/ddraw/ddraw_private.h,
	  dlls/ddraw/ddraw_thunks.c, dlls/ddraw/ddraw_user.c,
	  dlls/ddraw/ddraw_utils.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/direct3d_main.c,
	  dlls/ddraw/direct3d_opengl.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/gl_api.h, dlls/ddraw/gl_private.h, dlls/ddraw/light.c,
	  dlls/ddraw/main.c, dlls/ddraw/material.c,
	  dlls/ddraw/opengl_private.h, dlls/ddraw/opengl_utils.c,
	  dlls/ddraw/palette_hal.c, dlls/ddraw/palette_main.c,
	  dlls/ddraw/regsvr.c, dlls/ddraw/surface_dib.c,
	  dlls/ddraw/surface_fakezbuffer.c, dlls/ddraw/surface_gamma.c,
	  dlls/ddraw/surface_hal.c, dlls/ddraw/surface_main.c,
	  dlls/ddraw/surface_thunks.c, dlls/ddraw/surface_user.c,
	  dlls/ddraw/surface_wndproc.c, dlls/ddraw/tests/d3d.c,
	  dlls/ddraw/tests/ddrawmodes.c, dlls/ddraw/tests/dsurface.c,
	  dlls/ddraw/texture.c, dlls/ddraw/version.rc,
	  dlls/ddraw/vertexbuffer.c, dlls/ddraw/viewport.c,
	  dlls/devenum/createdevenum.c, dlls/devenum/devenum.rc,
	  dlls/devenum/devenum_main.c, dlls/devenum/devenum_private.h,
	  dlls/devenum/factory.c, dlls/devenum/mediacatenum.c,
	  dlls/devenum/parsedisplayname.c, dlls/dinput/data_formats.c,
	  dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/dinput_main.c, dlls/dinput/dinput_private.h,
	  dlls/dinput/effect_linuxinput.c, dlls/dinput/joystick_linux.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/dinput/keyboard.c,
	  dlls/dinput/mouse.c, dlls/dinput/regsvr.c,
	  dlls/dinput/tests/dinput_test.h, dlls/dinput/tests/joystick.c,
	  dlls/dinput/tests/keyboard.c, dlls/dinput/tests/mouse.c,
	  dlls/dinput/version.rc, dlls/dinput8/dinput8_main.c,
	  dlls/dinput8/version.rc, dlls/dmband/band.c, dlls/dmband/bandtrack.c,
	  dlls/dmband/dmband_main.c, dlls/dmband/dmband_private.h,
	  dlls/dmband/dmutils.c, dlls/dmband/dmutils.h, dlls/dmband/regsvr.c,
	  dlls/dmband/version.rc, dlls/dmcompos/chordmap.c,
	  dlls/dmcompos/chordmaptrack.c, dlls/dmcompos/composer.c,
	  dlls/dmcompos/dmcompos_main.c, dlls/dmcompos/dmcompos_private.h,
	  dlls/dmcompos/regsvr.c, dlls/dmcompos/signposttrack.c,
	  dlls/dmcompos/version.rc, dlls/dmime/audiopath.c,
	  dlls/dmime/dmime_main.c, dlls/dmime/dmime_private.h,
	  dlls/dmime/dmutils.c, dlls/dmime/dmutils.h, dlls/dmime/graph.c,
	  dlls/dmime/lyricstrack.c, dlls/dmime/markertrack.c,
	  dlls/dmime/paramcontroltrack.c, dlls/dmime/patterntrack.c,
	  dlls/dmime/performance.c, dlls/dmime/regsvr.c, dlls/dmime/segment.c,
	  dlls/dmime/segmentstate.c, dlls/dmime/segtriggertrack.c,
	  dlls/dmime/seqtrack.c, dlls/dmime/sysextrack.c,
	  dlls/dmime/tempotrack.c, dlls/dmime/timesigtrack.c,
	  dlls/dmime/tool.c, dlls/dmime/version.rc, dlls/dmime/wavetrack.c,
	  dlls/dmloader/classfactory.c, dlls/dmloader/container.c,
	  dlls/dmloader/debug.c, dlls/dmloader/debug.h,
	  dlls/dmloader/dmloader_main.c, dlls/dmloader/dmloader_private.h,
	  dlls/dmloader/loader.c, dlls/dmloader/loaderstream.c,
	  dlls/dmloader/regsvr.c, dlls/dmloader/version.rc,
	  dlls/dmscript/dmscript_main.c, dlls/dmscript/dmscript_private.h,
	  dlls/dmscript/regsvr.c, dlls/dmscript/script.c,
	  dlls/dmscript/scripttrack.c, dlls/dmscript/version.rc,
	  dlls/dmstyle/auditiontrack.c, dlls/dmstyle/chordtrack.c,
	  dlls/dmstyle/commandtrack.c, dlls/dmstyle/dmstyle_main.c,
	  dlls/dmstyle/dmstyle_private.h, dlls/dmstyle/dmutils.c,
	  dlls/dmstyle/dmutils.h, dlls/dmstyle/motiftrack.c,
	  dlls/dmstyle/mutetrack.c, dlls/dmstyle/regsvr.c,
	  dlls/dmstyle/style.c, dlls/dmstyle/styletrack.c,
	  dlls/dmstyle/version.rc, dlls/dmsynth/dmsynth_main.c,
	  dlls/dmsynth/dmsynth_private.h, dlls/dmsynth/regsvr.c,
	  dlls/dmsynth/synth.c, dlls/dmsynth/synthsink.c,
	  dlls/dmsynth/version.rc, dlls/dmusic/buffer.c, dlls/dmusic/clock.c,
	  dlls/dmusic/collection.c, dlls/dmusic/dmusic.c,
	  dlls/dmusic/dmusic_main.c, dlls/dmusic/dmusic_private.h,
	  dlls/dmusic/download.c, dlls/dmusic/downloadedinstrument.c,
	  dlls/dmusic/instrument.c, dlls/dmusic/port.c,
	  dlls/dmusic/portdownload.c, dlls/dmusic/regsvr.c, dlls/dmusic/thru.c,
	  dlls/dmusic/version.rc, dlls/dmusic32/dmusic32_main.c,
	  dlls/dmusic32/version.rc, dlls/dnsapi/dnsapi.h, dlls/dnsapi/main.c,
	  dlls/dnsapi/name.c, dlls/dnsapi/query.c, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/name.c, dlls/dnsapi/tests/record.c,
	  dlls/dplay/version.rc, dlls/dplayx/dpclassfactory.c,
	  dlls/dplayx/dpinit.h, dlls/dplayx/dplay.c,
	  dlls/dplayx/dplay_global.h, dlls/dplayx/dplaysp.c,
	  dlls/dplayx/dplaysp.h, dlls/dplayx/dplayx_global.c,
	  dlls/dplayx/dplayx_global.h, dlls/dplayx/dplayx_main.c,
	  dlls/dplayx/dplayx_messages.c, dlls/dplayx/dplayx_messages.h,
	  dlls/dplayx/dplayx_queue.h, dlls/dplayx/dplobby.c,
	  dlls/dplayx/lobbysp.c, dlls/dplayx/lobbysp.h,
	  dlls/dplayx/name_server.c, dlls/dplayx/name_server.h,
	  dlls/dplayx/regsvr.c, dlls/dplayx/version.rc, dlls/dpnet/address.c,
	  dlls/dpnet/client.c, dlls/dpnet/dpnet_main.c,
	  dlls/dpnet/dpnet_private.h, dlls/dpnet/peer.c, dlls/dpnet/regsvr.c,
	  dlls/dpnet/server.c, dlls/dpnet/version.rc, dlls/dpnhpast/main.c,
	  dlls/dpnhpast/version.rc, dlls/dsound/buffer.c,
	  dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_main.c, dlls/dsound/dsound_private.h,
	  dlls/dsound/duplex.c, dlls/dsound/mixer.c, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/regsvr.c, dlls/dsound/sound3d.c,
	  dlls/dsound/tests/capture.c, dlls/dsound/tests/ds3d.c,
	  dlls/dsound/tests/ds3d8.c, dlls/dsound/tests/dsound.c,
	  dlls/dsound/tests/dsound8.c, dlls/dsound/tests/dsound_test.h,
	  dlls/dsound/tests/duplex.c, dlls/dsound/tests/propset.c,
	  dlls/dsound/version.rc, dlls/dswave/dswave.c,
	  dlls/dswave/dswave_main.c, dlls/dswave/dswave_private.h,
	  dlls/dswave/regsvr.c, dlls/dswave/version.rc,
	  dlls/dxdiagn/container.c, dlls/dxdiagn/dxdiag_main.c,
	  dlls/dxdiagn/dxdiag_private.h, dlls/dxdiagn/provider.c,
	  dlls/dxdiagn/regsvr.c, dlls/dxdiagn/version.rc, dlls/dxerr8/dxerr8.c,
	  dlls/dxerr9/dxerr9.c, dlls/dxguid/dx8guid.c, dlls/dxguid/dx9guid.c,
	  dlls/dxguid/dxguid.c, dlls/gdi/bidi.c, dlls/gdi/bidi16.c,
	  dlls/gdi/bitblt.c, dlls/gdi/bitmap.c, dlls/gdi/brush.c,
	  dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/dib.c,
	  dlls/gdi/dispdib.c, dlls/gdi/driver.c, dlls/gdi/enhmetafile.c,
	  dlls/gdi/enhmfdrv/bitblt.c, dlls/gdi/enhmfdrv/dc.c,
	  dlls/gdi/enhmfdrv/enhmetafiledrv.h, dlls/gdi/enhmfdrv/graphics.c,
	  dlls/gdi/enhmfdrv/init.c, dlls/gdi/enhmfdrv/mapping.c,
	  dlls/gdi/enhmfdrv/objects.c, dlls/gdi/env.c, dlls/gdi/font.c,
	  dlls/gdi/freetype.c, dlls/gdi/gdi16.c, dlls/gdi/gdi_main.c,
	  dlls/gdi/gdi_private.h, dlls/gdi/gdiobj.c, dlls/gdi/icm.c,
	  dlls/gdi/mapping.c, dlls/gdi/metafile.c, dlls/gdi/metafile16.c,
	  dlls/gdi/mfdrv/bitblt.c, dlls/gdi/mfdrv/dc.c,
	  dlls/gdi/mfdrv/graphics.c, dlls/gdi/mfdrv/init.c,
	  dlls/gdi/mfdrv/mapping.c, dlls/gdi/mfdrv/metafiledrv.h,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/mfdrv/text.c, dlls/gdi/painting.c,
	  dlls/gdi/palette.c, dlls/gdi/path.c, dlls/gdi/pen.c,
	  dlls/gdi/printdrv.c, dlls/gdi/region.c, dlls/gdi/tests/bitmap.c,
	  dlls/gdi/tests/brush.c, dlls/gdi/tests/clipping.c,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/font.c, dlls/gdi/tests/gdiobj.c,
	  dlls/gdi/tests/mapping.c, dlls/gdi/tests/metafile.c,
	  dlls/gdi/tests/palette.c, dlls/gdi/tests/pen.c, dlls/gdi/version.rc,
	  dlls/gdi/version16.rc, dlls/gdi/wing.c, dlls/glu32/glu.c,
	  dlls/glut32/glut.c, dlls/gphoto2.ds/capability.c,
	  dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_En.rc, dlls/gphoto2.ds/gphoto2_Fr.rc,
	  dlls/gphoto2.ds/gphoto2_Nl.rc, dlls/gphoto2.ds/gphoto2_i.h,
	  dlls/gphoto2.ds/gphoto2_main.c, dlls/gphoto2.ds/resource.h,
	  dlls/gphoto2.ds/rsrc.rc, dlls/gphoto2.ds/ui.c, dlls/hhctrl.ocx/Cs.rc,
	  dlls/hhctrl.ocx/De.rc, dlls/hhctrl.ocx/En.rc, dlls/hhctrl.ocx/Fi.rc,
	  dlls/hhctrl.ocx/Hu.rc, dlls/hhctrl.ocx/Ko.rc, dlls/hhctrl.ocx/Nl.rc,
	  dlls/hhctrl.ocx/No.rc, dlls/hhctrl.ocx/Tr.rc, dlls/hhctrl.ocx/chm.c,
	  dlls/hhctrl.ocx/chm.h, dlls/hhctrl.ocx/help.c,
	  dlls/hhctrl.ocx/hhctrl.c, dlls/hhctrl.ocx/hhctrl.rc,
	  dlls/hhctrl.ocx/main.c, dlls/hhctrl.ocx/regsvr.c,
	  dlls/hhctrl.ocx/resource.h, dlls/hhctrl.ocx/version.rc,
	  dlls/hhctrl.ocx/webbrowser.c, dlls/hhctrl.ocx/webbrowser.h,
	  dlls/iccvid/iccvid.c, dlls/iccvid/iccvid_De.rc,
	  dlls/iccvid/iccvid_En.rc, dlls/iccvid/iccvid_Fr.rc,
	  dlls/iccvid/iccvid_Hu.rc, dlls/iccvid/iccvid_Ko.rc,
	  dlls/iccvid/iccvid_No.rc, dlls/iccvid/iccvid_Tr.rc,
	  dlls/iccvid/iccvid_private.h, dlls/iccvid/rsrc.rc,
	  dlls/icmp/icmp_main.c, dlls/ifsmgr.vxd/ifsmgr.c,
	  dlls/imaadp32.acm/imaadp32.c, dlls/imagehlp/access.c,
	  dlls/imagehlp/imagehlp_main.c, dlls/imagehlp/integrity.c,
	  dlls/imagehlp/internal.c, dlls/imagehlp/modify.c, dlls/imm32/imm.c,
	  dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h, dlls/iphlpapi/tests/iphlpapi.c,
	  dlls/itss/itss.c, dlls/itss/itsstor.h, dlls/itss/moniker.c,
	  dlls/itss/regsvr.c, dlls/itss/storage.c, dlls/kernel/actctx.c,
	  dlls/kernel/atom.c, dlls/kernel/atom16.c, dlls/kernel/change.c,
	  dlls/kernel/comm.c, dlls/kernel/computername.c,
	  dlls/kernel/console.c, dlls/kernel/console_private.h,
	  dlls/kernel/cpu.c, dlls/kernel/debugger.c, dlls/kernel/dosmem.c,
	  dlls/kernel/editline.c, dlls/kernel/environ.c, dlls/kernel/error16.c,
	  dlls/kernel/except.c, dlls/kernel/fiber.c, dlls/kernel/file.c,
	  dlls/kernel/file16.c, dlls/kernel/format_msg.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/instr.c,
	  dlls/kernel/kernel.rc, dlls/kernel/kernel16.c,
	  dlls/kernel/kernel16_private.h, dlls/kernel/kernel_main.c,
	  dlls/kernel/kernel_private.h, dlls/kernel/lcformat.c,
	  dlls/kernel/local16.c, dlls/kernel/locale.c,
	  dlls/kernel/locale_rc.rc, dlls/kernel/lzexpand.c,
	  dlls/kernel/messages/winerr_enu.mc, dlls/kernel/module.c,
	  dlls/kernel/ne_module.c, dlls/kernel/ne_segment.c,
	  dlls/kernel/nls/afk.nls, dlls/kernel/nls/ara.nls,
	  dlls/kernel/nls/arb.nls, dlls/kernel/nls/are.nls,
	  dlls/kernel/nls/arg.nls, dlls/kernel/nls/arh.nls,
	  dlls/kernel/nls/ari.nls, dlls/kernel/nls/arj.nls,
	  dlls/kernel/nls/ark.nls, dlls/kernel/nls/arl.nls,
	  dlls/kernel/nls/arm.nls, dlls/kernel/nls/aro.nls,
	  dlls/kernel/nls/arq.nls, dlls/kernel/nls/ars.nls,
	  dlls/kernel/nls/art.nls, dlls/kernel/nls/aru.nls,
	  dlls/kernel/nls/ary.nls, dlls/kernel/nls/aze.nls,
	  dlls/kernel/nls/azl.nls, dlls/kernel/nls/bel.nls,
	  dlls/kernel/nls/bgr.nls, dlls/kernel/nls/brf.nls,
	  dlls/kernel/nls/cat.nls, dlls/kernel/nls/chs.nls,
	  dlls/kernel/nls/cht.nls, dlls/kernel/nls/cor.nls,
	  dlls/kernel/nls/csy.nls, dlls/kernel/nls/cym.nls,
	  dlls/kernel/nls/dan.nls, dlls/kernel/nls/dea.nls,
	  dlls/kernel/nls/dec.nls, dlls/kernel/nls/del.nls,
	  dlls/kernel/nls/des.nls, dlls/kernel/nls/deu.nls,
	  dlls/kernel/nls/div.nls, dlls/kernel/nls/ell.nls,
	  dlls/kernel/nls/ena.nls, dlls/kernel/nls/enb.nls,
	  dlls/kernel/nls/enc.nls, dlls/kernel/nls/eng.nls,
	  dlls/kernel/nls/eni.nls, dlls/kernel/nls/enj.nls,
	  dlls/kernel/nls/enl.nls, dlls/kernel/nls/enp.nls,
	  dlls/kernel/nls/ens.nls, dlls/kernel/nls/ent.nls,
	  dlls/kernel/nls/enu.nls, dlls/kernel/nls/enw.nls,
	  dlls/kernel/nls/enz.nls, dlls/kernel/nls/eox.nls,
	  dlls/kernel/nls/esa.nls, dlls/kernel/nls/esb.nls,
	  dlls/kernel/nls/esc.nls, dlls/kernel/nls/esd.nls,
	  dlls/kernel/nls/ese.nls, dlls/kernel/nls/esf.nls,
	  dlls/kernel/nls/esg.nls, dlls/kernel/nls/esh.nls,
	  dlls/kernel/nls/esi.nls, dlls/kernel/nls/esl.nls,
	  dlls/kernel/nls/esm.nls, dlls/kernel/nls/esn.nls,
	  dlls/kernel/nls/eso.nls, dlls/kernel/nls/esp.nls,
	  dlls/kernel/nls/esr.nls, dlls/kernel/nls/ess.nls,
	  dlls/kernel/nls/esu.nls, dlls/kernel/nls/esv.nls,
	  dlls/kernel/nls/esy.nls, dlls/kernel/nls/esz.nls,
	  dlls/kernel/nls/eti.nls, dlls/kernel/nls/euq.nls,
	  dlls/kernel/nls/far.nls, dlls/kernel/nls/fin.nls,
	  dlls/kernel/nls/fos.nls, dlls/kernel/nls/fra.nls,
	  dlls/kernel/nls/frb.nls, dlls/kernel/nls/frc.nls,
	  dlls/kernel/nls/frl.nls, dlls/kernel/nls/frm.nls,
	  dlls/kernel/nls/frs.nls, dlls/kernel/nls/gae.nls,
	  dlls/kernel/nls/gdh.nls, dlls/kernel/nls/gdv.nls,
	  dlls/kernel/nls/glc.nls, dlls/kernel/nls/guj.nls,
	  dlls/kernel/nls/heb.nls, dlls/kernel/nls/hin.nls,
	  dlls/kernel/nls/hrv.nls, dlls/kernel/nls/hun.nls,
	  dlls/kernel/nls/hye.nls, dlls/kernel/nls/ind.nls,
	  dlls/kernel/nls/isl.nls, dlls/kernel/nls/ita.nls,
	  dlls/kernel/nls/its.nls, dlls/kernel/nls/jpn.nls,
	  dlls/kernel/nls/kan.nls, dlls/kernel/nls/kat.nls,
	  dlls/kernel/nls/kkz.nls, dlls/kernel/nls/knk.nls,
	  dlls/kernel/nls/kor.nls, dlls/kernel/nls/kyr.nls,
	  dlls/kernel/nls/lth.nls, dlls/kernel/nls/lvi.nls,
	  dlls/kernel/nls/mar.nls, dlls/kernel/nls/mki.nls,
	  dlls/kernel/nls/mon.nls, dlls/kernel/nls/msb.nls,
	  dlls/kernel/nls/msl.nls, dlls/kernel/nls/nlb.nls,
	  dlls/kernel/nls/nld.nls, dlls/kernel/nls/nls.nls,
	  dlls/kernel/nls/non.nls, dlls/kernel/nls/nor.nls,
	  dlls/kernel/nls/pan.nls, dlls/kernel/nls/plk.nls,
	  dlls/kernel/nls/ptb.nls, dlls/kernel/nls/ptg.nls,
	  dlls/kernel/nls/rom.nls, dlls/kernel/nls/rus.nls,
	  dlls/kernel/nls/san.nls, dlls/kernel/nls/sky.nls,
	  dlls/kernel/nls/slv.nls, dlls/kernel/nls/sqi.nls,
	  dlls/kernel/nls/srb.nls, dlls/kernel/nls/srl.nls,
	  dlls/kernel/nls/sve.nls, dlls/kernel/nls/svf.nls,
	  dlls/kernel/nls/swk.nls, dlls/kernel/nls/syr.nls,
	  dlls/kernel/nls/tam.nls, dlls/kernel/nls/tel.nls,
	  dlls/kernel/nls/tha.nls, dlls/kernel/nls/trk.nls,
	  dlls/kernel/nls/ttt.nls, dlls/kernel/nls/ukr.nls,
	  dlls/kernel/nls/urd.nls, dlls/kernel/nls/uzb.nls,
	  dlls/kernel/nls/uzl.nls, dlls/kernel/nls/vit.nls,
	  dlls/kernel/nls/wal.nls, dlls/kernel/nls/zhh.nls,
	  dlls/kernel/nls/zhi.nls, dlls/kernel/nls/zhm.nls,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/powermgnt.c,
	  dlls/kernel/process.c, dlls/kernel/profile.c, dlls/kernel/pthread.c,
	  dlls/kernel/registry16.c, dlls/kernel/relay16.c,
	  dlls/kernel/resource.c, dlls/kernel/resource16.c,
	  dlls/kernel/selector.c, dlls/kernel/snoop16.c, dlls/kernel/stress.c,
	  dlls/kernel/string.c, dlls/kernel/sync.c, dlls/kernel/syslevel.c,
	  dlls/kernel/system.c, dlls/kernel/tape.c, dlls/kernel/task.c,
	  dlls/kernel/tests/alloc.c, dlls/kernel/tests/atom.c,
	  dlls/kernel/tests/change.c, dlls/kernel/tests/codepage.c,
	  dlls/kernel/tests/comm.c, dlls/kernel/tests/console.c,
	  dlls/kernel/tests/directory.c, dlls/kernel/tests/drive.c,
	  dlls/kernel/tests/environ.c, dlls/kernel/tests/file.c,
	  dlls/kernel/tests/format_msg.c, dlls/kernel/tests/heap.c,
	  dlls/kernel/tests/locale.c, dlls/kernel/tests/mailslot.c,
	  dlls/kernel/tests/module.c, dlls/kernel/tests/path.c,
	  dlls/kernel/tests/pipe.c, dlls/kernel/tests/process.c,
	  dlls/kernel/tests/profile.c, dlls/kernel/tests/sync.c,
	  dlls/kernel/tests/thread.c, dlls/kernel/tests/time.c,
	  dlls/kernel/tests/timer.c, dlls/kernel/tests/toolhelp.c,
	  dlls/kernel/tests/virtual.c, dlls/kernel/tests/volume.c,
	  dlls/kernel/thread.c, dlls/kernel/thunk.c, dlls/kernel/time.c,
	  dlls/kernel/toolhelp.c, dlls/kernel/toolhelp.h,
	  dlls/kernel/toolhelp16.c, dlls/kernel/utthunk.c,
	  dlls/kernel/version.c, dlls/kernel/version.rc,
	  dlls/kernel/version16.rc, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/kernel/vxd.c, dlls/kernel/win87em.c,
	  dlls/kernel/windebug.c, dlls/kernel/wowthunk.c,
	  dlls/lz32/lzexpand16.c, dlls/lz32/tests/lzexpand_main.c,
	  dlls/make_dlls, dlls/mapi32/imalloc.c, dlls/mapi32/mapi32_main.c,
	  dlls/mapi32/prop.c, dlls/mapi32/sendmail.c,
	  dlls/mapi32/tests/imalloc.c, dlls/mapi32/tests/prop.c,
	  dlls/mapi32/tests/util.c, dlls/mapi32/util.c, dlls/mciavi32/info.c,
	  dlls/mciavi32/mciavi.c, dlls/mciavi32/mciavi_res.rc,
	  dlls/mciavi32/mmoutput.c, dlls/mciavi32/private_mciavi.h,
	  dlls/mciavi32/wnd.c, dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c,
	  dlls/mciwave/mciwave.c, dlls/midimap/midimap.c, dlls/mlang/mlang.c,
	  dlls/mlang/regsvr.c, dlls/mlang/tests/mlang.c,
	  dlls/mmdevldr.vxd/mmdevldr.c, dlls/monodebg.vxd/monodebg.c,
	  dlls/mpr/auth.c, dlls/mpr/mpr.rc, dlls/mpr/mpr_Bg.rc,
	  dlls/mpr/mpr_Cs.rc, dlls/mpr/mpr_De.rc, dlls/mpr/mpr_En.rc,
	  dlls/mpr/mpr_Eo.rc, dlls/mpr/mpr_Es.rc, dlls/mpr/mpr_Fr.rc,
	  dlls/mpr/mpr_Hu.rc, dlls/mpr/mpr_It.rc, dlls/mpr/mpr_Ja.rc,
	  dlls/mpr/mpr_Ko.rc, dlls/mpr/mpr_Nl.rc, dlls/mpr/mpr_No.rc,
	  dlls/mpr/mpr_Pt.rc, dlls/mpr/mpr_Tr.rc, dlls/mpr/mpr_main.c,
	  dlls/mpr/mprres.h, dlls/mpr/multinet.c, dlls/mpr/netspi.h,
	  dlls/mpr/nps.c, dlls/mpr/pwcache.c, dlls/mpr/version.rc,
	  dlls/mpr/wnet.c, dlls/mpr/wnetpriv.h, dlls/mprapi/mprapi.c,
	  dlls/msacm32.drv/wavemap.c, dlls/msacm32/driver.c,
	  dlls/msacm32/filter.c, dlls/msacm32/format.c,
	  dlls/msacm32/internal.c, dlls/msacm32/msacm.rc,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_Cs.rc,
	  dlls/msacm32/msacm_De.rc, dlls/msacm32/msacm_En.rc,
	  dlls/msacm32/msacm_Es.rc, dlls/msacm32/msacm_Fr.rc,
	  dlls/msacm32/msacm_Hu.rc, dlls/msacm32/msacm_It.rc,
	  dlls/msacm32/msacm_Ja.rc, dlls/msacm32/msacm_Ko.rc,
	  dlls/msacm32/msacm_Nl.rc, dlls/msacm32/msacm_No.rc,
	  dlls/msacm32/msacm_Pl.rc, dlls/msacm32/msacm_Pt.rc,
	  dlls/msacm32/msacm_Tr.rc, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c,
	  dlls/msacm32/tests/msacm.c, dlls/msacm32/wineacm.h,
	  dlls/msadp32.acm/msadp32.c, dlls/mscms/handle.c, dlls/mscms/icc.c,
	  dlls/mscms/mscms_main.c, dlls/mscms/mscms_priv.h,
	  dlls/mscms/profile.c, dlls/mscms/stub.c, dlls/mscms/tests/profile.c,
	  dlls/mscms/transform.c, dlls/mscms/version.rc, dlls/msdmo/dmoreg.c,
	  dlls/msdmo/dmort.c, dlls/msdmo/rsrc.rc, dlls/msg711.acm/msg711.c,
	  dlls/mshtml/Bg.rc, dlls/mshtml/De.rc, dlls/mshtml/En.rc,
	  dlls/mshtml/Fi.rc, dlls/mshtml/Fr.rc, dlls/mshtml/Hu.rc,
	  dlls/mshtml/Ko.rc, dlls/mshtml/Nl.rc, dlls/mshtml/No.rc,
	  dlls/mshtml/Tr.rc, dlls/mshtml/conpoint.c, dlls/mshtml/hlink.c,
	  dlls/mshtml/htmlbody.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/htmldoc3.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/htmltextcont.c,
	  dlls/mshtml/main.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/nsservice.c,
	  dlls/mshtml/oleobj.c, dlls/mshtml/olewnd.c, dlls/mshtml/persist.c,
	  dlls/mshtml/protocol.c, dlls/mshtml/resource.h, dlls/mshtml/rsrc.rc,
	  dlls/mshtml/service.c, dlls/mshtml/tests/htmldoc.c,
	  dlls/mshtml/tests/protocol.c, dlls/mshtml/view.c, dlls/msi/action.c,
	  dlls/msi/action.h, dlls/msi/appsearch.c, dlls/msi/classes.c,
	  dlls/msi/cond.y, dlls/msi/create.c, dlls/msi/custom.c,
	  dlls/msi/database.c, dlls/msi/delete.c, dlls/msi/dialog.c,
	  dlls/msi/distinct.c, dlls/msi/events.c, dlls/msi/files.c,
	  dlls/msi/format.c, dlls/msi/handle.c, dlls/msi/helpers.c,
	  dlls/msi/insert.c, dlls/msi/install.c, dlls/msi/msi.c,
	  dlls/msi/msi.rc, dlls/msi/msi_Bg.rc, dlls/msi/msi_De.rc,
	  dlls/msi/msi_En.rc, dlls/msi/msi_Eo.rc, dlls/msi/msi_Es.rc,
	  dlls/msi/msi_Fi.rc, dlls/msi/msi_Fr.rc, dlls/msi/msi_Hu.rc,
	  dlls/msi/msi_It.rc, dlls/msi/msi_Ko.rc, dlls/msi/msi_Nl.rc,
	  dlls/msi/msi_No.rc, dlls/msi/msi_Pt.rc, dlls/msi/msi_Tr.rc,
	  dlls/msi/msipriv.h, dlls/msi/msiquery.c, dlls/msi/order.c,
	  dlls/msi/package.c, dlls/msi/preview.c, dlls/msi/query.h,
	  dlls/msi/record.c, dlls/msi/registry.c, dlls/msi/regsvr.c,
	  dlls/msi/select.c, dlls/msi/source.c, dlls/msi/sql.y,
	  dlls/msi/string.c, dlls/msi/suminfo.c, dlls/msi/table.c,
	  dlls/msi/tests/db.c, dlls/msi/tests/format.c, dlls/msi/tests/msi.c,
	  dlls/msi/tests/package.c, dlls/msi/tests/record.c,
	  dlls/msi/tests/suminfo.c, dlls/msi/update.c, dlls/msi/upgrade.c,
	  dlls/msi/version.rc, dlls/msi/where.c, dlls/msimg32/msimg32_main.c,
	  dlls/msisys/msisys.c, dlls/msnet32/msnet_main.c,
	  dlls/msrle32/msrle32.c, dlls/msrle32/msrle_Bg.rc,
	  dlls/msrle32/msrle_Cs.rc, dlls/msrle32/msrle_De.rc,
	  dlls/msrle32/msrle_En.rc, dlls/msrle32/msrle_Es.rc,
	  dlls/msrle32/msrle_Fr.rc, dlls/msrle32/msrle_Hu.rc,
	  dlls/msrle32/msrle_It.rc, dlls/msrle32/msrle_Ja.rc,
	  dlls/msrle32/msrle_Ko.rc, dlls/msrle32/msrle_Nl.rc,
	  dlls/msrle32/msrle_No.rc, dlls/msrle32/msrle_Pt.rc,
	  dlls/msrle32/msrle_Ru.rc, dlls/msrle32/msrle_Si.rc,
	  dlls/msrle32/msrle_Tr.rc, dlls/msrle32/msrle_private.h,
	  dlls/msrle32/rsrc.rc, dlls/msvcrt/console.c, dlls/msvcrt/cpp.c,
	  dlls/msvcrt/cppexcept.c, dlls/msvcrt/cppexcept.h,
	  dlls/msvcrt/ctype.c, dlls/msvcrt/data.c, dlls/msvcrt/dir.c,
	  dlls/msvcrt/environ.c, dlls/msvcrt/errno.c, dlls/msvcrt/except.c,
	  dlls/msvcrt/exit.c, dlls/msvcrt/file.c, dlls/msvcrt/heap.c,
	  dlls/msvcrt/locale.c, dlls/msvcrt/lock.c, dlls/msvcrt/main.c,
	  dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/misc.c,
	  dlls/msvcrt/msvcrt.h, dlls/msvcrt/mtdll.h, dlls/msvcrt/process.c,
	  dlls/msvcrt/rsrc.rc, dlls/msvcrt/scanf.c, dlls/msvcrt/scanf.h,
	  dlls/msvcrt/string.c, dlls/msvcrt/tests/cpp.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/environ.c,
	  dlls/msvcrt/tests/file.c, dlls/msvcrt/tests/headers.c,
	  dlls/msvcrt/tests/heap.c, dlls/msvcrt/tests/printf.c,
	  dlls/msvcrt/tests/scanf.c, dlls/msvcrt/tests/string.c,
	  dlls/msvcrt/tests/time.c, dlls/msvcrt/thread.c, dlls/msvcrt/time.c,
	  dlls/msvcrt/undname.c, dlls/msvcrt/wcs.c, dlls/msvcrt20/msvcrt20.c,
	  dlls/msvcrtd/debug.c, dlls/msvcrtd/tests/debug.c,
	  dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvfw32_De.rc, dlls/msvfw32/msvfw32_En.rc,
	  dlls/msvfw32/msvfw32_Fr.rc, dlls/msvfw32/msvfw32_Hu.rc,
	  dlls/msvfw32/msvfw32_Ko.rc, dlls/msvfw32/msvfw32_No.rc,
	  dlls/msvfw32/msvfw32_Tr.rc, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/msvfw32/msvideo_private.h,
	  dlls/msvfw32/rsrc.rc, dlls/msvfw32/vfw16.h,
	  dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/msvidc32_Hu.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/msvidc32_No.rc,
	  dlls/msvidc32/msvidc32_Tr.rc, dlls/msvidc32/msvidc32_private.h,
	  dlls/msvidc32/msvideo1.c, dlls/msvidc32/rsrc.rc,
	  dlls/mswsock/mswsock.c, dlls/mswsock/version.rc,
	  dlls/msxml3/attribute.c, dlls/msxml3/comment.c, dlls/msxml3/domdoc.c,
	  dlls/msxml3/element.c, dlls/msxml3/factory.c, dlls/msxml3/main.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c, dlls/msxml3/tests/domdoc.c,
	  dlls/msxml3/text.c, dlls/netapi32/access.c, dlls/netapi32/apibuf.c,
	  dlls/netapi32/browsr.c, dlls/netapi32/ds.c,
	  dlls/netapi32/nbcmdqueue.c, dlls/netapi32/nbcmdqueue.h,
	  dlls/netapi32/nbnamecache.c, dlls/netapi32/nbnamecache.h,
	  dlls/netapi32/nbt.c, dlls/netapi32/netapi32.c,
	  dlls/netapi32/netapi32_misc.h, dlls/netapi32/netbios.c,
	  dlls/netapi32/netbios.h, dlls/netapi32/share.c,
	  dlls/netapi32/tests/access.c, dlls/netapi32/tests/apibuf.c,
	  dlls/netapi32/tests/ds.c, dlls/netapi32/tests/wksta.c,
	  dlls/netapi32/wksta.c, dlls/newdev/main.c, dlls/ntdll/atom.c,
	  dlls/ntdll/cdrom.c, dlls/ntdll/critsection.c,
	  dlls/ntdll/debugbuffer.c, dlls/ntdll/debugtools.c,
	  dlls/ntdll/directory.c, dlls/ntdll/env.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/large_int.c, dlls/ntdll/loader.c,
	  dlls/ntdll/loadorder.c, dlls/ntdll/misc.c, dlls/ntdll/nt.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c, dlls/ntdll/path.c,
	  dlls/ntdll/process.c, dlls/ntdll/reg.c, dlls/ntdll/relay.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlbitmap.c,
	  dlls/ntdll/rtlstr.c, dlls/ntdll/sec.c, dlls/ntdll/serial.c,
	  dlls/ntdll/server.c, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/string.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tape.c, dlls/ntdll/tests/atom.c,
	  dlls/ntdll/tests/change.c, dlls/ntdll/tests/env.c,
	  dlls/ntdll/tests/error.c, dlls/ntdll/tests/exception.c,
	  dlls/ntdll/tests/info.c, dlls/ntdll/tests/large_int.c,
	  dlls/ntdll/tests/ntdll_test.h, dlls/ntdll/tests/om.c,
	  dlls/ntdll/tests/path.c, dlls/ntdll/tests/port.c,
	  dlls/ntdll/tests/reg.c, dlls/ntdll/tests/rtl.c,
	  dlls/ntdll/tests/rtlbitmap.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/tests/string.c, dlls/ntdll/tests/time.c,
	  dlls/ntdll/thread.c, dlls/ntdll/threadpool.c, dlls/ntdll/time.c,
	  dlls/ntdll/version.c, dlls/ntdll/virtual.c, dlls/ntdll/wcstring.c,
	  dlls/ntdsapi/ntdsapi.c, dlls/objsel/factory.c, dlls/objsel/objsel.c,
	  dlls/objsel/objsel.rc, dlls/objsel/objsel_private.h,
	  dlls/objsel/regsvr.c, dlls/odbc32/proxyodbc.c,
	  dlls/odbc32/proxyodbc.h, dlls/odbccp32/odbccp32.c,
	  dlls/ole32/antimoniker.c, dlls/ole32/bindctx.c,
	  dlls/ole32/classmoniker.c, dlls/ole32/clipboard.c,
	  dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/compositemoniker.c, dlls/ole32/datacache.c,
	  dlls/ole32/dcom.idl, dlls/ole32/defaulthandler.c,
	  dlls/ole32/dictionary.c, dlls/ole32/dictionary.h,
	  dlls/ole32/errorinfo.c, dlls/ole32/filemoniker.c,
	  dlls/ole32/ftmarshal.c, dlls/ole32/git.c, dlls/ole32/hglobalstream.c,
	  dlls/ole32/ifs.c, dlls/ole32/ifs.h, dlls/ole32/itemmoniker.c,
	  dlls/ole32/marshal.c, dlls/ole32/memlockbytes.c,
	  dlls/ole32/memlockbytes16.c, dlls/ole32/moniker.c,
	  dlls/ole32/ole16.c, dlls/ole32/ole2.c, dlls/ole32/ole2_16.c,
	  dlls/ole32/ole2impl.c, dlls/ole32/ole2nls.c, dlls/ole32/ole2stubs.c,
	  dlls/ole32/ole32_main.c, dlls/ole32/ole32res.rc, dlls/ole32/oleobj.c,
	  dlls/ole32/oleproxy.c, dlls/ole32/olestd.h, dlls/ole32/regsvr.c,
	  dlls/ole32/rpc.c, dlls/ole32/stg_bigblockfile.c,
	  dlls/ole32/stg_prop.c, dlls/ole32/stg_stream.c, dlls/ole32/storage.c,
	  dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/stubmanager.c, dlls/ole32/tests/clipboard.c,
	  dlls/ole32/tests/compobj.c, dlls/ole32/tests/marshal.c,
	  dlls/ole32/tests/moniker.c, dlls/ole32/tests/propvariant.c,
	  dlls/ole32/tests/stg_prop.c, dlls/ole32/tests/storage32.c,
	  dlls/ole32/usrmarshal.c, dlls/ole32/version.rc, dlls/oleacc/main.c,
	  dlls/oleaut32/connpt.c, dlls/oleaut32/connpt.h,
	  dlls/oleaut32/dispatch.c, dlls/oleaut32/hash.c,
	  dlls/oleaut32/ole2disp.c, dlls/oleaut32/ole2disp.h,
	  dlls/oleaut32/oleaut.c, dlls/oleaut32/oleaut32.rc,
	  dlls/oleaut32/oleaut32_Bg.rc, dlls/oleaut32/oleaut32_Cz.rc,
	  dlls/oleaut32/oleaut32_De.rc, dlls/oleaut32/oleaut32_Dk.rc,
	  dlls/oleaut32/oleaut32_En.rc, dlls/oleaut32/oleaut32_Eo.rc,
	  dlls/oleaut32/oleaut32_Es.rc, dlls/oleaut32/oleaut32_Fr.rc,
	  dlls/oleaut32/oleaut32_Hu.rc, dlls/oleaut32/oleaut32_It.rc,
	  dlls/oleaut32/oleaut32_Ko.rc, dlls/oleaut32/oleaut32_Nl.rc,
	  dlls/oleaut32/oleaut32_No.rc, dlls/oleaut32/oleaut32_Pl.rc,
	  dlls/oleaut32/oleaut32_Pt.rc, dlls/oleaut32/oleaut32_Ru.rc,
	  dlls/oleaut32/oleaut32_Sv.rc, dlls/oleaut32/oleaut32_Th.rc,
	  dlls/oleaut32/oleaut32_Tr.rc, dlls/oleaut32/olefont.c,
	  dlls/oleaut32/olepicture.c, dlls/oleaut32/recinfo.c,
	  dlls/oleaut32/regsvr.c, dlls/oleaut32/resource.h,
	  dlls/oleaut32/safearray.c, dlls/oleaut32/stubs.c,
	  dlls/oleaut32/tests/olefont.c, dlls/oleaut32/tests/olepicture.c,
	  dlls/oleaut32/tests/safearray.c, dlls/oleaut32/tests/typelib.c,
	  dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/tests/vartest.c,
	  dlls/oleaut32/tests/vartype.c, dlls/oleaut32/tmarshal.c,
	  dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h,
	  dlls/oleaut32/typelib16.c, dlls/oleaut32/typelib2.c,
	  dlls/oleaut32/usrmarshal.c, dlls/oleaut32/varformat.c,
	  dlls/oleaut32/variant.c, dlls/oleaut32/variant.h,
	  dlls/oleaut32/vartype.c, dlls/oleaut32/version.rc,
	  dlls/olecli32/olecli16.c, dlls/olecli32/olecli_main.c,
	  dlls/oledlg/insobjdlg.c, dlls/oledlg/oledlg_Cs.rc,
	  dlls/oledlg/oledlg_De.rc, dlls/oledlg/oledlg_En.rc,
	  dlls/oledlg/oledlg_Es.rc, dlls/oledlg/oledlg_Fr.rc,
	  dlls/oledlg/oledlg_Hu.rc, dlls/oledlg/oledlg_It.rc,
	  dlls/oledlg/oledlg_Ja.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/oledlg/oledlg_Nl.rc, dlls/oledlg/oledlg_No.rc,
	  dlls/oledlg/oledlg_Pt.rc, dlls/oledlg/oledlg_Tr.rc,
	  dlls/oledlg/oledlg_main.c, dlls/oledlg/resource.h,
	  dlls/oledlg/rsrc.rc, dlls/olepro32/olepro32stubs.c,
	  dlls/olesvr32/olesvr_main.c, dlls/opengl32/make_opengl,
	  dlls/opengl32/opengl_ext.h, dlls/opengl32/version.rc,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/opengl32/wgl_ext.h, dlls/powrprof/powrprof.c,
	  dlls/psapi/psapi_main.c, dlls/psapi/tests/psapi_main.c,
	  dlls/qcap/capture.h, dlls/qcap/capturegraph.c, dlls/qcap/dllsetup.c,
	  dlls/qcap/dllsetup.h, dlls/qcap/enummedia.c, dlls/qcap/enumpins.c,
	  dlls/qcap/pin.c, dlls/qcap/pin.h, dlls/qcap/qcap_main.c,
	  dlls/qcap/qcap_main.h, dlls/qcap/v4l.c, dlls/qcap/version.rc,
	  dlls/qcap/vfwcapture.c, dlls/qcap/yuv.c, dlls/quartz/acmwrapper.c,
	  dlls/quartz/avidec.c, dlls/quartz/avisplit.c, dlls/quartz/control.c,
	  dlls/quartz/control_private.h, dlls/quartz/dsoundrender.c,
	  dlls/quartz/enumfilters.c, dlls/quartz/enummedia.c,
	  dlls/quartz/enummoniker.c, dlls/quartz/enumpins.c,
	  dlls/quartz/enumregfilters.c, dlls/quartz/filesource.c,
	  dlls/quartz/filtergraph.c, dlls/quartz/filtermapper.c,
	  dlls/quartz/fourcc.h, dlls/quartz/main.c, dlls/quartz/memallocator.c,
	  dlls/quartz/parser.c, dlls/quartz/parser.h, dlls/quartz/pin.c,
	  dlls/quartz/pin.h, dlls/quartz/quartz_private.h,
	  dlls/quartz/regsvr.c, dlls/quartz/systemclock.c,
	  dlls/quartz/tests/filtergraph.c, dlls/quartz/tests/memallocator.c,
	  dlls/quartz/transform.c, dlls/quartz/transform.h,
	  dlls/quartz/version.rc, dlls/quartz/videorenderer.c,
	  dlls/quartz/waveparser.c, dlls/rasapi32/rasapi.c,
	  dlls/riched20/caret.c, dlls/riched20/clipboard.c,
	  dlls/riched20/context.c, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/list.c, dlls/riched20/paint.c, dlls/riched20/para.c,
	  dlls/riched20/reader.c, dlls/riched20/richole.c, dlls/riched20/row.c,
	  dlls/riched20/run.c, dlls/riched20/string.c, dlls/riched20/style.c,
	  dlls/riched20/tests/editor.c, dlls/riched20/txtsrv.c,
	  dlls/riched20/undo.c, dlls/riched20/version.rc, dlls/riched20/wrap.c,
	  dlls/riched20/writer.c, dlls/riched32/richedit.c,
	  dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h,
	  dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_marshall.c,
	  dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_ole.c, dlls/rpcrt4/ndr_stubless.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_epmap.c,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_message.h,
	  dlls/rpcrt4/rpc_misc.h, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_server.h, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/rpcrt4_main.c, dlls/rpcrt4/rpcss_np_client.c,
	  dlls/rpcrt4/rpcss_np_client.h, dlls/rpcrt4/tests/ndr_marshall.c,
	  dlls/rpcrt4/tests/rpc.c, dlls/rsabase/tests/rsabase.c,
	  dlls/rsaenh/des.c, dlls/rsaenh/handle.c, dlls/rsaenh/handle.h,
	  dlls/rsaenh/implglue.c, dlls/rsaenh/implglue.h, dlls/rsaenh/md2.c,
	  dlls/rsaenh/mpi.c, dlls/rsaenh/rc2.c, dlls/rsaenh/rc4.c,
	  dlls/rsaenh/rsa.c, dlls/rsaenh/rsaenh.c, dlls/rsaenh/tests/rsaenh.c,
	  dlls/rsaenh/tomcrypt.h, dlls/sane.ds/capability.c,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/resource.h, dlls/sane.ds/rsrc.rc,
	  dlls/sane.ds/sane_De.rc, dlls/sane.ds/sane_En.rc,
	  dlls/sane.ds/sane_Fi.rc, dlls/sane.ds/sane_Fr.rc,
	  dlls/sane.ds/sane_Ko.rc, dlls/sane.ds/sane_Nl.rc,
	  dlls/sane.ds/sane_No.rc, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  dlls/secur32/base64_codec.c, dlls/secur32/dispatcher.c,
	  dlls/secur32/negotiate.c, dlls/secur32/ntlm.c,
	  dlls/secur32/schannel.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/main.c,
	  dlls/secur32/thunks.c, dlls/secur32/thunks.h, dlls/secur32/wrapper.c,
	  dlls/sensapi/sensapi.c, dlls/serialui/Bg.rc, dlls/serialui/Cs.rc,
	  dlls/serialui/De.rc, dlls/serialui/En.rc, dlls/serialui/Eo.rc,
	  dlls/serialui/Es.rc, dlls/serialui/Fi.rc, dlls/serialui/Fr.rc,
	  dlls/serialui/Hu.rc, dlls/serialui/It.rc, dlls/serialui/Ja.rc,
	  dlls/serialui/Ko.rc, dlls/serialui/Nl.rc, dlls/serialui/No.rc,
	  dlls/serialui/Pt.rc, dlls/serialui/Ru.rc, dlls/serialui/Tr.rc,
	  dlls/serialui/confdlg.c, dlls/serialui/serialui.h,
	  dlls/serialui/serialui_rc.rc, dlls/setupapi/Bg.rc,
	  dlls/setupapi/Cs.rc, dlls/setupapi/De.rc, dlls/setupapi/En.rc,
	  dlls/setupapi/Eo.rc, dlls/setupapi/Es.rc, dlls/setupapi/Fi.rc,
	  dlls/setupapi/Fr.rc, dlls/setupapi/Hu.rc, dlls/setupapi/It.rc,
	  dlls/setupapi/Ja.rc, dlls/setupapi/Ko.rc, dlls/setupapi/Nl.rc,
	  dlls/setupapi/No.rc, dlls/setupapi/Pl.rc, dlls/setupapi/Pt.rc,
	  dlls/setupapi/Ru.rc, dlls/setupapi/Sv.rc, dlls/setupapi/Tr.rc,
	  dlls/setupapi/devinst.c, dlls/setupapi/devinst16.c,
	  dlls/setupapi/dirid.c, dlls/setupapi/diskspace.c,
	  dlls/setupapi/fakedll.c, dlls/setupapi/infparse.c,
	  dlls/setupapi/install.c, dlls/setupapi/misc.c,
	  dlls/setupapi/parser.c, dlls/setupapi/query.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi.rc, dlls/setupapi/setupapi_private.h,
	  dlls/setupapi/setupcab.c, dlls/setupapi/setupx16.h,
	  dlls/setupapi/setupx_main.c, dlls/setupapi/stringtable.c,
	  dlls/setupapi/stubs.c, dlls/setupapi/tests/parser.c,
	  dlls/setupapi/tests/query.c, dlls/setupapi/tests/stringtable.c,
	  dlls/setupapi/virtcopy.c, dlls/sfc/sfc_main.c, dlls/shdocvw/Bg.rc,
	  dlls/shdocvw/De.rc, dlls/shdocvw/En.rc, dlls/shdocvw/Es.rc,
	  dlls/shdocvw/Fi.rc, dlls/shdocvw/Fr.rc, dlls/shdocvw/Hu.rc,
	  dlls/shdocvw/Ko.rc, dlls/shdocvw/Nl.rc, dlls/shdocvw/No.rc,
	  dlls/shdocvw/Pt.rc, dlls/shdocvw/Tr.rc, dlls/shdocvw/classinfo.c,
	  dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/factory.c, dlls/shdocvw/frame.c, dlls/shdocvw/ie.c,
	  dlls/shdocvw/iexplore.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/persist.c,
	  dlls/shdocvw/regsvr.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw.rc, dlls/shdocvw/shdocvw_main.c,
	  dlls/shdocvw/shlinstobj.c, dlls/shdocvw/tests/shortcut.c,
	  dlls/shdocvw/version.rc, dlls/shdocvw/view.c,
	  dlls/shdocvw/webbrowser.c, dlls/shell32/autocomplete.c,
	  dlls/shell32/brsfolder.c, dlls/shell32/changenotify.c,
	  dlls/shell32/classes.c, dlls/shell32/clipboard.c,
	  dlls/shell32/control.c, dlls/shell32/cpanel.h,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/dataobject.c,
	  dlls/shell32/dde.c, dlls/shell32/debughlp.c, dlls/shell32/debughlp.h,
	  dlls/shell32/dialogs.c, dlls/shell32/dragdrophelper.c,
	  dlls/shell32/enumidlist.c, dlls/shell32/enumidlist.h,
	  dlls/shell32/folders.c, dlls/shell32/iconcache.c,
	  dlls/shell32/pidl.c, dlls/shell32/pidl.h, dlls/shell32/regsvr.c,
	  dlls/shell32/shell.c, dlls/shell32/shell32_Bg.rc,
	  dlls/shell32/shell32_Ca.rc, dlls/shell32/shell32_Cn.rc,
	  dlls/shell32/shell32_Cs.rc, dlls/shell32/shell32_Da.rc,
	  dlls/shell32/shell32_De.rc, dlls/shell32/shell32_En.rc,
	  dlls/shell32/shell32_Eo.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_Hu.rc, dlls/shell32/shell32_It.rc,
	  dlls/shell32/shell32_Ja.rc, dlls/shell32/shell32_Ko.rc,
	  dlls/shell32/shell32_Nl.rc, dlls/shell32/shell32_No.rc,
	  dlls/shell32/shell32_Pl.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shell32/shell32_Ru.rc, dlls/shell32/shell32_Si.rc,
	  dlls/shell32/shell32_Sk.rc, dlls/shell32/shell32_Sv.rc,
	  dlls/shell32/shell32_Tr.rc, dlls/shell32/shell32_Uk.rc,
	  dlls/shell32/shell32_Wa.rc, dlls/shell32/shell32_Zh.rc,
	  dlls/shell32/shell32_main.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shell32_xx.rc, dlls/shell32/shellfolder.h,
	  dlls/shell32/shelllink.c, dlls/shell32/shellole.c,
	  dlls/shell32/shellord.c, dlls/shell32/shellpath.c,
	  dlls/shell32/shellreg.c, dlls/shell32/shellstring.c,
	  dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shfldr_mycomp.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlexec.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/shlfsbind.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/shlview.c, dlls/shell32/shpolicy.c,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h,
	  dlls/shell32/shv_bg_cmenu.c, dlls/shell32/shv_item_cmenu.c,
	  dlls/shell32/systray.c, dlls/shell32/tests/shell32_test.h,
	  dlls/shell32/tests/shelllink.c, dlls/shell32/tests/shellpath.c,
	  dlls/shell32/tests/shlexec.c, dlls/shell32/tests/shlfileop.c,
	  dlls/shell32/tests/shlfolder.c, dlls/shell32/tests/string.c,
	  dlls/shell32/undocshell.h, dlls/shell32/version.h,
	  dlls/shell32/version.rc, dlls/shell32/version16.rc,
	  dlls/shlwapi/assoc.c, dlls/shlwapi/clist.c, dlls/shlwapi/istream.c,
	  dlls/shlwapi/msgbox.c, dlls/shlwapi/ordinal.c, dlls/shlwapi/path.c,
	  dlls/shlwapi/reg.c, dlls/shlwapi/regstream.c,
	  dlls/shlwapi/resource.h, dlls/shlwapi/shlwapi.rc,
	  dlls/shlwapi/shlwapi_De.rc, dlls/shlwapi/shlwapi_En.rc,
	  dlls/shlwapi/shlwapi_Eo.rc, dlls/shlwapi/shlwapi_Es.rc,
	  dlls/shlwapi/shlwapi_Fi.rc, dlls/shlwapi/shlwapi_Fr.rc,
	  dlls/shlwapi/shlwapi_Hu.rc, dlls/shlwapi/shlwapi_It.rc,
	  dlls/shlwapi/shlwapi_Ja.rc, dlls/shlwapi/shlwapi_Ko.rc,
	  dlls/shlwapi/shlwapi_Nl.rc, dlls/shlwapi/shlwapi_No.rc,
	  dlls/shlwapi/shlwapi_Pt.rc, dlls/shlwapi/shlwapi_Tr.rc,
	  dlls/shlwapi/shlwapi_main.c, dlls/shlwapi/stopwatch.c,
	  dlls/shlwapi/string.c, dlls/shlwapi/tests/clist.c,
	  dlls/shlwapi/tests/clsid.c, dlls/shlwapi/tests/ordinal.c,
	  dlls/shlwapi/tests/path.c, dlls/shlwapi/tests/shreg.c,
	  dlls/shlwapi/tests/string.c, dlls/shlwapi/thread.c,
	  dlls/shlwapi/url.c, dlls/shlwapi/version.rc, dlls/shlwapi/wsprintf.c,
	  dlls/snmpapi/main.c, dlls/spoolss/spoolss_main.c,
	  dlls/stdole2.tlb/rsrc.rc, dlls/stdole2.tlb/std_ole_v2.idl,
	  dlls/stdole32.tlb/rsrc.rc, dlls/stdole32.tlb/std_ole_v1.idl,
	  dlls/sti/sti_main.c, dlls/strmiids/strmiids.c,
	  dlls/tapi32/assisted.c, dlls/tapi32/line.c, dlls/tapi32/phone.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/twain16_main.c,
	  dlls/twain_32/twain32_main.c, dlls/twain_32/twain_i.h,
	  dlls/url/url_main.c, dlls/urlmon/binding.c, dlls/urlmon/file.c,
	  dlls/urlmon/format.c, dlls/urlmon/ftp.c, dlls/urlmon/http.c,
	  dlls/urlmon/internet.c, dlls/urlmon/regsvr.c, dlls/urlmon/rsrc.rc,
	  dlls/urlmon/sec_mgr.c, dlls/urlmon/session.c,
	  dlls/urlmon/tests/misc.c, dlls/urlmon/tests/protocol.c,
	  dlls/urlmon/tests/url.c, dlls/urlmon/umon.c, dlls/urlmon/umstream.c,
	  dlls/urlmon/urlmon_main.c, dlls/urlmon/urlmon_main.h,
	  dlls/urlmon/version.rc, dlls/user/bidi16.c, dlls/user/button.c,
	  dlls/user/caret.c, dlls/user/class.c, dlls/user/clipboard.c,
	  dlls/user/combo.c, dlls/user/comm16.c, dlls/user/controls.h,
	  dlls/user/cursoricon.c, dlls/user/dde_client.c, dlls/user/dde_misc.c,
	  dlls/user/dde_private.h, dlls/user/dde_server.c, dlls/user/ddeml16.c,
	  dlls/user/defdlg.c, dlls/user/defwnd.c, dlls/user/desktop.c,
	  dlls/user/dialog.c, dlls/user/dialog16.c, dlls/user/display.c,
	  dlls/user/driver.c, dlls/user/driver16.c, dlls/user/edit.c,
	  dlls/user/exticon.c, dlls/user/focus.c, dlls/user/hook.c,
	  dlls/user/hook16.c, dlls/user/icontitle.c, dlls/user/input.c,
	  dlls/user/kbd16.c, dlls/user/listbox.c, dlls/user/lstr.c,
	  dlls/user/mdi.c, dlls/user/menu.c, dlls/user/message.c,
	  dlls/user/misc.c, dlls/user/mouse16.c, dlls/user/msg16.c,
	  dlls/user/msgbox.c, dlls/user/network.c, dlls/user/nonclient.c,
	  dlls/user/painting.c, dlls/user/property.c, dlls/user/resource.c,
	  dlls/user/resources/display.rc, dlls/user/resources/mouse.rc,
	  dlls/user/resources/user32.rc, dlls/user/resources/user32_Bg.rc,
	  dlls/user/resources/user32_Ca.rc, dlls/user/resources/user32_Cs.rc,
	  dlls/user/resources/user32_Da.rc, dlls/user/resources/user32_De.rc,
	  dlls/user/resources/user32_En.rc, dlls/user/resources/user32_Eo.rc,
	  dlls/user/resources/user32_Es.rc, dlls/user/resources/user32_Fi.rc,
	  dlls/user/resources/user32_Fr.rc, dlls/user/resources/user32_Hu.rc,
	  dlls/user/resources/user32_It.rc, dlls/user/resources/user32_Ja.rc,
	  dlls/user/resources/user32_Ko.rc, dlls/user/resources/user32_Nl.rc,
	  dlls/user/resources/user32_No.rc, dlls/user/resources/user32_Pl.rc,
	  dlls/user/resources/user32_Pt.rc, dlls/user/resources/user32_Ru.rc,
	  dlls/user/resources/user32_Si.rc, dlls/user/resources/user32_Sk.rc,
	  dlls/user/resources/user32_Sv.rc, dlls/user/resources/user32_Tr.rc,
	  dlls/user/resources/user32_Uk.rc, dlls/user/resources/user32_Wa.rc,
	  dlls/user/resources/user32_Zh.rc, dlls/user/resources/user32_bin.rc,
	  dlls/user/resources/version.rc, dlls/user/resources/version16.rc,
	  dlls/user/scroll.c, dlls/user/spy.c, dlls/user/static.c,
	  dlls/user/sysparams.c, dlls/user/tests/class.c,
	  dlls/user/tests/clipboard.c, dlls/user/tests/dce.c,
	  dlls/user/tests/dde.c, dlls/user/tests/dialog.c,
	  dlls/user/tests/edit.c, dlls/user/tests/input.c,
	  dlls/user/tests/listbox.c, dlls/user/tests/menu.c,
	  dlls/user/tests/monitor.c, dlls/user/tests/msg.c,
	  dlls/user/tests/resource.c, dlls/user/tests/resource.rc,
	  dlls/user/tests/sysparams.c, dlls/user/tests/text.c,
	  dlls/user/tests/win.c, dlls/user/tests/winstation.c,
	  dlls/user/tests/wsprintf.c, dlls/user/text.c, dlls/user/uitools.c,
	  dlls/user/user16.c, dlls/user/user_main.c, dlls/user/user_private.h,
	  dlls/user/win.c, dlls/user/winhelp.c, dlls/user/winpos.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/winstation.c,
	  dlls/user/wnd16.c, dlls/user/wsprintf.c, dlls/usp10/tests/usp10.c,
	  dlls/usp10/usp10.c, dlls/uuid/uuid.c, dlls/uxtheme/draw.c,
	  dlls/uxtheme/main.c, dlls/uxtheme/metric.c, dlls/uxtheme/msstyles.c,
	  dlls/uxtheme/msstyles.h, dlls/uxtheme/property.c,
	  dlls/uxtheme/stylemap.c, dlls/uxtheme/system.c, dlls/uxtheme/uxini.c,
	  dlls/uxtheme/uxthemedll.h, dlls/uxtheme/version.rc,
	  dlls/vdhcp.vxd/vdhcp.c, dlls/vdmdbg/vdmdbg.c, dlls/version/info.c,
	  dlls/version/install.c, dlls/version/resource.c,
	  dlls/version/tests/info.c, dlls/version/tests/install.c,
	  dlls/version/tests/version.rc, dlls/version/ver16.c,
	  dlls/vmm.vxd/vmm.c, dlls/vnbt.vxd/vnbt.c,
	  dlls/vnetbios.vxd/vnetbios.c, dlls/vtdapi.vxd/vtdapi.c,
	  dlls/vwin32.vxd/vwin32.c, dlls/w32skrnl/w32skernel.c,
	  dlls/w32skrnl/w32sys.c, dlls/w32skrnl/win32s16.c,
	  dlls/winecrt0/crt0_private.h, dlls/winecrt0/delay_load.c,
	  dlls/winecrt0/dll_entry.c, dlls/winecrt0/dll_main.c,
	  dlls/winecrt0/drv_entry.c, dlls/winecrt0/exe_entry.c,
	  dlls/winecrt0/exe_main.c, dlls/winecrt0/exe_wentry.c,
	  dlls/winecrt0/exe_wmain.c, dlls/winecrt0/init.c,
	  dlls/winecrt0/stub.c, dlls/wined3d/baseshader.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h, dlls/winedos/devices.c,
	  dlls/winedos/dma.c, dlls/winedos/dosaspi.c, dlls/winedos/dosconf.c,
	  dlls/winedos/dosexe.h, dlls/winedos/dosmem.c, dlls/winedos/dosvm.c,
	  dlls/winedos/dosvm.h, dlls/winedos/fpu.c, dlls/winedos/himem.c,
	  dlls/winedos/int09.c, dlls/winedos/int10.c, dlls/winedos/int11.c,
	  dlls/winedos/int13.c, dlls/winedos/int15.c, dlls/winedos/int16.c,
	  dlls/winedos/int17.c, dlls/winedos/int19.c, dlls/winedos/int1a.c,
	  dlls/winedos/int20.c, dlls/winedos/int21.c, dlls/winedos/int25.c,
	  dlls/winedos/int26.c, dlls/winedos/int29.c, dlls/winedos/int2f.c,
	  dlls/winedos/int31.c, dlls/winedos/int33.c, dlls/winedos/int41.c,
	  dlls/winedos/int5c.c, dlls/winedos/int67.c,
	  dlls/winedos/interrupts.c, dlls/winedos/ioports.c,
	  dlls/winedos/module.c, dlls/winedos/ppdev.c, dlls/winedos/relay.c,
	  dlls/winedos/soundblaster.c, dlls/winedos/timer.c,
	  dlls/winedos/vga.c, dlls/winedos/vga.h, dlls/winedos/vxd.c,
	  dlls/winedos/xms.c, dlls/winemp3.acm/common.c,
	  dlls/winemp3.acm/dct64_i386.c, dlls/winemp3.acm/decode_i386.c,
	  dlls/winemp3.acm/huffman.h, dlls/winemp3.acm/interface.c,
	  dlls/winemp3.acm/l2tables.h, dlls/winemp3.acm/layer1.c,
	  dlls/winemp3.acm/layer2.c, dlls/winemp3.acm/layer3.c,
	  dlls/winemp3.acm/mpegl3.c, dlls/winemp3.acm/mpg123.h,
	  dlls/winemp3.acm/mpglib.h, dlls/winemp3.acm/tabinit.c,
	  dlls/wineps/afm.c, dlls/wineps/afm2c.c, dlls/wineps/bitblt.c,
	  dlls/wineps/bitmap.c, dlls/wineps/brush.c, dlls/wineps/builtin.c,
	  dlls/wineps/clipping.c, dlls/wineps/color.c, dlls/wineps/download.c,
	  dlls/wineps/driver.c, dlls/wineps/encode.c, dlls/wineps/escape.c,
	  dlls/wineps/font.c, dlls/wineps/glyphlist.c, dlls/wineps/graphics.c,
	  dlls/wineps/init.c, dlls/wineps/mkagl.c, dlls/wineps/objects.c,
	  dlls/wineps/pen.c, dlls/wineps/ppd.c, dlls/wineps/ps.c,
	  dlls/wineps/psdlg.h, dlls/wineps/psdrv.h, dlls/wineps/rsrc.rc,
	  dlls/wineps/text.c, dlls/wineps/truetype.c, dlls/wineps/type1.c,
	  dlls/wineps/type1afm.c, dlls/wineps/type42.c, dlls/wineps/wps_Bg.rc,
	  dlls/wineps/wps_Cs.rc, dlls/wineps/wps_De.rc, dlls/wineps/wps_En.rc,
	  dlls/wineps/wps_Es.rc, dlls/wineps/wps_Fr.rc, dlls/wineps/wps_Hu.rc,
	  dlls/wineps/wps_It.rc, dlls/wineps/wps_Ja.rc, dlls/wineps/wps_Ko.rc,
	  dlls/wineps/wps_Nl.rc, dlls/wineps/wps_No.rc, dlls/wineps/wps_Pt.rc,
	  dlls/wineps/wps_Ru.rc, dlls/wineps/wps_Si.rc, dlls/wineps/wps_Sk.rc,
	  dlls/wineps/wps_Tr.rc, dlls/wineps/wps_xx.rc, dlls/wininet/cookie.c,
	  dlls/wininet/dialogs.c, dlls/wininet/ftp.c, dlls/wininet/gopher.c,
	  dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/netconnection.c,
	  dlls/wininet/resource.h, dlls/wininet/rsrc.rc,
	  dlls/wininet/tests/http.c, dlls/wininet/tests/internet.c,
	  dlls/wininet/tests/url.c, dlls/wininet/tests/wininet_test.h,
	  dlls/wininet/urlcache.c, dlls/wininet/utility.c,
	  dlls/wininet/version.rc, dlls/wininet/wininet_Bg.rc,
	  dlls/wininet/wininet_Cs.rc, dlls/wininet/wininet_De.rc,
	  dlls/wininet/wininet_En.rc, dlls/wininet/wininet_Eo.rc,
	  dlls/wininet/wininet_Es.rc, dlls/wininet/wininet_Fi.rc,
	  dlls/wininet/wininet_Fr.rc, dlls/wininet/wininet_Hu.rc,
	  dlls/wininet/wininet_It.rc, dlls/wininet/wininet_Ja.rc,
	  dlls/wininet/wininet_Ko.rc, dlls/wininet/wininet_Nl.rc,
	  dlls/wininet/wininet_No.rc, dlls/wininet/wininet_Pt.rc,
	  dlls/wininet/wininet_Ru.rc, dlls/wininet/wininet_Si.rc,
	  dlls/wininet/wininet_Tr.rc, dlls/wininet/wininet_main.c,
	  dlls/winmm/driver.c, dlls/winmm/joystick.c,
	  dlls/winmm/joystick/joystick.c, dlls/winmm/lolvldrv.c,
	  dlls/winmm/mci.c, dlls/winmm/message16.c, dlls/winmm/mmio.c,
	  dlls/winmm/mmsystem.c, dlls/winmm/playsound.c, dlls/winmm/sound16.c,
	  dlls/winmm/tests/capture.c, dlls/winmm/tests/mixer.c,
	  dlls/winmm/tests/mmio.c, dlls/winmm/tests/timer.c,
	  dlls/winmm/tests/wave.c, dlls/winmm/tests/winmm_test.h,
	  dlls/winmm/time.c, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winealsa/alsa.h, dlls/winmm/winealsa/audio.c,
	  dlls/winmm/winealsa/midi.c, dlls/winmm/winearts/arts.c,
	  dlls/winmm/winearts/arts.h, dlls/winmm/winearts/audio.c,
	  dlls/winmm/wineaudioio/audio.c, dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineesd/audio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/wineesd/esound.h, dlls/winmm/winejack/audio.c,
	  dlls/winmm/winejack/jack.c, dlls/winmm/winejack/jack.h,
	  dlls/winmm/winemm.h, dlls/winmm/winemm16.h,
	  dlls/winmm/winenas/audio.c, dlls/winmm/winenas/nas.c,
	  dlls/winmm/winenas/nas.h, dlls/winmm/wineoss/audio.c,
	  dlls/winmm/wineoss/audio.h, dlls/winmm/wineoss/dscapture.c,
	  dlls/winmm/wineoss/dsrender.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/midipatch.c, dlls/winmm/wineoss/mixer.c,
	  dlls/winmm/wineoss/mmaux.c, dlls/winmm/wineoss/oss.c,
	  dlls/winmm/wineoss/oss.h, dlls/winmm/winmm.c, dlls/winmm/winmm_Cs.rc,
	  dlls/winmm/winmm_De.rc, dlls/winmm/winmm_En.rc,
	  dlls/winmm/winmm_Es.rc, dlls/winmm/winmm_Fr.rc,
	  dlls/winmm/winmm_It.rc, dlls/winmm/winmm_Ja.rc,
	  dlls/winmm/winmm_Ko.rc, dlls/winmm/winmm_Nl.rc,
	  dlls/winmm/winmm_No.rc, dlls/winmm/winmm_Pt.rc,
	  dlls/winmm/winmm_Ru.rc, dlls/winmm/winmm_Si.rc,
	  dlls/winmm/winmm_Sk.rc, dlls/winmm/winmm_Tr.rc,
	  dlls/winmm/winmm_res.rc, dlls/winnls32/winnls.c, dlls/winspool/Bg.rc,
	  dlls/winspool/De.rc, dlls/winspool/En.rc, dlls/winspool/Eo.rc,
	  dlls/winspool/Fi.rc, dlls/winspool/It.rc, dlls/winspool/Ko.rc,
	  dlls/winspool/Nl.rc, dlls/winspool/Ru.rc, dlls/winspool/Tr.rc,
	  dlls/winspool/info.c, dlls/winspool/tests/info.c,
	  dlls/winspool/winspool.rc, dlls/winspool/wspool.c,
	  dlls/winspool/wspool.h, dlls/wintab32/context.c,
	  dlls/wintab32/manager.c, dlls/wintab32/wintab16.c,
	  dlls/wintab32/wintab32.c, dlls/wintab32/wintab_internal.h,
	  dlls/wintrust/version.rc, dlls/wintrust/wintrust_main.c,
	  dlls/wldap32/add.c, dlls/wldap32/ber.c, dlls/wldap32/bind.c,
	  dlls/wldap32/compare.c, dlls/wldap32/control.c,
	  dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/extended.c, dlls/wldap32/init.c, dlls/wldap32/main.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/page.c, dlls/wldap32/parse.c,
	  dlls/wldap32/rename.c, dlls/wldap32/search.c, dlls/wldap32/value.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.h,
	  dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_De.rc,
	  dlls/wldap32/wldap32_En.rc, dlls/wldap32/wldap32_Fr.rc,
	  dlls/wldap32/wldap32_Ko.rc, dlls/wldap32/wldap32_Nl.rc,
	  dlls/wldap32/wldap32_No.rc, dlls/wldap32/wldap32_Ru.rc,
	  dlls/wldap32/wldap32_Tr.rc, dlls/wnaspi32/aspi.c,
	  dlls/wnaspi32/aspi.h, dlls/wnaspi32/winaspi16.c,
	  dlls/wnaspi32/winaspi32.c, dlls/wnaspi32/winescsi.h,
	  dlls/wow32/wow_main.c, dlls/ws2_32/async.c, dlls/ws2_32/protocol.c,
	  dlls/ws2_32/socket.c, dlls/ws2_32/socket16.c,
	  dlls/ws2_32/tests/protocol.c, dlls/ws2_32/tests/sock.c,
	  dlls/ws2_32/version.rc, dlls/wsock32/protocol.c,
	  dlls/wsock32/service.c, dlls/wsock32/socket.c,
	  dlls/wsock32/version.rc, dlls/wsock32/wscontrol.h,
	  dlls/wtsapi32/wtsapi32.c, dlls/x11drv/bitblt.c, dlls/x11drv/bitmap.c,
	  dlls/x11drv/brush.c, dlls/x11drv/clipboard.c, dlls/x11drv/clipping.c,
	  dlls/x11drv/codepage.c, dlls/x11drv/dce.c, dlls/x11drv/desktop.c,
	  dlls/x11drv/dga2.c, dlls/x11drv/dga2.h, dlls/x11drv/dib.c,
	  dlls/x11drv/dib_convert.c, dlls/x11drv/dib_dst_swap.c,
	  dlls/x11drv/dib_src_swap.c, dlls/x11drv/event.c,
	  dlls/x11drv/graphics.c, dlls/x11drv/init.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/mouse.c, dlls/x11drv/mwm.h, dlls/x11drv/opengl.c,
	  dlls/x11drv/palette.c, dlls/x11drv/pen.c, dlls/x11drv/scroll.c,
	  dlls/x11drv/settings.c, dlls/x11drv/text.c, dlls/x11drv/window.c,
	  dlls/x11drv/winpos.c, dlls/x11drv/wintab.c, dlls/x11drv/x11ddraw.c,
	  dlls/x11drv/x11ddraw.h, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c, dlls/x11drv/x11font.h, dlls/x11drv/xdnd.c,
	  dlls/x11drv/xfont.c, dlls/x11drv/xim.c, dlls/x11drv/xrandr.c,
	  dlls/x11drv/xrandr.h, dlls/x11drv/xrender.c, dlls/x11drv/xvidmode.c,
	  dlls/x11drv/xvidmode.h, fonts/courier.sfd, fonts/marlett.sfd,
	  fonts/ms_sans_serif.sfd, fonts/small_fonts.sfd, fonts/system.sfd,
	  include/accctrl.h, include/aclapi.h, include/activscp.idl,
	  include/adshlp.h, include/advpub.h, include/amstream.idl,
	  include/amvideo.idl, include/appmgmt.h, include/audevcod.h,
	  include/austream.idl, include/aviriff.h, include/axcore.idl,
	  include/axextend.idl, include/basetsd.h, include/basetyps.h,
	  include/cderr.h, include/cguid.h, include/comcat.idl,
	  include/commctrl.h, include/commdlg.h, include/compobj.h,
	  include/control.idl, include/cpl.h, include/custcntl.h,
	  include/cvconst.h, include/d3d.h, include/d3d8.h, include/d3d8caps.h,
	  include/d3d8types.h, include/d3d9.h, include/d3d9caps.h,
	  include/d3d9types.h, include/d3dcaps.h, include/d3dhal.h,
	  include/d3drm.h, include/d3dtypes.h, include/d3dvec.inl,
	  include/d3dx8core.h, include/dbghelp.h, include/dbt.h,
	  include/dciddi.h, include/dciman.h, include/dde.h, include/ddeml.h,
	  include/ddk/cfgmgr32.h, include/ddk/ntddcdvd.h,
	  include/ddk/ntddser.h, include/ddk/ntddtape.h, include/ddk/wdm.h,
	  include/ddk/winsplp.h, include/ddraw.h, include/ddrawi.h,
	  include/ddstream.idl, include/devenum.idl, include/devguid.h,
	  include/digitalv.h, include/dinput.h, include/dispdib.h,
	  include/dispex.idl, include/dlgs.h, include/dls1.h, include/dls2.h,
	  include/dmdls.h, include/dmerror.h, include/dmo.h, include/dmoreg.h,
	  include/dmort.h, include/dmplugin.h, include/dmusbuff.h,
	  include/dmusicc.h, include/dmusicf.h, include/dmusici.h,
	  include/dmusics.h, include/docobj.idl, include/downloadmgr.idl,
	  include/dpaddr.h, include/dplay.h, include/dplay8.h,
	  include/dplobby.h, include/dplobby8.h, include/dpnathlp.h,
	  include/dsconf.h, include/dsdriver.h, include/dshow.h,
	  include/dsound.h, include/dsrole.h, include/dxdiag.h,
	  include/dxerr8.h, include/dxerr9.h, include/dxfile.h,
	  include/dyngraph.idl, include/errors.h, include/evcode.h,
	  include/evntrace.h, include/excpt.h, include/exdisp.idl,
	  include/exdispid.h, include/fci.h, include/fdi.h, include/gdi.h,
	  include/guiddef.h, include/heap.h, include/hlink.idl,
	  include/htmlhelp.h, include/iads.idl, include/icm.h,
	  include/icmpapi.h, include/idispids.h, include/imagehlp.h,
	  include/imm.h, include/initguid.h, include/ipexport.h,
	  include/iphlpapi.h, include/ipifcons.h, include/iprtrmib.h,
	  include/iptypes.h, include/ks.h, include/ksguid.h, include/ksmedia.h,
	  include/lm.h, include/lmaccess.h, include/lmapibuf.h,
	  include/lmbrowsr.h, include/lmcons.h, include/lmerr.h,
	  include/lmjoin.h, include/lmserver.h, include/lmshare.h,
	  include/lmstats.h, include/lmwksta.h, include/lzexpand.h,
	  include/mapi.h, include/mapicode.h, include/mapidefs.h,
	  include/mapiguid.h, include/mapitags.h, include/mapiutil.h,
	  include/mapival.h, include/mapix.h, include/mciavi.h, include/mcx.h,
	  include/mediaerr.h, include/mediaobj.idl, include/mimeinfo.idl,
	  include/minmax.h, include/mlang.idl, include/mmddk.h,
	  include/mmreg.h, include/mmstream.idl, include/mmsystem.h,
	  include/mprapi.h, include/msacm.h, include/msacmdlg.h,
	  include/msacmdrv.h, include/mscat.h, include/mshtmcid.h,
	  include/mshtmdid.h, include/mshtmhst.idl, include/mshtml.idl,
	  include/msi.h, include/msidefs.h, include/msiquery.h,
	  include/mssip.h, include/msvcrt/crtdbg.h, include/msvcrt/eh.h,
	  include/msvcrt/errno.h, include/msvcrt/locale.h,
	  include/msvcrt/malloc.h, include/msvcrt/mbctype.h,
	  include/msvcrt/mbstring.h, include/msvcrt/search.h,
	  include/msvcrt/setjmp.h, include/msvcrt/signal.h,
	  include/msvcrt/stddef.h, include/msvcrt/sys/locking.h,
	  include/msvcrt/sys/timeb.h, include/msvcrt/sys/types.h,
	  include/msvcrt/sys/utime.h, include/msvcrt/time.h,
	  include/msvcrt/wctype.h, include/mswsock.h, include/msxml.idl,
	  include/msxml2.idl, include/msxml2did.h, include/msxmldid.h,
	  include/nb30.h, include/ndrtypes.h, include/npapi.h,
	  include/nspapi.h, include/ntddcdrm.h, include/ntddscsi.h,
	  include/ntddstor.h, include/ntdsapi.h, include/ntsecapi.h,
	  include/ntstatus.h, include/oaidl.idl, include/objbase.h,
	  include/objidl.idl, include/objsafe.idl, include/ocidl.idl,
	  include/odbcinst.h, include/ole2.h, include/ole2ver.h,
	  include/oleauto.h, include/olectl.h, include/oledlg.h,
	  include/oleidl.idl, include/pktdef.h, include/poppack.h,
	  include/powrprof.h, include/propidl.idl, include/prsht.h,
	  include/psapi.h, include/pshpack1.h, include/pshpack2.h,
	  include/pshpack4.h, include/pshpack8.h, include/pstore.idl,
	  include/ras.h, include/reason.h, include/regstr.h,
	  include/richedit.h, include/richole.idl, include/rpc.h,
	  include/rpcdce.h, include/rpcdcep.h, include/rpcndr.h,
	  include/rpcnterr.h, include/rpcproxy.h, include/schannel.h,
	  include/schemadef.h, include/schnlsp.h, include/sddl.h,
	  include/secext.h, include/security.h, include/sensapi.h,
	  include/sensevts.idl, include/servprov.idl, include/setupapi.h,
	  include/sfc.h, include/shellapi.h, include/shldisp.idl,
	  include/shlguid.h, include/shlobj.h, include/shlwapi.h,
	  include/shobjidl.idl, include/shtypes.idl, include/sipbase.h,
	  include/snmp.h, include/softpub.h, include/sql.h, include/sqlext.h,
	  include/sqltypes.h, include/sspi.h, include/storage.h,
	  include/strmif.idl, include/tapi.h, include/tchar.h,
	  include/textserv.h, include/thread.h, include/tlhelp32.h,
	  include/tmschema.h, include/unknwn.idl, include/urlmon.idl,
	  include/usp10.h, include/uuids.h, include/uxtheme.h, include/ver.h,
	  include/vfw.h, include/vfwmsgs.h, include/win.h, include/winbase.h,
	  include/wincon.h, include/wincrypt.h, include/windef.h,
	  include/windns.h, include/windows.h, include/windowsx.h,
	  include/wine/debug.h, include/wine/exception.h,
	  include/wine/itss.idl, include/wine/library.h, include/wine/list.h,
	  include/wine/mmsystem16.h, include/wine/port.h,
	  include/wine/pthread.h, include/wine/rpcss_shared.h,
	  include/wine/server.h, include/wine/test.h, include/wine/unicode.h,
	  include/wine/winaspi.h, include/wine/winbase16.h,
	  include/wine/windef16.h, include/wine/wine_common_ver.rc,
	  include/wine/wined3d_gl.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h, include/wine/wingdi16.h,
	  include/wine/winnet16.h, include/wine/winsock16.h,
	  include/wine/winuser16.h, include/wine/wpp.h, include/winerror.h,
	  include/wingdi.h, include/wininet.h, include/winioctl.h,
	  include/winldap.h, include/winnetwk.h, include/winnls.h,
	  include/winnls32.h, include/winnt.h, include/winpos.h,
	  include/winreg.h, include/winres.h, include/winresrc.h,
	  include/winsock.h, include/winsock2.h, include/winspool.h,
	  include/winsvc.h, include/wintab.h, include/wintabx.h,
	  include/winternl.h, include/wintrust.h, include/winuser.h,
	  include/winver.h, include/wmistr.h, include/wnaspi32.h,
	  include/wownt32.h, include/ws2spi.h, include/ws2tcpip.h,
	  include/wshisotp.h, include/wsipx.h, include/wsnwlink.h,
	  include/wtsapi32.h, include/wtypes.idl, include/xcmc.h,
	  include/xmldom.idl, include/xmldomdid.h, include/xmldso.idl,
	  include/xmldsodid.h, include/zmouse.h, libs/port/ffs.c,
	  libs/port/fstatvfs.c, libs/port/futimes.c, libs/port/getopt.c,
	  libs/port/getopt.h, libs/port/getopt1.c, libs/port/getpagesize.c,
	  libs/port/gettid.c, libs/port/interlocked.c, libs/port/lstat.c,
	  libs/port/memcpy_unaligned.c, libs/port/memmove.c,
	  libs/port/mkstemps.c, libs/port/pread.c, libs/port/pwrite.c,
	  libs/port/readlink.c, libs/port/sigsetjmp.c, libs/port/spawn.c,
	  libs/port/statvfs.c, libs/port/strcasecmp.c, libs/port/strerror.c,
	  libs/port/strncasecmp.c, libs/port/usleep.c, libs/unicode/cpmap.pl,
	  libs/unicode/cptable.c, libs/unicode/defaults, libs/unicode/fold.c,
	  libs/unicode/mbtowc.c, libs/unicode/sortkey.c, libs/unicode/string.c,
	  libs/unicode/utf8.c, libs/unicode/wctomb.c, libs/wine/config.c,
	  libs/wine/debug.c, libs/wine/ldt.c, libs/wine/loader.c,
	  libs/wine/mmap.c, libs/wine/port.c, libs/wpp/ppl.l, libs/wpp/ppy.y,
	  libs/wpp/preproc.c, libs/wpp/wpp.c, libs/wpp/wpp_private.h,
	  loader/glibc.c, loader/kthread.c, loader/main.c, loader/main.h,
	  loader/preloader.c, loader/pthread.c, programs/clock/Cs.rc,
	  programs/clock/Da.rc, programs/clock/De.rc, programs/clock/En.rc,
	  programs/clock/Eo.rc, programs/clock/Es.rc, programs/clock/Fi.rc,
	  programs/clock/Fr.rc, programs/clock/Hu.rc, programs/clock/It.rc,
	  programs/clock/Ko.rc, programs/clock/Nl.rc, programs/clock/No.rc,
	  programs/clock/Pl.rc, programs/clock/Pt.rc, programs/clock/Ru.rc,
	  programs/clock/Si.rc, programs/clock/Sk.rc, programs/clock/Sw.rc,
	  programs/clock/Th.rc, programs/clock/Tr.rc, programs/clock/Wa.rc,
	  programs/clock/Zh.rc, programs/clock/clock_res.h,
	  programs/clock/main.c, programs/clock/main.h, programs/clock/rsrc.rc,
	  programs/clock/winclock.c, programs/clock/winclock.h,
	  programs/cmdlgtst/Cs.rc, programs/cmdlgtst/De.rc,
	  programs/cmdlgtst/En.rc, programs/cmdlgtst/Es.rc,
	  programs/cmdlgtst/Fr.rc, programs/cmdlgtst/It.rc,
	  programs/cmdlgtst/Ko.rc, programs/cmdlgtst/Nl.rc,
	  programs/cmdlgtst/No.rc, programs/cmdlgtst/Pt.rc,
	  programs/cmdlgtst/Ru.rc, programs/cmdlgtst/Si.rc,
	  programs/cmdlgtst/Tr.rc, programs/cmdlgtst/cmdlgr.rc,
	  programs/cmdlgtst/cmdlgtst.c, programs/cmdlgtst/cmdlgtst.h,
	  programs/control/control.c, programs/control/params.h,
	  programs/eject/eject.c, programs/expand/expand.c,
	  programs/explorer/desktop.c, programs/explorer/explorer.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c,
	  programs/explorer/systray.c, programs/hh/main.c,
	  programs/icinfo/icinfo.c, programs/iexplore/main.c,
	  programs/make_progs, programs/msiexec/msiexec.c,
	  programs/msiexec/rsrc.rc, programs/msiexec/version.rc,
	  programs/notepad/Bg.rc, programs/notepad/Cs.rc,
	  programs/notepad/Da.rc, programs/notepad/De.rc,
	  programs/notepad/En.rc, programs/notepad/Eo.rc,
	  programs/notepad/Es.rc, programs/notepad/Fi.rc,
	  programs/notepad/Fr.rc, programs/notepad/Hu.rc,
	  programs/notepad/It.rc, programs/notepad/Ja.rc,
	  programs/notepad/Ko.rc, programs/notepad/Nl.rc,
	  programs/notepad/No.rc, programs/notepad/Pl.rc,
	  programs/notepad/Pt.rc, programs/notepad/Ru.rc,
	  programs/notepad/Si.rc, programs/notepad/Sk.rc,
	  programs/notepad/Sw.rc, programs/notepad/Th.rc,
	  programs/notepad/Tr.rc, programs/notepad/Wa.rc,
	  programs/notepad/Zh.rc, programs/notepad/dialog.c,
	  programs/notepad/dialog.h, programs/notepad/main.c,
	  programs/notepad/main.h, programs/notepad/notepad_res.h,
	  programs/notepad/rsrc.rc, programs/progman/Cs.rc,
	  programs/progman/Da.rc, programs/progman/De.rc,
	  programs/progman/En.rc, programs/progman/Es.rc,
	  programs/progman/Fi.rc, programs/progman/Fr.rc,
	  programs/progman/Hu.rc, programs/progman/It.rc,
	  programs/progman/Ko.rc, programs/progman/Nl.rc,
	  programs/progman/No.rc, programs/progman/Pt.rc,
	  programs/progman/Ru.rc, programs/progman/Si.rc,
	  programs/progman/Sk.rc, programs/progman/Sw.rc,
	  programs/progman/Tr.rc, programs/progman/Va.rc,
	  programs/progman/Wa.rc, programs/progman/Xx.rc,
	  programs/progman/Zh.rc, programs/progman/accel.rc,
	  programs/progman/dialog.c, programs/progman/group.c,
	  programs/progman/grpfile.c, programs/progman/main.c,
	  programs/progman/progman.h, programs/progman/program.c,
	  programs/progman/rsrc.rc, programs/progman/string.c,
	  programs/regedit/Bg.rc, programs/regedit/Cs.rc,
	  programs/regedit/De.rc, programs/regedit/En.rc,
	  programs/regedit/Es.rc, programs/regedit/Fr.rc,
	  programs/regedit/Hu.rc, programs/regedit/It.rc,
	  programs/regedit/Ja.rc, programs/regedit/Ko.rc,
	  programs/regedit/Nl.rc, programs/regedit/No.rc,
	  programs/regedit/Pl.rc, programs/regedit/Pt.rc,
	  programs/regedit/Ru.rc, programs/regedit/Si.rc,
	  programs/regedit/Tr.rc, programs/regedit/about.c,
	  programs/regedit/childwnd.c, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/hexedit.c,
	  programs/regedit/listview.c, programs/regedit/main.c,
	  programs/regedit/main.h, programs/regedit/regedit.c,
	  programs/regedit/regproc.c, programs/regedit/regproc.h,
	  programs/regedit/resource.h, programs/regedit/resource.rc,
	  programs/regedit/rsrc.rc, programs/regedit/treeview.c,
	  programs/regsvr32/regsvr32.c, programs/regsvr32/regsvr32.rc,
	  programs/rpcss/epmap_server.c, programs/rpcss/np_server.c,
	  programs/rpcss/rpcss.h, programs/rpcss/rpcss_main.c,
	  programs/rundll32/rundll32.c, programs/start/Cs.rc,
	  programs/start/De.rc, programs/start/En.rc, programs/start/Es.rc,
	  programs/start/Fr.rc, programs/start/It.rc, programs/start/Ko.rc,
	  programs/start/Nl.rc, programs/start/No.rc, programs/start/Pt.rc,
	  programs/start/Ru.rc, programs/start/Si.rc, programs/start/Tr.rc,
	  programs/start/resources.h, programs/start/rsrc.rc,
	  programs/start/start.c, programs/taskmgr/De.rc,
	  programs/taskmgr/En.rc, programs/taskmgr/Fr.rc,
	  programs/taskmgr/Ko.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/No.rc, programs/taskmgr/Tr.rc,
	  programs/taskmgr/about.c, programs/taskmgr/affinity.c,
	  programs/taskmgr/applpage.c, programs/taskmgr/column.c,
	  programs/taskmgr/column.h, programs/taskmgr/dbgchnl.c,
	  programs/taskmgr/debug.c, programs/taskmgr/endproc.c,
	  programs/taskmgr/graph.c, programs/taskmgr/graphctl.c,
	  programs/taskmgr/graphctl.h, programs/taskmgr/optnmenu.c,
	  programs/taskmgr/perfdata.c, programs/taskmgr/perfdata.h,
	  programs/taskmgr/perfpage.c, programs/taskmgr/priority.c,
	  programs/taskmgr/proclist.c, programs/taskmgr/procpage.c,
	  programs/taskmgr/run.c, programs/taskmgr/taskmgr.c,
	  programs/taskmgr/taskmgr.h, programs/taskmgr/taskmgr.rc,
	  programs/taskmgr/trayicon.c, programs/uninstaller/Bg.rc,
	  programs/uninstaller/Cs.rc, programs/uninstaller/De.rc,
	  programs/uninstaller/En.rc, programs/uninstaller/Eo.rc,
	  programs/uninstaller/Es.rc, programs/uninstaller/Fi.rc,
	  programs/uninstaller/Fr.rc, programs/uninstaller/It.rc,
	  programs/uninstaller/Ko.rc, programs/uninstaller/No.rc,
	  programs/uninstaller/Pt.rc, programs/uninstaller/Tr.rc,
	  programs/uninstaller/main.c, programs/uninstaller/resource.h,
	  programs/uninstaller/rsrc.rc, programs/view/Cs.rc,
	  programs/view/De.rc, programs/view/En.rc, programs/view/Eo.rc,
	  programs/view/Es.rc, programs/view/Fr.rc, programs/view/It.rc,
	  programs/view/Ko.rc, programs/view/Nl.rc, programs/view/No.rc,
	  programs/view/Pt.rc, programs/view/Ru.rc, programs/view/Si.rc,
	  programs/view/Tr.rc, programs/view/globals.h, programs/view/init.c,
	  programs/view/resource.h, programs/view/view.c,
	  programs/view/viewrc.rc, programs/view/winmain.c,
	  programs/wcmd/Cs.rc, programs/wcmd/De.rc, programs/wcmd/En.rc,
	  programs/wcmd/Es.rc, programs/wcmd/Fr.rc, programs/wcmd/Ja.rc,
	  programs/wcmd/Ko.rc, programs/wcmd/Nl.rc, programs/wcmd/No.rc,
	  programs/wcmd/Pl.rc, programs/wcmd/Pt.rc, programs/wcmd/Ru.rc,
	  programs/wcmd/Si.rc, programs/wcmd/Tr.rc, programs/wcmd/batch.c,
	  programs/wcmd/builtins.c, programs/wcmd/directory.c,
	  programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c,
	  programs/wcmd/wcmdrc.rc, programs/wineapploader.in,
	  programs/wineboot/wineboot.c, programs/winebrowser/main.c,
	  programs/winecfg/Bg.rc, programs/winecfg/Cs.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Hu.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Si.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/appdefaults.c,
	  programs/winecfg/audio.c, programs/winecfg/drive.c,
	  programs/winecfg/drivedetect.c, programs/winecfg/driveui.c,
	  programs/winecfg/libraries.c, programs/winecfg/main.c,
	  programs/winecfg/properties.h, programs/winecfg/resource.h,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c,
	  programs/winecfg/winecfg.h, programs/winecfg/winecfg.rc,
	  programs/winecfg/x11drvdlg.c, programs/wineconsole/curses.c,
	  programs/wineconsole/dialog.c, programs/wineconsole/registry.c,
	  programs/wineconsole/user.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/winecon_user.h,
	  programs/wineconsole/wineconsole.c,
	  programs/wineconsole/wineconsole_Cs.rc,
	  programs/wineconsole/wineconsole_De.rc,
	  programs/wineconsole/wineconsole_En.rc,
	  programs/wineconsole/wineconsole_Eo.rc,
	  programs/wineconsole/wineconsole_Es.rc,
	  programs/wineconsole/wineconsole_Fr.rc,
	  programs/wineconsole/wineconsole_Hu.rc,
	  programs/wineconsole/wineconsole_It.rc,
	  programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_Nl.rc,
	  programs/wineconsole/wineconsole_No.rc,
	  programs/wineconsole/wineconsole_Pl.rc,
	  programs/wineconsole/wineconsole_Pt.rc,
	  programs/wineconsole/wineconsole_Ru.rc,
	  programs/wineconsole/wineconsole_Tr.rc,
	  programs/wineconsole/wineconsole_Zh.rc,
	  programs/wineconsole/wineconsole_res.h,
	  programs/wineconsole/wineconsole_res.rc, programs/winedbg/be_alpha.c,
	  programs/winedbg/be_cpu.h, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/break.c,
	  programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h, programs/winedbg/display.c,
	  programs/winedbg/expr.c, programs/winedbg/expr.h,
	  programs/winedbg/gdbproxy.c, programs/winedbg/info.c,
	  programs/winedbg/intvar.h, programs/winedbg/memory.c,
	  programs/winedbg/source.c, programs/winedbg/stack.c,
	  programs/winedbg/symbol.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c, programs/winefile/Cs.rc,
	  programs/winefile/De.rc, programs/winefile/En.rc,
	  programs/winefile/Es.rc, programs/winefile/Fr.rc,
	  programs/winefile/Hu.rc, programs/winefile/It.rc,
	  programs/winefile/Ko.rc, programs/winefile/Nl.rc,
	  programs/winefile/No.rc, programs/winefile/Pl.rc,
	  programs/winefile/Pt.rc, programs/winefile/Ru.rc,
	  programs/winefile/Si.rc, programs/winefile/Sv.rc,
	  programs/winefile/Tr.rc, programs/winefile/Zh.rc,
	  programs/winefile/resource.h, programs/winefile/resource.rc,
	  programs/winefile/rsrc.rc, programs/winefile/splitpath.c,
	  programs/winefile/winefile.c, programs/winefile/winefile.h,
	  programs/winelauncher.in, programs/winemenubuilder/winemenubuilder.c,
	  programs/winemine/Cs.rc, programs/winemine/De.rc,
	  programs/winemine/En.rc, programs/winemine/Es.rc,
	  programs/winemine/Fi.rc, programs/winemine/Fr.rc,
	  programs/winemine/It.rc, programs/winemine/Ko.rc,
	  programs/winemine/Nl.rc, programs/winemine/No.rc,
	  programs/winemine/Pl.rc, programs/winemine/Pt.rc,
	  programs/winemine/Ru.rc, programs/winemine/Si.rc,
	  programs/winemine/Tr.rc, programs/winemine/dialog.c,
	  programs/winemine/dialog.h, programs/winemine/main.c,
	  programs/winemine/main.h, programs/winemine/resource.h,
	  programs/winemine/rsrc.rc, programs/winepath/winepath.c,
	  programs/winetest/dist.rc, programs/winetest/gui.c,
	  programs/winetest/main.c, programs/winetest/resource.h,
	  programs/winetest/send.c, programs/winetest/util.c,
	  programs/winetest/winetest.h, programs/winetest/winetest.rc,
	  programs/winevdm/winevdm.c, programs/winhelp/Bg.rc,
	  programs/winhelp/Cs.rc, programs/winhelp/Da.rc,
	  programs/winhelp/De.rc, programs/winhelp/En.rc,
	  programs/winhelp/Eo.rc, programs/winhelp/Es.rc,
	  programs/winhelp/Fi.rc, programs/winhelp/Fr.rc,
	  programs/winhelp/Hu.rc, programs/winhelp/It.rc,
	  programs/winhelp/Ko.rc, programs/winhelp/Nl.rc,
	  programs/winhelp/No.rc, programs/winhelp/Pl.rc,
	  programs/winhelp/Pt.rc, programs/winhelp/Ru.rc,
	  programs/winhelp/Si.rc, programs/winhelp/Sk.rc,
	  programs/winhelp/Sw.rc, programs/winhelp/Tr.rc,
	  programs/winhelp/Va.rc, programs/winhelp/Wa.rc,
	  programs/winhelp/Zh.rc, programs/winhelp/callback.c,
	  programs/winhelp/hlpfile.c, programs/winhelp/hlpfile.h,
	  programs/winhelp/macro.c, programs/winhelp/macro.h,
	  programs/winhelp/macro.lex.l, programs/winhelp/rsrc.rc,
	  programs/winhelp/string.c, programs/winhelp/winhelp.c,
	  programs/winhelp/winhelp.h, programs/winver/winver.c,
	  programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/Fr.rc, programs/wordpad/Hu.rc,
	  programs/wordpad/Ko.rc, programs/wordpad/Nl.rc,
	  programs/wordpad/No.rc, programs/wordpad/Ru.rc,
	  programs/wordpad/Tr.rc, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c, server/atom.c,
	  server/change.c, server/class.c, server/clipboard.c,
	  server/console.c, server/console.h, server/context_alpha.c,
	  server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/debugger.c,
	  server/directory.c, server/event.c, server/fd.c, server/file.c,
	  server/file.h, server/handle.c, server/handle.h, server/hook.c,
	  server/mailslot.c, server/main.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/process.h, server/protocol.def,
	  server/ptrace.c, server/queue.c, server/region.c, server/registry.c,
	  server/request.c, server/request.h, server/security.h,
	  server/semaphore.c, server/serial.c, server/signal.c,
	  server/snapshot.c, server/sock.c, server/symlink.c, server/thread.c,
	  server/thread.h, server/timer.c, server/token.c, server/trace.c,
	  server/unicode.c, server/unicode.h, server/user.c, server/user.h,
	  server/window.c, server/winstation.c, tools/bin2res.c,
	  tools/bug_report.pl, tools/c2man.pl, tools/examine-relay,
	  tools/fnt2bdf.c, tools/fnt2bdf.h, tools/fnt2fon.c,
	  tools/font_convert.sh, tools/genpatch, tools/make_authors,
	  tools/make_ctests.c, tools/make_requests, tools/makedep.c,
	  tools/relpath.c, tools/runtest, tools/sfnt2fnt.c,
	  tools/widl/client.c, tools/widl/hash.c, tools/widl/hash.h,
	  tools/widl/header.c, tools/widl/header.h, tools/widl/parser.h,
	  tools/widl/parser.l, tools/widl/parser.y, tools/widl/proxy.c,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h,
	  tools/widl/typelib.c, tools/widl/typelib.h,
	  tools/widl/typelib_struct.h, tools/widl/utils.c, tools/widl/utils.h,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widltypes.h,
	  tools/widl/write_msft.c, tools/winapi/c_function.pm,
	  tools/winapi/c_parser.pm, tools/winapi/c_type.pm,
	  tools/winapi/config.pm, tools/winapi/function.pm,
	  tools/winapi/make_filter, tools/winapi/make_filter_options.pm,
	  tools/winapi/make_parser.pm, tools/winapi/modules.pm,
	  tools/winapi/msvcmaker_options.pm, tools/winapi/nativeapi.pm,
	  tools/winapi/options.pm, tools/winapi/output.pm,
	  tools/winapi/preprocessor.pm, tools/winapi/setup.pm,
	  tools/winapi/tests.pm, tools/winapi/trampoline, tools/winapi/type.pm,
	  tools/winapi/util.pm, tools/winapi/winapi.pm,
	  tools/winapi/winapi_c_parser.pm, tools/winapi/winapi_check,
	  tools/winapi/winapi_check_options.pm, tools/winapi/winapi_cleanup,
	  tools/winapi/winapi_cleanup_options.pm,
	  tools/winapi/winapi_documentation.pm, tools/winapi/winapi_extract,
	  tools/winapi/winapi_extract_options.pm, tools/winapi/winapi_fixup,
	  tools/winapi/winapi_fixup_documentation.pm,
	  tools/winapi/winapi_fixup_editor.pm,
	  tools/winapi/winapi_fixup_options.pm,
	  tools/winapi/winapi_fixup_statements.pm,
	  tools/winapi/winapi_function.pm, tools/winapi/winapi_global.pm,
	  tools/winapi/winapi_local.pm, tools/winapi/winapi_module_user.pm,
	  tools/winapi/winapi_parser.pm, tools/winapi/winapi_test,
	  tools/winapi/winapi_test_options.pm, tools/wine.inf,
	  tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/parser.c,
	  tools/winebuild/relay.c, tools/winebuild/res16.c,
	  tools/winebuild/res32.c, tools/winebuild/spec16.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c,
	  tools/winedump/cvinclude.h, tools/winedump/debug.c,
	  tools/winedump/dump.c, tools/winedump/emf.c,
	  tools/winedump/function_grep.pl, tools/winedump/le.c,
	  tools/winedump/lnk.c, tools/winedump/main.c,
	  tools/winedump/minidump.c, tools/winedump/misc.c,
	  tools/winedump/msmangle.c, tools/winedump/ne.c,
	  tools/winedump/output.c, tools/winedump/pe.c, tools/winedump/pe.h,
	  tools/winedump/search.c, tools/winedump/symbol.c,
	  tools/winedump/winedump.h, tools/winegcc/utils.c,
	  tools/winegcc/utils.h, tools/winegcc/winegcc.c, tools/wineinstall,
	  tools/winemaker, tools/wineprefixcreate.in, tools/wineshelllink,
	  tools/winewrapper, tools/wmc/lang.c, tools/wmc/lang.h,
	  tools/wmc/mcl.c, tools/wmc/mcy.y, tools/wmc/utils.c,
	  tools/wmc/utils.h, tools/wmc/wmc.c, tools/wmc/wmc.h,
	  tools/wmc/wmctypes.h, tools/wmc/write.c, tools/wmc/write.h,
	  tools/wrc/dumpres.c, tools/wrc/dumpres.h, tools/wrc/genres.c,
	  tools/wrc/genres.h, tools/wrc/newstruc.c, tools/wrc/newstruc.h,
	  tools/wrc/parser.h, tools/wrc/parser.l, tools/wrc/parser.y,
	  tools/wrc/readres.c, tools/wrc/readres.h, tools/wrc/translation.c,
	  tools/wrc/utils.c, tools/wrc/utils.h, tools/wrc/wrc.c,
	  tools/wrc/wrc.h, tools/wrc/wrctypes.h, tools/wrc/writeres.c:
	Update the address of the Free Software Foundation.

2006-05-21  Labrousse Jean <jlabrous@altern.org>

	* dlls/msi/action.c:
	msi: Fix short name and long name mismatch in action.c.

2006-05-23  Troy Rollo <wine@troy.rollo.name>

	* dlls/ole32/storage32.c:
	ole32: Fix excessive file sizes for Storage files.
	The IStorage (DocFile) implementation was adding empty blocks at the
	end of the file every time a caller wrote data that was not a multiple
	of 512 bytes.  If the caller made a lot of very small writes the file
	size could be huge even though the data in the file was tiny. This was
	caused by BlockChainStream_SetSize trying to allocate file blocks for
	the new data using a condition that bore no relationship to the
	required condition, and it was not necessary to do so at that time
	since it is done (the right way) by StorageImpl_GetNextFreeBigBlock
	(called via BlockChainStream_Enlarge).

2006-05-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user/tests: Don't generate a mouse click message in mouse_ll_global_thread_proc.
	Windows doesn't like when a thread plays games with the focus, that
	leads to all kinds of misbehaviours and failures to activate a
	window. So, better don't generate a mouse click message in
	mouse_ll_global_thread_proc.

	* dlls/user/tests/msg.c:
	user/tests: Add lparam to all HCBT_MINMAX hook messages.

2006-05-23  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: OpengGL accelerated blits.
	Implement some basic opengl accelerated blts from and to render
	targets. It's not perfect yet, but enought to make some D3D apps
	happy. For now the only supported operations are:
	- Full screen back -> Front buffer: Just call present
	- Offscreen surface -> render target
	- Render target -> offscreen surface(slow)
	- render target colorfill

2006-05-22  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Surface pixel format conversion code.

2006-05-22  Robert Shearman <rob@codeweavers.com>

	* server/queue.c:
	server: Don't clear the QS_POSTMESSAGE flag if there is a pending quit message.

	* dlls/ole32/tests/marshal.c:
	ole32: Release the outer unknown in the proxybuffer test.
	Release the outer unknown in the proxybuffer test to show that the
	last release of the outer unknown doesn't free the proxy buffer.

	* dlls/ole32/marshal.c, dlls/ole32/oleproxy.c:
	ole32: Release the proxy buffer object on the last release of the proxy's
	outer unknown.
	Release the proxy buffer object on the last release of the proxy's outer
	unknown, otherwise memory is leaked for the Ndr implementation of
	IRpcProxyBuffer.
	Fix up the hand-coded proxies to match the behaviour from the Ndr
	implementation.

	* dlls/wininet/tests/url.c:
	wininet: Fix a failing test.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix copying too much data from the buffer by not taking into account
	the fact that auth_pad_len has been included in the fragment length.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Authentication padding should only be generated if there is
	authentication data.

	* include/winbase.h:
	include: Add defines used in CopyFileEx.

	* include/guiddef.h:
	include: Make guiddef.h defines match PSDK.
	Protect LPGUID typedef by __LPGUID_DEFINED__ being defined.
	Protect LPCLSID and LPFMTID typedefs, IsEqualGUID, IsEqualIID,
	IsEqualCLSID, IID_NULL, CLSID_NULL and FMTID_NULL defines by
	__IID_DEFINED__ being defined.

2006-05-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Added A<->W mapping for WM_GETDLGCODE.

2006-05-20  Hans Leidekker <hans@it.vu.nl>

	* dlls/quartz/main.c, dlls/quartz/quartz.spec, include/Makefile.in,
	  include/dshow.h, include/errors.h:
	quartz: Add stub implementation for AMGetErrorText{A,W}.

2006-05-21  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Simplify input/output modifier line handling.

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Clean up register use maps.

	* dlls/wined3d/drawprim.c:
	wined3d: Allow use of pixel shaders with drawStridedSlow.

	* dlls/wined3d/vertexshader.c:
	wined3d: Only run parse_decl_usage on vshader INPUT registers.

2006-05-22  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/security.c:
	advapi32: Skip token attribute testing if OpenProcessToken() is not implemented.

2006-05-21  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/advapi32/tests/security.c:
	advapi32: Make test loadable on win9x.

2006-05-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/test: Disable a test that crashes on win9x.

2006-05-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Remove cross calls W->A for the "Printers" registry path.

2006-05-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: An empty string as server name is valid (EnumPrinterDrivers).

2006-05-21  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction026+027.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction011.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Test and implement SystemFunction024/025.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction(012-023).

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction010.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction009.

2006-05-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdsapi/ntdsapi.spec:
	ntdsapi: Add DsMakeSpnA to the spec file.

2006-05-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Create fake dlls for ADPCM codecs.

2006-05-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/version.rc, dlls/d3d9/version.rc, dlls/ddraw/version.rc,
	  dlls/dmusic/version.rc, dlls/dplayx/version.rc,
	  dlls/dsound/version.rc:
	directx: Update file versions to dx9c (compared to win2k).

2006-05-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/device.c:
	d3d9: Add refcount tests for all objects created by device.

	* dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/pixelshader.c, dlls/d3d9/query.c,
	  dlls/d3d9/stateblock.c, dlls/d3d9/swapchain.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volumetexture.c:
	d3d9: All objects created by device should keep reference to it.

	* configure, configure.ac, dlls/d3d8/Makefile.in,
	  dlls/d3d8/tests/.gitignore, dlls/d3d8/tests/Makefile.in,
	  dlls/d3d8/tests/device.c, programs/winetest/Makefile.in:
	d3d8: Add refcount test.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/indexbuffer.c, dlls/d3d8/swapchain.c, dlls/d3d8/texture.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/volumetexture.c:
	d3d8: All objects created by device should keep reference to it.

	* include/d3d8.h:
	include: SwapChain::GetBackBuffer takes 3 parameters, not 4.

2006-05-20  Robert Shearman <rob@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Make sure to always have the default pushbutton for wizards as an
	enabled button.

	* dlls/comctl32/propsheet.c:
	comctl32: A PSM_SETWIZBUTTONS message specifying PSWIZB_FINISH or
	PSWIZB_DISABLEDFINISH, followed by another one without those flags
	should show the next button again and hide the finish button.

2006-05-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Get rid of the WINPROC_Map/UnmapMsg32ATo32W functions.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for the remaining messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_GETTEXTLENGTH and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_CHAR and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for EM_GETLINE.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for LB_GETTEXT and CB_GETLBTEXT.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_SETTEXT and related messages.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_GETTEXT and WM_ASKCBFORNAME.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast A->W mapping for WM_CREATE and WM_NCCREATE.

2006-05-19  Peter Beutner <p.beutner@gmx.net>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d8/volume.c:
	d3d8: Fix GetDesc and GetLevelDesc for surfaces and textures.
	In DX8 the D3DSURFACE_DESC structure has a size field which needs to be set.

2006-05-18  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c:
	wined3d: Simplify generate_base_shader() when checking for USING_GLSL usage.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Move PARAM C[] program.env[] into baseshader and out of vertex shaders.

2006-05-19  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle pointers to context handles in the stubless code.
	Implement check for NULL context handles if requested.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: We don't need to free object pointers if we are told we must allocate.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use macros to generate the code for unmarshaling base types.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't set the memory pointer to NULL before calling PointerUnmarshall.
	Call it with fMustAlloc set to TRUE instead to achieve the same result
	without side-effects.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make more internal functions static.

	* dlls/rpcrt4/rpc_defs.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add the definition of RpcAuthVerifier to rpc_defs.h from the DCE/RPC
	spec.
	Use it in RPCRT4_SendAuth instead of writing out the data byte-by-byte.

	* include/ndrtypes.h:
	rpcrt4: Add more format characters and add context handle flags to ndrtypes.h.

2006-05-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/ntdsapi/.gitignore,
	  dlls/ntdsapi/Makefile.in, dlls/ntdsapi/ntdsapi.c,
	  dlls/ntdsapi/ntdsapi.spec, include/Makefile.in, include/ntdsapi.h:
	Add a stub implementation of ntdsapi.dll.

2006-05-19  Paul Chitescu <paulc@voip.null.ro>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c,
	  include/winbase.h:
	advapi32: Add stub FileEncryptionStatus and declarations.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: Get rid of the MSGPARAMS16 structure.

2006-05-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Make a lot of winproc functions static.

	* dlls/user/msg16.c:
	user: Call the A version of message functions from 16-bit code.
	This avoids having to export too many different message translation
	functions.

	* dlls/user/hook16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks instead of message map/unmap for 16-bit hooks.

	* dlls/user/msg16.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use winproc callbacks instead of message map/unmap in SendMessage16.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Use a winproc callback instead of a message map/unmap in
	SendMessageTimeoutA.

	* dlls/user/message.c:
	user: Store the destination thread id in the send_message_info structure.

2006-05-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Make sure no message is sent between
	PrepareCallbackItems/FreeCallbackItems.

	* dlls/comctl32/header.c:
	comctl32: header: Don't erase the background in HEADER_Refresh.

	* dlls/comctl32/header.c:
	comctl32: header: The border size is 4 not 3.

2006-05-19  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Sort of oversized surface support.

2006-05-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/directx.c:
	wined3d: Add more device caps.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Allow SYSTEMMEM textures and surfaces.

2006-05-18  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::SetDisplayMode.

2006-05-19  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Use IsClient to determine whether we can use the Buffer memory or not.
	Add simple struct tests.

2006-05-19  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Warn if CreateNamedPipe fails.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add the correct amount of auth padding to messages.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Wait for all of the requested bytes to be returned for tcp connections.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_ole.c,
	  dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Update the todo lists and copyrights.

2006-05-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix for the open functions in the transports being transposed between
	ncacn_np and ncalrpc.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Don't release the auth info if it isn't present.

2006-05-19  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Fix wave test handle use after close bug.

2006-05-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/winpos.c:
	x11drv: Fix the regression caused by the recent ShowWindow fixes.

2006-05-19  Mike McCormack <mike@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Cleanup InitializeSecurityContext (reduce indent and duplication).

	* dlls/secur32/ntlm.c:
	secur32: Tidy up the initialization code a little.

2006-05-18  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/typelib.c:
	widl: Don't add importlib if it is already on the list. Remove warning.

	* tools/widl/write_msft.c:
	widl: Added support for importing parent interfaces from importlib.

	* dlls/shdocvw/client.c:
	shdocvw: Return S_OK in OnInPlaceDeactivate.

2006-05-18  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c:
	wined3d: Trace output corrections and cleanups.

2006-05-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/store.c:
	crypt32: Move CertFindCertificateInStore and related functions to cert.c.

	* dlls/crypt32/crypt32_private.h, dlls/crypt32/serialize.c,
	  dlls/crypt32/store.c:
	crypt32: Move context interface definition to common header.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Convert the 16-bit winproc functions to use a callback pointer.

	* dlls/user/winproc.c:
	user: Convert the other winproc 32-bit functions to use a callback pointer.

	* dlls/user/winproc.c, dlls/user/winproc.h:
	user: Make WINPROC_CallProc32WTo32A take a callback function pointer.
	This way it doesn't need to know about dialog procedures. Also renamed
	it to WINPROC_CallProcWtoA.

2006-05-18  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, dlls/wined3d/wined3d_main.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Check registry for UseGLSL enabled.

2006-05-18  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Fix a possible memory leak, cleanup a bit.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_transport.c,
	  dlls/rpcrt4/tests/rpc.c:
	rpcrt4: Fix and test RpcNetworkIsProtseqValid.

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub implementation for RpcMgmtIsServerListening.

2006-05-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/dialog.c:
	user: Fixed a broken trace in the dialog test.

	* dlls/user/winproc.c:
	user: Added helper functions for A<->W conversion of single characters.

	* dlls/user/winproc.c:
	user: Simplify 16-bit mappings of the WM_GETDLGCODE message.

	* dlls/user/winproc.c:
	user: Unify the mapping of listbox and combobox messages.

	* dlls/user/winproc.c:
	user: Get rid of the WINPROC_MapMsg32WTo32A function.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_IME_CHAR.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_CHAR and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for EM_GETLINE.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for LB_GETTEXT and CB_GETLBTEXT.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for LB_ADDSTRING and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_MDICREATE.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_SETTEXT and related messages.

	* dlls/user/winproc.c:
	user: Added fast W->A mapping for WM_GETTEXT and WM_ASKCBFORNAME.

	* dlls/user/winproc.c:
	user: Added helper functions for buffer management in WINPROC_CallProc32WTo32A..

	* dlls/user/winproc.c:
	user: Merged WINPROC_CallProc32WTo32A_fast into WINPROC_CallProc32WTo32A.

2006-05-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c:
	crypt32: Add stubs for CertDuplicateCRLContext and CertDuplicateCTLContext.

2006-05-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/user/message.c:
	user32: Allow interprocess WM_NCPAINT messages when wParam is 0 or 1.

2006-05-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Implement RpcBindingSetAuthInfoExW based on the implementation for
	RpcBindingSetAuthInfoExA.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: A NULL AuthInfo is allowed.
	Pass the server principal name into AcquireCredentialsHandleA.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Support all available security packages in RpcBindingSetAuthInfoExA,
	instead of just NTLM.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Only use the cached connection if the authentication information
	is compatible.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Store non-connection-specific authentication information in a ref-counted
	structure that is shared between connections and bindings.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Fix an off-by-one error when checking the size of the buffer in
	NdrInterfacePointerMarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Handle interface pointers in EmbeddedComplexSize.

	* dlls/rpcrt4/Makefile.in:
	rpcrt4: Make secur32 into a delayed import, as most of the time it won't
	be needed.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Increment the call id field of the request header.
	This is necessary for compatibility with MS/RPC servers.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrNonEncapsulatedUnionMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the wire protocol of the user marshal functions to match MS/RPC.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: If the authorisation failed during a send then we should return
	ERROR_ACCESS_DENIED.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix NdrConformantArrayMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrUserMarshalMemorySize.

2006-05-17  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Take predication tokens into account.
	Each instruction can have a predication token. Account for it in the
	trace pass, register count pass, and store it in the SHADER_OPCODE_ARG
	structure for generation. MSDN claims the token is at the end of the
	instruction, but that's not true - testing a demo, which lets me
	manipulate the shader shows the predication token is the first source
	token immediately following the destination token.

	* dlls/wined3d/baseshader.c:
	wined3d: Parameter trace corrections.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: SETP takes 3 parameters.

2006-05-17  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/tests/.gitignore,
	  dlls/rpcrt4/tests/Makefile.in, dlls/rpcrt4/tests/ndr_marshall.c:
	rpcrt4: Don't update StubMsg->MemorySize while unmarshaling.
	Add a bunch of marshaling tests (based on a program by Rob Shearman).

2006-05-16  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/kernel/tests/path.c:
	kernel: Fix path test to pass on 95 and 98.

2006-05-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Code cleanup.

	* dlls/shdocvw/ie.c:
	shdocvw: Added IConnectionPointContainer to InternetExplorer::QueryInterface.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IConnectionPointContainer implementation to separated object.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/events.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Move connection points to the new ConnectionPointContainer struct.

2006-05-15  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/typelib.c, tools/widl/typelib_struct.h,
	  tools/widl/widltypes.h:
	widl: Added importlib reading implementation.

2006-05-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Don't erase the left header egde.

	* dlls/comctl32/header.c:
	comctl32: header: Send the width in HDN_BEGINTRACK.

	* dlls/comctl32/listview.c:
	comctl32: listview: Recompute sizes after a column deletion.

2006-05-17  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Implement NdrInterfacePointerMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make some functions that aren't used outside of the file static.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fill out more of the function tables with functions that already exist.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Raise an exception if there is no default handler for a union.

2006-05-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/winproc.c:
	user: The result for dialog procedures is stored in DWLP_MSGRESULT.
	So we have to access it using Get/SetWindowLong when unmapping the
	message results (based on a patch by Troy Rollo).

	* dlls/user/defdlg.c:
	user: Remove unreachable code in DEFDLG_Proc.

	* dlls/user/class.c, dlls/user/message.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h:
	user: Support storing multiple winprocs in a single winproc handle.
	Allows to remove special cases for window classes being Ascii and
	Unicode at the same time.

	* dlls/user/winproc.c:
	user: Allocate 16-bit thunks separately from the window proc structure.
	Also make sure the thunk memory block has execute permissions.

	* dlls/x11drv/clipboard.c:
	x11drv: Fixed typo in the clipboard XA_STRING handling.

2006-05-09  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/bitmap.c, dlls/gdi/gdi_private.h, dlls/gdi/tests/bitmap.c,
	  dlls/x11drv/bitmap.c, dlls/x11drv/winex11.drv.spec:
	gdi: Fix GetObject for bitmaps.
	- GetObject(): Set the bmBits member of the BITMAP structure to NULL
	for device-dependent bitmaps.
	- New test case.

2006-05-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Fix OpenDriverReg on top of validate_envW.

	* dlls/winspool/tests/info.c:
	winspool/tests: More tests for OpenPrinter.

2006-05-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Do not fail in OpenPrinter on pDefault / local print server.

	* dlls/winspool/info.c:
	winspool: Show SetPrinter parameters in the FIXME.

	* dlls/winspool/tests/info.c:
	winspool/tests: A truncated dmDeviceName is 0-terminated.

2006-05-17  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Use COLOROUT/DEPTHOUT for pixel shaders 2.0+.
	As previously mentioned, RASTOUT is invalid on pixel shaders.
	On shaders 1.x, r0 is treated as the color output register:
	http://www.gamedev.net/columns/hardcore/dxshader3/page2.asp
	That's what we currently do in all cases, change it not to do so
	for shaders >= 2.0. Support COLOROUT/DEPTHOUT instead.

	* dlls/wined3d/vertexshader.c:
	wined3d: LRP is not a valid ARBvp code.

	* dlls/wined3d/pixelshader.c:
	wined3d: Remove detailed traces from map2gl/input_modifiers functions.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Write "unrecognized_register" in fallback case for get_register_name().

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Modify shader_dump_param() to take into account address token.
	Currently we hardcode a0.x, which I think is correct for shaders 1.0.
	However, for shaders 2.0, we must look into the address token, and
	print the register there. Handle both cases to correct the trace.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Use shader_get_param() in trace pass, reg. count pass, generation pass.
	Change the trace pass, the register counting pass, and the hw
	generator pass to take into account the new get_params() function. For
	hw generation, store the address tokens into the SHADER_OPCODE_ARG
	structure, so they're available to generator functions.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Add shader_get_param() fn, which processes address tokens.
	Add a new function to process parameters.
	On shaders 1.0, processing parameters amounts to *pToken++.
	On shaders 2.0+, we have a relative addressing token to account for.
	This function should be used, instead of relying on num_params everywhere.

	* dlls/wined3d/baseshader.c:
	wined3d: Do not rely on num_params to skip unhandled tokens in shaders 2.0.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c:
	wined3d: Allow multiple output modifiers.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix SINCOS parameters.
	SINCOS has 4 parameters in shaders 2.0.
	It has 2 parameters in shaders 3.0.
	It's undefined in shaders 1.0.

	* dlls/wined3d/vertexshader.c:
	wined3d: DEFI takes 5 parameters.
	According the spec and the Painkiller log, DEFI has 5 parameters on
	vertex shaders.

2006-05-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	user32: Make all the recently added ShowWindow tests pass in Wine.

2006-05-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/ntdll/tests/info.c:
	ntdll/tests: Don't fail if a process is not available.

2006-05-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/usp10/usp10.c:
	usp10: Fix ScriptGetProperties so that first pointer can be NULL.

	* programs/winedbg/types.c:
	winedbg: extract_as_integer
	- now supporting extract_as_integer on functions (so that,
	for example, 'disas foo' works as expected)
	- now properly handling errors when calling extract_as_integer

2006-05-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Get rid of CRYPT_CreateCertificateContext, it's not needed anymore.

2006-05-17  Marcus Meissner <marcus@jet.franken.de>

	* dlls/riched20/tests/editor.c:
	riched20: Removed useless double casts, just print the DWORD hexmask.

2006-05-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/decode.c, dlls/crypt32/encode.c:
	crypt32: Split the unwieldy encode.c into two files.

2006-05-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Support CERT_ISSUER_SERIAL_NUMBER_MD5_HASH_PROP_ID implicit property.

	* dlls/crypt32/store.c:
	crypt32: Use the caller-supplied encoding type when decoding certs.

	* dlls/crypt32/tests/store.c:
	crypt32: Add more tests for adding certs to a store.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement CertCompare functions, with tests.

2006-05-16  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Fix INSERTITEM on a zero mask and GETITEM on a mask with
	unknown fields.
	INSERTITEM should fail on a zero mask. If in GETITEM the mask has an
	unknown field it should store only the comctl32 4.0 fields (with test
	case).

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Copy some fields on INSERTITEM even if they are not in
	the mask.

	* dlls/comctl32/header.c, dlls/comctl32/tests/header.c:
	comctl32: header: Automatically set some format fields.

2006-05-16  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix handling of 'h' prefix in swprintf.
	- '%hs' in widechar string functions is wrongly recognized as
	a widechar string. Fix this by always checking the prefix first.
	- add testcase
	- remove code duplication in %c/%s handling by moving code into a function.

2006-05-16  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/tests/Makefile.in, dlls/wininet/tests/http.c:
	wininet: Add a standalone http test.

	* dlls/wininet/ftp.c:
	wininet: Make sure hIC is valid before trying to use it. (Coverity)

2006-05-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/d3d9types.h, include/wine/wined3d_types.h:
	d3d: Add D3DDEVTYPE_NULLREF definition.

2006-05-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/modify.c, dlls/wldap32/modrdn.c:
	wldap32: Document the modify and modrdn functions.

2006-05-15  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/kernel/tests/path.c:
	kernel: Properly delete a test file.

2006-05-16  Alexandre Julliard <julliard@winehq.org>

	* tools/config.guess, tools/config.sub, tools/install-sh:
	tools: Updated the autoconf scripts to more recent versions.

2006-05-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32: Add more ShowWindow tests.
	Move ShowWindow tests for children with an invisible parent into a
	separate test, add more ShowWindow tests. The tests show that an
	assumption in dlls/x11drv/winpos.c that SetWindowPos should not be
	called on a child with an invisible parent is not always true.

2006-05-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/wined3d/vertexshader.c:
	wined3d: Correctly define the number of possible parameters.

2006-05-15  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement fixed array functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove the BUFFER_PARANOIA overestimates for string memory sizes.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement computing of conformance from a correlation descriptor for
	conformant strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix conformant varying structs to comply to the DCE/RPC spec.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't duplicate the conformance calculating code, just use the
	common ComputeConformance function to store the result in
	pStubMsg->MaxCount (as this is what callback function store the
	conformance value into anyway).

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement conformant varying struct functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement more conformance operations and more types.

2006-05-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Don't release IOleInPlaceSite in DoVerb.

2006-05-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Unset the ddraw primary when it is released.

	* dlls/wined3d/utils.c:
	wined3d: Add missing render states to the dumping function.

	* dlls/wined3d/device.c:
	wined3d: Implement IWineD3DDevice::SetFrontBackBuffers.

2006-05-15  Matt Finnicum <mattfinn@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c, dlls/riched20/undo.c:
	riched20: Implement EM_SETUNDOLIMIT and its conformance tests.

2006-05-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c:
	crypt32: Test importing public keys from a certificate.

	* dlls/crypt32/tests/store.c:
	crypt32: Avoid a use-after-free bug in tests.

2006-05-15  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Return correct errors in InternetOpenUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/internet.c:
	wininet: Return correct errors in InternetConnectW

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_message.c:
	rpcrt4: Implemented NTLM authentication for rpcrt4 connections.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Use RPCRT4_Receive rather than accessing the transport directly.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction005.

2006-05-15  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrSimpleStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix the conformant struct functions to not call conformant array
	functions.
	The conformance has to be the first thing in the buffer, in accordance
	with the DCE/RPC spec and to be compatible with the pointer layout
	format strings that MIDL generates.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: In NdrConformantBufferSize, SizeConformance should be called, not
	SizeVariance.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Save pStubMsg->ActualCount in a local variable in the complex
	array functions, before calling a function that could change it and
	cause the wrong number of loop iterations.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the memory for pointers in NdrNonEncapsulatedUnionUnmarshall.
	Pointers in a non-encapsulated union behave like embedded pointers, so
	don't rely on the NdrPointer* functions doing the right thing in this
	case and call the Pointer* functions directly.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Rename ComplexStructSize to ComplexStructMemorySize to reflect the
	fact that it increments the buffer.
	Replace the code in EmbeddedComplexSize that sizes non-encapsulated
	unions without using a memory sizer routine, since this function
	shouldn't touch the buffer.
	Add a new function EmbeddedComplexMemorySize and use it in some memory
	sizer routines where EmbeddedComplexSize was previously used.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Fix embedded pointers in arrays by taking into account the iteration
	when calculating the appropriate memory and buffer pointers.

2006-05-14  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Shaders: share dump_param function, version functions.

	* dlls/wined3d/stateblock.c:
	wined3d: Fix incorrect sizeof.

2006-05-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: Duplicate extent value for the second byte of a DBCS char.

2006-05-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, libs/Makelib.rules.in, libs/wine/Makefile.in:
	configure: Make libraries properly relocatable on MacOS.
	Also set the compatibility version.

2006-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/security.c, dlls/cfgmgr32/main.c, dlls/gdi/freetype.c,
	  dlls/mprapi/mprapi.c, dlls/ntdll/sync.c, dlls/ole32/usrmarshal.c,
	  dlls/usp10/usp10.c:
	Fix some winapi_check documentation warnings.

	* dlls/d3d9/pixelshader.c, dlls/ddraw/tests/d3d.c,
	  dlls/gdi/tests/bitmap.c, dlls/kernel/tests/toolhelp.c,
	  dlls/msi/tests/msi.c, dlls/ole32/tests/moniker.c,
	  dlls/wined3d/baseshader.c, dlls/winspool/info.c:
	Various trace fixes.
	Add trailing '\n's to trace calls.
	Remove spaces before '\n'.

	* configure, configure.ac, dlls/advpack/tests/install.c,
	  dlls/msi/action.c, dlls/user/tests/wsprintf.c,
	  dlls/wined3d/surface.c, dlls/x11drv/dib.c:
	Assorted spelling fixes.

2006-05-14  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: header: Check for HDN_GETDISPINFO not being sent during INSERT/SETITEM.

2006-05-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: listview: Store the iSubItem in header's lParam in LVM_INSERTCOLUMN.

	* dlls/comctl32/header.c:
	comctl32: header: Correct HDN_GETDISPINFO. Use it during drawing.
	Improve HEADER_SendHeaderDispInfoNotify and rename it to
	HEADER_PrepareCallbackItems. The new HEADER_FreeCallbackItems frees
	the buffers allocated by it. GetItemT and DrawItem calls these
	functions.

	* dlls/comctl32/header.c:
	comctl32: header: Mark the callback items in a mask.
	Mark the callback items in the callbackMask HEADER_ITEM field. The
	pszText for callback texts is now NULL what simplifies some
	checks. Checks for lpItem->pszText==emptyString are also not needed as
	emptyString is not stored in lpItem but used as a parameter to
	Str_SetPtr (I haven't noticed it).

	* dlls/comctl32/header.c:
	comctl32 header: Free the old string also when the new one is LPSTR_TEXTCALLBACK.

	* dlls/comctl32/header.c:
	comctl32: header: Don't modify the user supplied HDITEM during Set/InsertItem.

	* dlls/comctl32/header.c:
	comctl32: header: Move common code from SetItemT/InsertItemT into a new function.

	* dlls/comctl32/header.c:
	comctl32: header: Don't send HDN_GETDISPINFO during HDM_SET/INSERTITEM.

	* dlls/comctl32/header.c:
	comctl32: header: Don't check lpItem for NULL in GetItemT.

2006-05-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Wrap Heap* finctions by inline functions.

2006-05-15  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Update the marshal state buffer size when resizing (Doh!).

2006-05-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/msvcrt/tests/time.c:
	msvcrt: Fix times tests to pass on windows.
	Add more tests for daylight-time savings.

2006-05-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/request.h, server/token.c, server/trace.c:
	server: Retrieve the groups for a token from the server.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The arm type mask should be comparing the highest byte against 0x80,
	as documented on MSDN.
	Fix base type arm handling on little-endian machines, as the current
	code would always pass in the address to the format char of 0x80
	instead of the base type format char.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make ComplexStructSize increment the buffer.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Pass in the buffer value before incrementing to PointerMarshall in
	NdrPointerMarshall.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrComplexStructMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrComplexArrayMemorySize.

	* dlls/rpcrt4/rpc_defs.h:
	rpcrt4: Fix the fault packet structure to comply with the DCE/RPC specification.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: The NDR memory sizing functions should increment the buffer pointer,
	so make sure to save it before calling one of these and restore it afterwards.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make NdrBaseTypeMemorySize increment the buffer and memory size fields
	of MIDL_STUB_MESSAGE.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Make NdrConformantStringUnmarshall use the new Read{Variance,Conformance}
	functions and adapt them to be callable without having a correlation
	descriptor.

	* dlls/advapi32/tests/security.c:
	advapi32: Add tests for getting the groups, user and privileges of a token.

2006-05-14  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction004.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction003.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt.h,
	  dlls/advapi32/crypt_des.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction002 (DES decrypt).

2006-05-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/surface.c:
	wined3d: Avoid a NULL dereference in RealizePalette.

2006-05-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c:
	wined3d: Render state additions and fixes.

	* dlls/wined3d/surface.c:
	wined3d: Nonpow2 repacking support for GetDC.

2006-05-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/swapchain.c:
	wined3d: Support for single buffering.

2006-05-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/Makefile.in, dlls/wined3d/device.c,
	  dlls/wined3d/surface_gdi.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineGDISurface.

2006-05-12  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::ProcessVertices.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_defs.h:
	rpcrt4: Add missing PKT_AUTH3 packet type.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Add infrastructure for send authentication data.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Forward RpcBindingSetAuthInfo to RpcBindingSetAuthInfoEx.

2006-05-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/tests/name.c:
	dnsapi: Add tests for DnsValidateName_A.

2006-05-14  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gphoto2.ds/gphoto2_i.h:
	gphoto2.ds: Fix a typo in a #warning, and slight rewording.  Fix grammaro
	in comment.

2006-05-13  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Added RPC_FC_ENUM16 encoding.

	* tools/widl/typelib_struct.h, tools/widl/write_msft.c:
	widl: res50 is number of impinfos. Fix its usage.

	* dlls/oleaut32/typelib.h, dlls/oleaut32/typelib2.c:
	oleaut32: res50 is number of impinfos. Fix its usage.

2006-05-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c, dlls/urlmon/tests/url.c:
	urlmon: Fix tests.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added support for navigation to application URLs.

	* dlls/mshtml/protocol.c, dlls/mshtml/tests/protocol.c:
	mshtml: Fix protocol tests on XP. Make Wine match XP implementation.

2006-05-13  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/ntdll/tests/port.c:
	ntdll: Fix endless loop in port test for users without admin rights.

2006-05-12  Francois Gouget <fgouget@free.fr>

	* dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/ui.c:
	gphoto2.ds: Spelling fix.

	* include/mprapi.h:
	mprapi: Add FIXME for the missing in6addr.h include.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Fix some conditional includes.
	Check for HAVE_UNISTD_H before including unistd.h.
	There is no HAVE_SYS_TYPES to check.
	Tweak the indentation of a few #include directives.

	* include/dmusici.h, include/rpcdce.h:
	include: Remove uneeded __RPC_FAR references.

	* tools/winapi/c_parser.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	winapi: Add support for APIENTRY.
	Factorize a couple of call convention matching regular expressions.

2006-05-12  Francois Gouget <fgouget@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Fix compilation with gcc 2.95.

2006-05-12  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix converting file name to Unicode.
	Fix converting the typelib file name to Unicode by using the correct
	buffer size.

2006-05-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/oid.c,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/encode.c,
	  dlls/crypt32/tests/main.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/tests/store.c:
	crypt32: Use the HRESULT synonyms for converted Win32 error codes.

2006-05-12  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Remove broken code for HTTP_QUERY_FLAG_COALESCE, which is unimplemented
	according to MSDN.

	* dlls/wininet/ftp.c:
	wininet: Check for null parameters in FtpSetCurrentDirectoryW.

2006-05-14  Mike McCormack <mike@codeweavers.com>

	* server/registry.c:
	server: Avoid a crash if a registry notify event has been set already.

2006-05-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/tgt_active.c:
	winedbg: Fixed regression for command 'bt all'.
	Don't print 'process has terminated' message when detaching from a
	process (or backtracing it).

2006-05-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/serial.c:
	ntdll: Fix serial timeout regression.

2006-05-11  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.13.

----------------------------------------------------------------
2006-05-10  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/toolhelp.c:
	kernel:	Fix CreateToolhelp32Snapshot tests on win2k.

2006-05-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/msc.c,
	  dlls/dbghelp/mscvpdb.h, dlls/dbghelp/path.c:
	dbghelp: SymFindFileInPath and PDB
	- implemented correct lookup when SymFindFileInPath is called to find
	a PDB file
	- added pdb_fetch_file_info to gather relevant information
	- when looking for a PDB file (from a .EXE or a .DLL), now using
	SymFindFileInPath to locate the PDB file with the correct
	information

	* dlls/dbghelp/module.c:
	dbghelp: Removed call to registered callback when unloading a module.
	First, native dbghelp doesn't do it, and it crashed windbg, likely
	because we got the undocumented arguments wrong.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymSearchW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymEnumSymbolsW.

	* dlls/dbghelp/symbol.c:
	dbghelp: Improved SymSearch (now using tag, index and address).

	* dlls/dbghelp/symbol.c:
	dbghelp: Factorize and simplify a bit symbol enumeration code.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/source.c, include/dbghelp.h:
	dbghelp: Stubbed SymGetSourceFileTokenW.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/symbol.c,
	  include/dbghelp.h:
	dbghelp: Implemented SymGetLineFromAddrW64.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymFromAddrW.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented SymGetModuleInfoW and SymGetModuleInfoW64.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Implemented SymLoadModuleExW.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, include/dbghelp.h:
	dbghelp: Implemented SymRegisterCallbackW64 and 64 -> 64W mapping function.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/path.c,
	  dlls/dbghelp/pe_module.c, include/dbghelp.h:
	dbghelp: SymInitializeW.
	- implemented SymInitializeW (and made SymInitialize call it)
	- implemented Sym{SG}etSearchPathW (and made Sym{SG}etSearchPath
	call them)
	- per process search path is now stored as unicode string

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: Updated spec file.

2006-05-10  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c:
	wined3d: Set pIndexData to 0 in DrawIndexedPrimitiveUP.

	* dlls/wined3d/volume.c, dlls/wined3d/wined3d_private.h:
	wined3d: Initialize volume format.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Share shader_dump_ins_modifiers().
	Share shader_dump_ins_modifiers(), and make vertex shaders use it.
	The saturate modifer (_sat) is valid on vs_3_0+, and it isn't being
	shown in the trace.

2006-05-10  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Fix wave test volume warning.
	Volume is only valid when sound card has volume support.

2006-05-11  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/dialogs.c:
	wininet: Fix a typo (spotted by Coverity).

	* dlls/advapi32/crypt_arc4.c:
	advapi32: Fix a typo (spotted by Peter Berg Larsen).

2006-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/defdlg.c, dlls/user/icontitle.c, dlls/user/mdi.c,
	  dlls/user/nonclient.c, dlls/user/winpos.c:
	user: Prefer SendMessageW over SendMessageA where possible.

	* dlls/x11drv/event.c, dlls/x11drv/winpos.c:
	x11drv: Prefer SendMessageW over SendMessageA where possible.

2006-05-10  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	winapi_check: Fix 'long int' parsing.
	Fix parsing of 'long int'.
	Simplify handling of spaces in a couple of regular expressions.

2006-05-10  Robert Shearman <rob@codeweavers.com>

	* dlls/amstream/regsvr.c, dlls/avifil32/regsvr.c, dlls/comcat/regsvr.c,
	  dlls/d3dxof/regsvr.c, dlls/ddraw/regsvr.c, dlls/dinput/regsvr.c,
	  dlls/dmband/regsvr.c, dlls/dmcompos/regsvr.c, dlls/dmime/regsvr.c,
	  dlls/dmloader/regsvr.c, dlls/dmscript/regsvr.c,
	  dlls/dmstyle/regsvr.c, dlls/dmsynth/regsvr.c, dlls/dmusic/regsvr.c,
	  dlls/dplayx/regsvr.c, dlls/dpnet/regsvr.c, dlls/dsound/regsvr.c,
	  dlls/dswave/regsvr.c, dlls/dxdiagn/regsvr.c,
	  dlls/hhctrl.ocx/regsvr.c, dlls/itss/regsvr.c, dlls/mlang/regsvr.c,
	  dlls/msi/regsvr.c, dlls/objsel/regsvr.c, dlls/ole32/regsvr.c,
	  dlls/oleaut32/regsvr.c, dlls/quartz/regsvr.c, dlls/shdocvw/regsvr.c,
	  dlls/shell32/regsvr.c, dlls/urlmon/regsvr.c:
	Check the return value from register_key_guid in all the DLL registering code.

2006-05-09  Bernd Buschinski <b.buschinski@web.de>

	* dlls/ntdll/file.c:
	ntdll: Stub implementation of FSCTL_LOCK_VOLUME/FSCTL_UNLOCK_VOLUME.

2006-05-09  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/tests/.gitignore, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdll/tests/port.c:
	ntdll: Add initial tests for the NT Ports API.

2006-05-10  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/Makefile.in, dlls/advapi32/advapi32.spec,
	  dlls/advapi32/crypt_arc4.c, dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction032 (arc4 encryption).

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_md4.c,
	  dlls/advapi32/tests/crypt_md4.c:
	advapi32: Implement and test SystemFunction007.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction001.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/tests/crypt_lmhash.c:
	advapi32: Implement and test SystemFunction008.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Cache the connection so we don't rebind on every call.

2006-05-10  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/moniker.c:
	ole32: Add a test for IMoniker_IsDirty.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Use the buffer passed in as an argument and don't increment
	the buffer in the MIDL_STUB_MESSAGE in the inner pointer
	marshalling/unmarshalling routines as these can be used for embedded
	pointers, which handle the allocating or finding of the buffer
	themselves. Do the incrementing in the outer
	NdrPointerMarshall/Unmarshall/BufferSize routines instead.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Align conformances and variances correctly, according the the DCE/RPC spec.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Move the writing and sizing of variances and conformances to common functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Correctly align the buffer to read/write array data to.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Correctly align the buffer before reading/writing structure data.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Rename NonEncapsulatedUnionSize to NdrNonEncapsulatedUnionMemorySize.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Remove unintuitive requirement to pass the required alignment boundary minus one into the alignment macros.

	* dlls/ole32/rpc.c:
	ole32: Exception handling shouldn't be needed around the call to IRpcStubBuffer_Invoke.
	It should have its own exception handler to catch any exceptions that are raised.

2006-05-10  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Correctly handle the case when the number of bytes in a BSTR is odd.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Support VT_SAFEARRAY in the typelib marshaler.
	Based on a patch by Rob Shearman.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Add a function to grow the marshal state buffer to a specified size.

2006-05-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/class.c, dlls/user/wnd16.c:
	user: Moved Get/SetClassLong16 to wnd16.c.

	* dlls/user/class.c, dlls/user/msg16.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Have WINPROC_GetProc16 allocate a new winproc if necessary.

	* dlls/user/user.exe.spec, dlls/user/winproc.c:
	user: Store the pointer to the winproc in the thunk structure.
	This allows simplifying the handling of 16-bit thunks.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h:
	user: Make the WINDOWPROCTYPE enum private to winproc.c.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h:
	user: Replace WINPROC_GetProcType by WINPROC_IsUnicode.

	* dlls/user/class.c, dlls/user/message.c, dlls/user/win.c,
	  dlls/user/winproc.c, dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Replace WINDOWPROCTYPE by a unicode flag in WINPROC_GetProc/AllocProc.

	* dlls/user/class.c, dlls/user/win.c, include/win.h:
	user: Add a WIN_ISUNICODE flag instead of relying on the winproc type.
	Also fix the initial value for the server is_unicode flag.

2006-05-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/baseshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Further split GLSL & ARB_v/f_program generation and allow GLSL functions to be called.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Modified the opcode tables (and struct) to include a pointer to a GLSL generator function.

	* dlls/wined3d/pixelshader.c:
	wined3d: Use GenerateShader in pixel shaders and remove old function.

	* dlls/wined3d/pixelshader.c:
	wined3d: Add GenerateShader function to pixel shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Use new GenerateShader function for vertex shaders.

	* dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Added new GenerateShader function for Vertex Shaders & declare generate_base_shader().

	* dlls/wined3d/baseshader.c:
	wined3d: Created generate_base_shader which will be shared by pixel & vertex shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Rename the TEMP variables in vertexshader.c to R from T for consistency.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Place # of textures, addresses, & temps used inside the baseShader struct to prepare for GenerateShader merge.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Further split up GenerateProgramArbHW for pixelshaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Move D3DSIO_M#x# vertex shader opcodes to a more standard function.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Move DCL, DEF operations out of Generate loop and into separate functions.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move program_dump_decl_usage into baseshader.

2006-05-10  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/advapi32/registry.c, dlls/advapi32/security.c, dlls/avifil32/api.c,
	  dlls/avifil32/avifile.c, dlls/avifil32/editstream.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/surface_main.c,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/msacm32/internal.c,
	  dlls/mshtml/hlink.c, dlls/msvfw32/msvideo_main.c,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/riched20/writer.c,
	  dlls/secur32/secur32.c, dlls/secur32/tests/main.c,
	  dlls/secur32/thunks.c, dlls/urlmon/umon.c, dlls/wined3d/query.c,
	  dlls/wininet/internet.c, dlls/wininet/urlcache.c,
	  dlls/winmm/winealsa/audio.c, dlls/winmm/wineesd/audio.c,
	  dlls/x11drv/xrender.c, programs/regedit/treeview.c,
	  programs/wineboot/wineboot.c, programs/winecfg/audio.c:
	janitorial: Remove redundant NULL pointer checks before HeapFree'ing them.
	Some HeapFree's are hidden behind macros. Found by smatch.

2006-05-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Clean up some dead code.

	* dlls/wined3d/pixelshader.c:
	wined3d: Break out texture instruction processing.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Break out arithmetic instruction processing.

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Merge register counting pass.

	* dlls/wined3d/vertexshader.c:
	wined3d: Make register counting pass the same.

2006-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c:
	wined3d: Update the DIB section's palette on GetDC.

	* dlls/wined3d/palette.c:
	wined3d: Update the device palette if the primary palette is changed.

	* dlls/wined3d/surface.c:
	wined3d: Implement WineD3DSurface palette methods.

	* dlls/wined3d/surface.c:
	wined3d: Implement GetFlipStatus and GetBltStatus.

	* dlls/wined3d/surface.c:
	wined3d: Implement IWineD3DSurface::Flip.

2006-05-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Partially implement CertGetIssuerCertificateFromStore.

	* dlls/crypt32/cert.c:
	crypt32: Implement CRYPT_VERIFY_CERT_SIGN_ISSUER_CERT in CryptVerifyCertificateSignatureEx.

2006-05-09  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/nt.c:
	ntdll: Return STATUS_NOT_IMPLEMENTED for the unimplemented port functions.

2006-05-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.h:
	shell32: Support BFFM_SETSELECTION[AW] and BFFM_SETEXPANDED for SHBrowseForFolder.

2006-05-09  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/comm.c:
	kernel: Comm_CheckEvents: Only warn for non-empty transmitter with EV_TXEMPTY flag set.
	Noticed by Dan Armbrust.

2006-05-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: We really need to flush the display when destroying a window.

2006-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: EscapeCommFunction & associated IOCTLs
	- implemented ntdll's serial IOCTL: CLR_DTR, CLR_RTS, SET_DTR,
	SET_RTS, SET_XOFF, SET_XON, RESET_DEVICE
	- implemented kernel32.EscapeCommFunction on top of them

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetupComm & SET_QUEUE_SIZE
	- stubbed out ntdll's serial IOCTL SET_QUEUE_SIZE
	- implemented kernel32.SetupComm on top of it

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: [SG]etCommTimeout, SERIAL_[GS]ET_TIMEOUT
	- implemented ntdll's COMM IOCTL GET_TIMEOUTS, SET_TIMEOUTS
	- implemented kernel32.GetCommTimeout and SetCommTimeout on top of them

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_GET_CHARS
	- implemented SERIAL_GET_CHARS ioctl
	- made use of it in kernel32.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_SERIAL_GET_HANDFLOW
	- implemented SERIAL_GET_HANDFLOW ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & SERIAL_GET_LINE_CONTROL
	- implemented SERIAL_GET_LINE_CONTROL ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: GetCommState & IOCTL_GET_BAUD_RATE
	- implemented SERIAL_GET_BAUD_RATE ioctl
	- made use of it in kernel.GetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_CHARS
	- implemented ntdll's serial IOCTL SET_CHARS
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_HANDFLOW
	- implemented ntdll's serial IOCTL SET_HANDFLOW
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_LINE_CONTROL
	- implemented ntdll's serial IOCTL SET_LINE_CONTROL
	- used this IOCTL in kernel32.SetCommState

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll/kernel32: SetCommState & IOCTL_SET_BAUD_RATE
	- created dump_dcb to print out DCB information
	- implemented ntdll's serial IOCTL SET_BAUD_RATE
	- used this IOCTL in kernel32.SetCommState

2006-05-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::SetColorKey.

	* dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::IsLost and Restore.

	* dlls/wined3d/drawprim.c, dlls/wined3d/wined3d_private.h:
	wined3d: rhw vertex fixup.
	Change the rhw=0 range to ]1e-8,1e-8[ and move the value to a constant
	in wined3d_types.h

2006-05-09  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/baseshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Share get_opcode.

2006-05-09  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	winmm: Print out more info on failed test.
	Print out more info on failed test.  Looks like there is a bug in ALSA
	OSS emulation where it is returning a mid-sample position.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/record.c, dlls/dnsapi/tests/record.c:
	dnsapi: The ttl value should be ignored when comparing dns records.

2006-05-09  David Lichterman <laviddichterman@gmail.com>

	* dlls/mciwave/Makefile.in:
	mciwave: Fix make install error.

2006-05-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/defdlg.c, dlls/user/winproc.c, dlls/user/winproc.h:
	user: Added specific winproc functions for calling dialog procedures.

	* dlls/user/winproc.c:
	user: Use handles for 32-bit window procedures instead of pointers into the bss segment.

	* dlls/user/class.c:
	user: Always set the correct class winproc depending on the A/W type.

	* dlls/user/winproc.c:
	user: Remove some redundant NULL pointer checks.

	* dlls/user/msg16.c:
	user: Make sure to always pass a 16-bit pointer to CallWindowProc16.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Separate the 16 and 32-bit versions of WINPROC_AllocProc.

	* dlls/user/class.c, dlls/user/win.c, dlls/user/winproc.c,
	  dlls/user/winproc.h, dlls/user/wnd16.c:
	user: Separate the 16 and 32-bit versions of WINPROC_GetProc.

	* dlls/user/win.c:
	user: Fixed offset check for the DWLP_DLGPROC case in SetWindowLong.

	* dlls/user/win.c:
	user: Separate Get/SetWindowLong16 implementation from the 32-bit one.

	* dlls/kernel/except.c:
	kernel: Added work-around in UnhandledExceptionFilter for no exec protections.

2006-05-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/ntdll/virtual.c:
	ntdll: Make the section with AddressOfEntryPoint in it executable.

2006-05-07  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi/font.c, dlls/gdi/gdi32.spec:
	gdi32: Add stub for GetCharWidthI and GetFontUnicodeRanges.

	* include/wingdi.h:
	gdi32: Add defines for GLYPHSET and WCRANGE.

2006-05-09  Mike McCormack <mike@codeweavers.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix a warning when opengl headers are missing.

2006-05-09  Tomas Carnecky <tom@dbservice.com>

	* dlls/opengl32/wgl.c:
	opengl: Properly use glXQueryDrawable() to get the Visual ID.

2006-05-08  Phil Costin <philcostin@hotmail.com>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	wined3d: Add check for GL Shading Language 100 Extension.

2006-05-08  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Clean up per version shader limits code.

	* dlls/wined3d/Makefile.in, dlls/wined3d/baseshader.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Addline cleanup.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/query.c:
	dnsapi: Partially implement DnsQueryConfig.

2006-05-09  Saulius Krasuckas <saulius2@ar.fi.lt>

	* tools/wine.inf:
	wine.inf: Install comctl32.dll as fake DLL.

2006-05-08  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c:
	crypt32: Simplify OID decoding
	Use a more direct function to decode OIDs, instead of the bizarre
	wrapper.

2006-05-08  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c, dlls/winmm/winmm.c:
	winmm: Check waveOutGetVolume parameter.

2006-05-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/sane.ds/rsrc.rc, dlls/sane.ds/sane_Nl.rc:
	sane.ds: Added Dutch resources.

	* dlls/gphoto2.ds/gphoto2_Nl.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added Dutch resources.

2006-05-09  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/gphoto2.ds/gphoto2_Fr.rc, dlls/gphoto2.ds/rsrc.rc:
	gphoto2.ds: Added French resources.

2006-05-09  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/twain_32/dsm_ctrl.c:
	twain_32: Add missing HeapFree's on error patch (found by smatch).

2006-05-08  Marcus Meissner <marcus@jet.franken.de>

	* DEVELOPERS-HINTS, documentation/PACKAGING:
	Some documentation changes for twain split.

2006-05-09  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/msacm32.drv/.gitignore,
	  dlls/msacm32.drv/Makefile.in, dlls/msacm32.drv/msacm32.drv.spec,
	  dlls/msacm32.drv/wavemap.c, dlls/winmm/wavemap/.gitignore,
	  dlls/winmm/wavemap/Makefile.in, dlls/winmm/wavemap/msacm.drv.spec,
	  dlls/winmm/wavemap/wavemap.c, dlls/winmm/winemm.h:
	msacm32.drv: Renamed msacm.drv to msacm32.drv, and moved the directory to the top-level.

	* configure, configure.ac, dlls/Makefile.in, dlls/mciwave/.gitignore,
	  dlls/mciwave/Makefile.in, dlls/mciwave/mciwave.c,
	  dlls/mciwave/mciwave.spec, dlls/winmm/mciwave/.gitignore,
	  dlls/winmm/mciwave/Makefile.in, dlls/winmm/mciwave/mciwave.c,
	  dlls/winmm/mciwave/mciwave.drv.spec, tools/wine.inf:
	mciwave: Renamed mciwave.drv to mciwave.dll, and moved the directory to the top-level.

2006-05-08  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, dlls/Makefile.in, dlls/gphoto2.ds/.gitignore,
	  dlls/gphoto2.ds/Makefile.in, dlls/gphoto2.ds/capability.c,
	  dlls/gphoto2.ds/ds_ctrl.c, dlls/gphoto2.ds/ds_image.c,
	  dlls/gphoto2.ds/gphoto2.ds.spec, dlls/gphoto2.ds/gphoto2_En.rc,
	  dlls/gphoto2.ds/gphoto2_i.h, dlls/gphoto2.ds/gphoto2_main.c,
	  dlls/gphoto2.ds/resource.h, dlls/gphoto2.ds/rsrc.rc,
	  dlls/gphoto2.ds/ui.c, include/config.h.in:
	gphoto.ds: Implemented a libgphoto2 import driver, based on the sane.ds driver.
	Wrote a GUI import dialog.
	With help from Aric Stewart.

	* configure, configure.ac, dlls/Makefile.in, dlls/sane.ds/.gitignore,
	  dlls/sane.ds/Makefile.in, dlls/sane.ds/capability.c,
	  dlls/sane.ds/ds_ctrl.c, dlls/sane.ds/ds_image.c,
	  dlls/sane.ds/resource.h, dlls/sane.ds/rsrc.rc,
	  dlls/sane.ds/sane.ds.spec, dlls/sane.ds/sane_De.rc,
	  dlls/sane.ds/sane_En.rc, dlls/sane.ds/sane_Fi.rc,
	  dlls/sane.ds/sane_Fr.rc, dlls/sane.ds/sane_Ko.rc,
	  dlls/sane.ds/sane_No.rc, dlls/sane.ds/sane_i.h,
	  dlls/sane.ds/sane_main.c, dlls/sane.ds/ui.c,
	  dlls/twain_32/.gitignore, dlls/twain_32/Makefile.in,
	  dlls/twain_32/capability.c, dlls/twain_32/ds_audio.c,
	  dlls/twain_32/ds_ctrl.c, dlls/twain_32/ds_image.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/resource.h,
	  dlls/twain_32/rsrc.rc, dlls/twain_32/twain32_main.c,
	  dlls/twain_32/twain_De.rc, dlls/twain_32/twain_En.rc,
	  dlls/twain_32/twain_Fi.rc, dlls/twain_32/twain_Fr.rc,
	  dlls/twain_32/twain_Ko.rc, dlls/twain_32/twain_No.rc,
	  dlls/twain_32/twain_i.h, dlls/twain_32/ui.c:
	twain_32: Split out the sane specific parts from twain_32 code.
	Autoprobing via DG_CONTROL/DAT_IDENTITY/MSG_GET.

	* dlls/twain_32/twain.h, include/Makefile.in, include/twain.h:
	twain_32: Moved twain.h to the include directory.

2006-05-08  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Preserve the 'auto' features before copying over the masked unmarshaled ones.

2006-05-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/antimoniker.c:
	ole32: The type check in AntiMonikerImpl_CommonPrefixWith should be for anti-monikers, not item-monikers.

	* dlls/ole32/classmoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Implement several class moniker functions using the description provided on MSDN.

	* dlls/ole32/compobj_private.h, dlls/ole32/regsvr.c:
	ole32: Remove duplicated CLSIDs.

	* dlls/ole32/Makefile.in, dlls/ole32/classmoniker.c, dlls/ole32/moniker.c,
	  dlls/ole32/moniker.h, dlls/ole32/oleproxy.c,
	  dlls/ole32/tests/moniker.c:
	ole32: Add an implementation of class monikers.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for IsRunning, GetTimeOfLastChange, BindToObject, BindToStorage and Inverse.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix regression caused by an earlier patch that removed the
	check for the composite moniker having only one moniker in it. In this
	case, return the one moniker and free the memory associate with the
	composite moniker.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix infinite recursion in CompositeMonikerImpl_GetTimeOfLastChange by handling pmkToLeft properly.
	Fix a typo where CompositeMonikerImpl_GetTimeOfLastChange was called
	instead of the virtual implementation of it on mostRightMk.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix infinite recursion in CompositeMonikerImpl_BindToStorage.

2006-05-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Implement and test DnsRecordSetCompare.

2006-05-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput8/Makefile.in, dlls/dinput8/dinput8_main.c:
	dinput8: DllGetClassObject support.

2006-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DSurface::GetDC and IWineD3DSurface::ReleaseDC.

2006-05-01  Tomas Carnecky <tom@dbservice.com>

	* dlls/x11drv/init.c:
	x11drv: Return correct PBuffer drawable.

2006-04-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Don't duplicate handle in _get_osfhandle.

2006-04-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Don't append '\r' to the last paragraph in EM_GETTEXTEX.

2006-05-07  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/setupapi/tests/stringtable.c:
	setupapi: Improve unit tests for case sensitivity in string tables.

2006-05-01  Mike Hearn <mike@plan99.net>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Add StgCreateFile test and conformance fix.

2006-05-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/compositemoniker.c:
	ole32: Properly initialize hash value in CompositeMonikerImpl_Hash.

2006-05-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compositemoniker.c:
	ole32: Fix typos in CompositeMonikerImpl_BindToObject and CompositeMonikerImpl_BindToStorage.

	* dlls/ole32/compositemoniker.c:
	ole32: Create moniker enumerator with an initial reference count.

	* dlls/ole32/tests/moniker.c:
	ole32: Test moniker display names.

	* dlls/ole32/tests/moniker.c:
	ole32: Add a test for IMoniker_IsDirty.

	* dlls/ole32/tests/moniker.c:
	ole32: Test unmarshaling the moniker instead of just releasing the marshaled data.

	* dlls/ole32/compositemoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Make the size returned by CompositeMonikerImpl_GetMarshalSizeMax match that returned by native.

	* dlls/ole32/marshal.c:
	ole32: Add on the size of the whole OBJREF structure in the case of custom marshaling.

	* dlls/ole32/compositemoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Fix the algorithm used in CompositeMonikerImpl_Hash to match native.

	* dlls/ole32/itemmoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Fix the algorithm used in ItemMonikerImpl_Hash to match native.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for generic composite monikers.

	* dlls/ole32/compositemoniker.c, dlls/ole32/moniker.h,
	  dlls/ole32/oleproxy.c:
	ole32: Add a class factory for composite monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Allocate memory for the generic composite moniker in CompositeMonikerImpl_Construct.
	Don't leak memory in the case of newCompositeMoniker->tabLastIndex == 1,
	which can't happen anyway.
	Allow construction of a moniker with no sub-monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Implement IMarshal for composite monikers.

	* dlls/ole32/compositemoniker.c:
	ole32: Release all existing monikers before loading the state.

	* dlls/ole32/compositemoniker.c:
	ole32: EnumMonikerImpl_Next should add a reference to the monikers it returns to the caller.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix CompositeMonikerImpl_GetSizeMax to match the data written by CompositeMonikerImpl_Save.

	* dlls/ole32/compositemoniker.c:
	ole32: Fix the loop in CompositeMonikerImpl_Hash, as IEnumMoniker_Next
	will return S_FALSE when there are no more monikers left to enumerate.

	* dlls/ole32/compositemoniker.c:
	ole32: Implement CompositeMonikerROTDataImpl_GetComparisonData.

	* dlls/ole32/compositemoniker.c:
	ole32: The unknown constant at the start of the persisted data is the number of monikers in the generic composite.
	Fix the pointer passed into IEnumMoniker_Release in CompositeMonikerImpl_Save.

	* dlls/ole32/antimoniker.c, dlls/ole32/tests/moniker.c:
	ole32: Add a test for anti monikers. Fix AntiMonikerImpl_Hash and AntiMonikerROTDataImpl_GetComparisonData to pass the tests.

	* dlls/ole32/antimoniker.c, dlls/ole32/moniker.h, dlls/ole32/oleproxy.c:
	ole32: Support marshaling of anti monikers.

	* dlls/ole32/regsvr.c:
	ole32: Register CLSID_CompositeMoniker.

	* dlls/ole32/regsvr.c:
	ole32: Register CLSIDs for all OLE monikers.

	* dlls/ole32/tests/moniker.c:
	ole32: Add tests for item moniker.

	* dlls/ole32/tests/moniker.c:
	ole32: Make class moniker test more generic and test more properties.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Automatically resolve the endpoint.

2006-05-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix possible buffer overflow.
	Increase size of passed buffer to print into.

2006-04-30  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptTextOut functionality and restructure tests.

2006-04-28  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexshader.c:
	wined3d: Eliminate duplicate function: vshader_program_dump_param().

2006-04-28  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Share get_register_code().

2006-04-26  Thomas Kho <tkho@ucla.edu>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Fix behavior when selecting disabled menu items.

	* dlls/user/defwnd.c, dlls/user/tests/menu.c:
	user: Allow menu WndProc to recognize VK_[LR]MENU.

2006-04-28  Thomas Kho <tkho@ucla.edu>

	* dlls/user/tests/menu.c:
	user: Extend menu conformance test.

2006-05-06  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::GetPitch.

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add IWineD3DDevice::DrawPrimitiveStrided.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add some surface flags.

2006-05-07  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetVarDesc_Proxy and friends.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Change CLEANLOCALSTORAGE flag constants to their character
	constant equivalents.  It's now obvious why these were chosen.  Should
	be a NOP.

2006-05-08  James Hawkins <truiken@gmail.com>

	* include/winnt.h:
	include: Add missing SECURITY_QUALITY_OF_SERVICE defines.

2006-05-08  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/user/resources/user32_Ko.rc:
	user32: Updated Korean resource.

2006-05-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Fix audio crash when no drivers are available.

	* dlls/winmm/wineoss/audio.c:
	wineoss: Missing mixer fixes.
	Don't list volume in capabilities when mixer is missing.

	* dlls/winmm/tests/Makefile.in, dlls/winmm/tests/wave.c:
	winmm: More wave callback tests.
	Add tests for CALLBACK_FUNCTION and CALLBACK_THREAD.  The only
	callback type not tested now is CALLBACK_WINDOW.

2006-05-08  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/comctl32/comctl32.h:
	comctl32: Increase FILEVERSION up to 5.81.4704.1100.

2006-05-06  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/shell32/shlview.c:
	shell32: Don't use uninitialized item.mask in shlview.

2006-05-07  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/source.c:
	dbghelp: Stub for SymGetSourceFileToken.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c:
	dbghelp: Base and symbols.
	- report the correct image base for a symbol which is
	seen as being in a builtin PE module, whilst its debug
	information is gotten from an ELF module
	- module_get_debug now returns a pair of modules
	(the requested that has to be presented back to the client
	and the effective one, which contains the debug info)
	- reworked SymFromName in order to provide also the revelant
	module base address

2006-05-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/dinput/dinput_main.c:
	dinput: Fix Initialize return value.

2006-05-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/user/tests/wsprintf.c:
	user32: Added tests for CharUpper and CharLower.

	* dlls/ole32/compobj.c:
	ole32: Fixed typo in debug statement.

2006-05-06  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/gdi/font.c:
	gdi: A-to-W conversion should be font-independent.

2006-05-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Make some internal functions and variables static, remove
	some unneeded prototypes.

	* dlls/comctl32/propsheet.c:
	comctl32: Add support for PSP_USEHEADERTITLE, PSP_USEHEADERSUBTITLE
	and PSP_HIDEHEADER in CreatePropertySheetPageA/W, handle resource ids.

	* dlls/comctl32/propsheet.c:
	comctl32: psInfo->proppage[index].pszText is always initialized to a
	proper value regardless of PSP_USETITLE, use it unconditionally.

2006-05-04  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: DelDirs should only remove a directory if it's empty.

	* dlls/advpack/install.c:
	advpack: The only flag we don't handle is RSC_FLAG_UPDHLPDLLS.

2006-05-01  Mike Hearn <mike@plan99.net>

	* dlls/ntdll/sec.c:
	ntdll: Fix heap corruption in RtlDeleteAce.

2006-04-26  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Separate pshader/vshader tables.

2006-05-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Fix failures in test_DEVMODE.

2006-05-05  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix VARIANT_UserFree.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/variant.c:
	oleaut32: Remove weird attempt to clear VT_VARIANT.
	Add some tests.

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Rewrite VARIANT user marshaling.

2006-05-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.spec, dlls/dnsapi/name.c:
	dnsapi: Implement DnsValidateName_{A,UTF8,W}.

2006-05-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c:
	dnsapi: Implement DnsRecord{CopyEx,ListFree,SetCopyEx}.

	* dlls/dnsapi/tests/.gitignore, dlls/dnsapi/tests/Makefile.in,
	  dlls/dnsapi/tests/record.c:
	dnsapi: Add tests for DnsRecordCompare.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/record.c:
	dnsapi: Implement DnsRecordCompare.

2006-05-01  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Use getaddrinfo to get the sockaddr.
	Use getaddrinfo to get the sockaddr to use for connecting to a remote
	server as Connection->NetworkAddr may be a hostname as well. Use a
	loop to support both IP and IPv6.

	* dlls/ole32/compobj.c:
	ole32: Remove the fixme printed if CoGetClassObject fails in CoCreateInstance.
	Remove the fixme printed if CoGetClassObject fails in
	CoCreateInstance, because we already print an error in all cases and
	the error more accurately pin-points the source of the problem.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement NdrConformantVaryingArrayFree.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Dereference the pointer if necessary only after doing the
	pointer checks and writing the pointer ID to the wire.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Add a stub for RpcBindingSetOption.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve the traces in the pointer functions.

2006-04-28  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/mlang/mlang.c:
	mlang: Partially implemented ConvertStringEx.

2006-04-25  Juris Smotrovs <juris.smotrovs@sets.lv>

	* dlls/user/tests/msg.c:
	user: Test cases demonstrating position changes for MDI children.

2006-04-25  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/treeview.c:
	comctl32: Update first visible when appropiate in the TVI_SORT case.

2006-04-24  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/drawprim.c:
	wined3d: Remove dead shader code.

2006-04-26  Robert Shearman <rob@codeweavers.com>

	* dlls/setupapi/parser.c:
	setupapi: Fix parsing of UCS-16 files.
	Fix parsing of UCS-16 files prefixed with the Unicode BOM. Based on a
	patch by Hervé Poussineau.

2006-05-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/stg_stream.c:
	ole32: IPersistStream is also implemented by any object that implements IStream.

	* dlls/ole32/storage32.c:
	ole32: Fix typos in StgCreateStorageEx and StgOpenStorageEx.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: STGM_PRIORITY allows other IStorage objects to be opened in transacted mode with read/write access.

	* dlls/oleaut32/typelib.c:
	oleaut32: Check the return value from VariantCopy when copying values
	for VT_VARIANT typed parameters for ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut32: Support values being passed into VT_VARIANT|VT_BYREF typed parameters in ITypeInfo::Invoke.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Check that the storage was opened with write access before creating a new stream or sub-storage.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Copy the mode flags into the STATSTG structure in IStorage::Stat.
	Copy the mode flags into the STATSTG structure in IStorage::Stat. Don't
	store the STGM_CREATE flag in openFlags, since it is only relevant when
	opening the stream and the tests show that it isn't returned in the
	STATSTG structure.

	* dlls/ole32/tests/storage32.c:
	ole32: Add tests for IStorage::Stat.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix access right check for opening and creating streams and storages.
	Check the access mode for opening and creating streams and storages
	doesn't exceed the access rights the current storage was opened with,
	not the parent storage.

	* dlls/ole32/stg_stream.c:
	ole32: Add more tracing for reading and writing storage streams.
	Add more tracing for read and write operations and warn in the case of
	failure.

	* dlls/ole32/tests/storage32.c:
	ole32: Add tests for sub-storages and creating streams.
	Replace a test that fails on NT and with DCOM95 DLLs with a test that
	ensures access permissions are checked correctly for sub-storages and
	creating streams.

	* dlls/ole32/tests/storage32.c:
	ole32: Add a storage test for reading and writing of streams that have
	had their parent storage released.

	* dlls/ntdll/nt.c:
	ntdll: Fix size check for NtQueryInformationToken(TokenGroups).
	For NtQueryInformationToken(TokenGroups), don't do a size check before
	the server call, as we don't know how many SIDs there are to return
	and hence the needed buffer size.

2006-05-03  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Alignment fixes for safearrays.

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Fix tests under win2k.

2006-05-02  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c:
	oleaut32: Split out the SAFEARRAY and BSTR tests so that they can be used in the upcoming VARIANT tests.

2006-04-29  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix BSTR marshaling to be wire compatible with Windows.

2006-05-03  Andrew Ziem <ahziem1@mailbolt.com>

	* dlls/setupapi/tests/stringtable.c:
	setupapi: Add case sensitivity string table tests.

2006-05-02  Troy Rollo <wine@troy.rollo.name>

	* dlls/gdi/font.c:
	gdi: Fix GetTextExentExPointW to return values consistent with GetTextExtentPointW.

2006-05-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Fix test for GetPrinterDriver.

2006-05-01  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/kernel/sync.c, dlls/ntdll/debugbuffer.c, dlls/ntdll/reg.c,
	  dlls/ntdll/thread.c:
	Don't check pointers for NULL before RtlFreeHeap. It is redundant.

	* dlls/secur32/secur32.c:
	secur32: Missing LeaveCriticalSection on error paths.

2006-04-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Don't fail if the dll to register doesn't exist.

2006-04-30  Mike McCormack <mike@codeweavers.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for IUnknown_ProfferService.

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Add a stub implementation for IUnknown_QueryServiceExec.

	* dlls/ole32/stg_stream.c:
	ole32: Return STG_E_REVERTED when a stream's parent storage has been closed.

2006-04-30  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added some comments.

2006-04-29  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_ToolBar implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_StatusBar implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_AddressBar implementation.

2006-04-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser::[get|put]_MenuBar implementation.

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_HWND implementation.

	* dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added [get|put]_Visible implementation.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Fix GetMiscStatus implementation.

2006-04-25  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/palette.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: QueryInterface corrections.

2006-04-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/secur32/ntlm.c:
	secur32: Add partial support for ISC_REQ_ALLOCATE_MEMORY in the NTLM security provider.

	* dlls/secur32/ntlm.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/secur32/tests/main.c:
	secur32: Fix some wrong assumptions in the NTLM test case, make it pass in XP SP2 and Wine.

	* configure, configure.ac, dlls/Makefile.in, dlls/mprapi/.gitignore,
	  dlls/mprapi/Makefile.in, dlls/mprapi/mprapi.c,
	  dlls/mprapi/mprapi.spec, include/Makefile.in, include/mprapi.h:
	Add a stub implementation of mprapi.dll.

2006-04-27  Bill Medland <billmedland@mercuryspeed.com>

	* libs/wpp/ppl.l, libs/wpp/wpp_private.h:
	wpp: Support long long constants if configure says long long is available

2006-04-27  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/tests/input.c:
	user: tests: Change INPUT to TEST_INPUT, fix union usage.

2006-04-23  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/vertexshader.c:
	wined3d: Vertex Shader regtype cleanups.

2006-04-22  Dan Kegel <dank@kegel.com>

	* dlls/msi/source.c:
	msi: Fix missing case in MsiSourceListAddSourceEx.

2006-04-28  James Hawkins <truiken@gmail.com>

	* dlls/ole32/storage32.c:
	ole32: StorageImpl_GetROBigBlock can return NULL so check for NULL before doing a memcpy.

	* dlls/advpack/install.c:
	advpack: Implement the DelDirs command.

	* dlls/advpack/install.c:
	advpack: Implement the CheckAdminRights option.

	* dlls/advpack/install.c:
	advpack: Implement the RunPreSetupCommands command.

	* dlls/advpack/install.c:
	advpack: INF install is implemented so fix the documentation.

	* dlls/advpack/install.c:
	advpack: Implement the PerUserInstall command.

	* dlls/advpack/install.c:
	advpack: Leave room for the NULL terminator in the working_dir string.

	* dlls/advpack/install.c:
	advpack: NULL-terminate the source path.

	* dlls/advpack/install.c:
	advpack: Return the hresult in ExecuteCabW.

	* dlls/advpack/reg.c:
	advpack: Clean up the formatting of RegInstall to match the rest of the file.

	* dlls/advpack/reg.c:
	advpack: Perform an Advanced INF-level install in RegInstall.

	* dlls/advpack/reg.c:
	advpack: Factor out writing predefined strings into write_predefined_strings.

	* dlls/advpack/advpack.c:
	advpack: Ignore the return value from the OCX registration.

2006-04-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/search.c:
	wldap32: Document the search functions.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/kernel/kernel_main.c:
	kernel: Remove no longer needed includes.

2006-04-21  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/tests/.gitignore, dlls/advapi32/tests/Makefile.in,
	  dlls/advapi32/tests/lsa.c:
	advapi32: Add some lsa tests.

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaClose return value.

2006-04-29  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/access.c:
	netapi32: Implement NetUserModalsGet level 2.

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Add DirectSoundBuffer_Lock tests.

2006-04-28  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/primary.c:
	dsound: Check DirectSoundBuffer_Lock parameters.
	Check DirectSoundBuffer_Lock parameters and return an error (like
	Windows) rather than fixing up the parameters.

2006-04-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of connection points.

	* dlls/mshtml/conpoint.c:
	mshtml: Added GetConnectionInterface implementation.

	* dlls/mshtml/conpoint.c:
	mshtml: Added GetConnectionPointContainer implementation.

	* dlls/mshtml/conpoint.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added stub implementation of connection points.

	* dlls/mshtml/Makefile.in, dlls/mshtml/conpoint.c, dlls/mshtml/htmldoc.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IConnectionPointContainer stub implementation.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/nsiface.idl:
	mshtml: Added get_body implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlbody.c,
	  dlls/mshtml/htmltextcont.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLTextContainer stub implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added IHTMLTextContainer declaration.

2006-04-28  Fatih Asici <fasici@linux-sevenler.org>

	* fonts/ms_sans_serif.sfd:
	fonts: Add missing Latin glyph to ms_sans_serif.

	* fonts/system.sfd:
	fonts: Add some missing Latin glyphs to System.

	* fonts/courier.sfd:
	fonts: Add some missing Latin glyphs to Courier.

2006-04-28  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetDocumentation_Proxy/Stub.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetFuncDesc_Proxy and friends.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement GetTypeAttr_Proxy and friends.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Support for non-encapsulated unions.

	* dlls/gdi/freetype.c:
	gdi32: FcPatternGet( FC_FILE ) only returns the basename as of fontconfig 2.3.92 .
	FcPatternGetString( FC_FILE ) returns the whole path.  Go figure.

2006-04-22  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/server.c,
	  tools/widl/widl.c, tools/widl/widl.h, tools/widl/widl.man.in:
	widl: Implement 'oldnames' option.

	* tools/widl/typegen.c:
	widl: Fix a typo.

2006-04-26  Robert Shearman <rob@codeweavers.com>

	* server/thread.c:
	server: Threads should start off without having an impersonation token.

	* dlls/advapi32/security.c:
	advapi32: Implement the majority of ImpersonateLoggedOnUser.

	* dlls/wininet/internet.c:
	wininet: Initialise the LPWITHREADERROR structure after it has been allocated.

	* include/ndrtypes.h:
	include: Copy some format character types from wine/rpcfc.h to
	ndrtypes.h and change them into an enumeration.

2006-04-28  Mike McCormack <mike@codeweavers.com>

	* include/rpcdce.h:
	rpcrt4: Add some defines.

2006-04-26  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Add stub implementations for RPC authentication functions.

	* dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	wininet: Fix peeking of http data with a nul byte in it.

	* dlls/msi/package.c:
	msi: Use the source name of the msi package when it fails to copy.

	* programs/msiexec/msiexec.c:
	msiexec: Force using /i file.msi, some programs pass properties without an =.

2006-04-25  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/ole2.c:
	ole32: Store drop targets in a standard list.

2006-04-22  Robert Reif <reif@earthlink.net>

	* dlls/netapi32/tests/access.c:
	netapi32: Add minimal NetUserModalsGet test.

2006-04-22  András Kovács <andras@csevego.net>

	* programs/regedit/Hu.rc, programs/regedit/rsrc.rc:
	regedit: Translation to Hungarian.

	* programs/wordpad/Hu.rc, programs/wordpad/rsrc.rc:
	wordpad: Translation to Hungarian.

	* documentation/README.hu:
	Translated README file to Hungarian.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/parser.y:
	widl: Fix a typo.

	* include/exdisp.idl, include/mshtml.idl:
	include: Added missing importlib.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* server/mapping.c:
	server: Ignore the SizeOfHeaders field and compute the correct size ourselves.

2006-04-21  Jacek Caban <jacek@codeweavers.com>

	* tools/widl/parser.y, tools/widl/typelib.c, tools/widl/typelib.h:
	widl: Added importlib parsing code.

	* dlls/shdocvw/iexplore.c:
	shdocvw: Don't create IE default window in embedding mode.

	* dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Use InternetExplorer object in create_ie_window.

2006-04-21  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Invalid sockets should have a value of -1.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/ppy.y:
	wpp: Fixed typo in long long constants handling.

2006-04-20  Bill Medland <billmedland@mercuryspeed.com>

	* libs/wpp/ppl.l:
	wpp: Implement long long constant parsing.

2006-04-19  Hans Leidekker <hans@it.vu.nl>

	* include/windns.h:
	dnsapi: Add a couple of macros and prototypes.

2006-04-21  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/device.c:
	wined3d: Fix mipmap level count.

	* dlls/wined3d/pixelshader.c:
	wined3d: Improve/implement D3DSIO_TEX.
	- unify per-version cases into a single sequence
	- make use of get_register_name() for the destination register
	- ignore destination write mask - it's only allowed on 2.0+ shaders,
	and only the default mask is allowed there (xyzw)
	- enable swizzle on texld 1.4 (it works together with dw/dz modifiers)
	- implement for shaders 2.0-3.0

	* dlls/wined3d/utils.c:
	wined3d: Texture format corrections.
	- add missing GL type and make GL cfg entries for A16B16G16R16
	- correct L16 type to UNSIGNED_SHORT (..16 = short, not byte)
	- change internal format for X8R8G8B8 from GL_RGB to GL_RGB8 which
	seems more correct

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c:
	wined3d: Correct vtrace usage.

2006-04-21  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add support for the ncacn_ip_tcp transport layer.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Add a stub transport layer for ncacn_ip_tcp.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Hide the details of the rpc transport mechanism.

	* dlls/rpcrt4/rpc_binding.h, dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Abstract RPCRT4_SpawnConnection.

	* dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Move the connected check inside the named pipe code.

	* dlls/rpcrt4/Makefile.in, dlls/rpcrt4/rpc_binding.c,
	  dlls/rpcrt4/rpc_transport.c:
	rpcrt4: Split the transport layer into a different file.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Allocate RpcServerProtseq in a single place.

2006-04-21  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Fix return codes of ScriptGetFontProperties + tests.

2006-04-20  Robert Reif <reif@earthlink.net>

	* dlls/advapi32/lsa.c:
	advapi32: Fix LsaQueryInformationPolicy return values.

2006-04-21  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/palette.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DPalette.

2006-04-20  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for unique pointers to strings.

2006-04-20  Bill Medland <billmedland@mercuryspeed.com>

	* include/poppack.h, include/pshpack1.h, include/pshpack2.h,
	  include/pshpack4.h, include/pshpack8.h:
	include: Expand pack nesting from 3 to 15 levels.

2006-04-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/freetype.c:
	gdi: Added WineEngGetCharABCWidthsI stub for the non-freetype case.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel_main.c:
	kernel: Make GetTickCount call NtGetTickCount.

2006-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/time.c:
	ntdll: Added NtGetTickCount implementation.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/class.c:
	user: Don't return CLASS_OTHER_PROCESS when modifying a class.
	Based on a patch by qingdoa daoo.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Abstract the transport layer functionality.

2006-04-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Implement LaunchINFSectionW.

	* dlls/advpack/install.c:
	advpack: Implement ExecuteCabW.

	* dlls/advpack/install.c:
	advpack: Implement the RunPostSetupCommands callback.

	* dlls/advpack/advpack_private.h, dlls/advpack/install.c:
	advpack: Implement the RegisterOCXs callback.

2006-04-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Set defaults for ScriptGetFontProperties.
	Set defaults similar to Win XP for Kashida and set the default char in
	ScriptGetFontProperties.

	* dlls/usp10/usp10.c:
	usp10: Remove the need to pass chars to ScriptPlace.

2006-04-20  Alexandre Julliard <julliard@winehq.org>

	* server/context_i386.c:
	server: Remove some no longer needed ptrace code to set registers.
	Also make sure the debug registers are properly copied to the context
	when set.

	* dlls/ntdll/exception.c:
	ntdll: Use NtSetContextThread in NtRaiseException.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  server/context_i386.c:
	ntdll: Get registers on the client side for NtGetContextThread on the current thread.

2006-04-19  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Trace corrections/improvements.

2006-04-19  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/toolbar.c:
	comctl32: Fix an unsigned comparison to zero.

2006-04-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack_private.h,
	  dlls/advpack/install.c:
	advpack: Set the ldids of the install section in install_init.

	* dlls/advpack/install.c:
	advpack: Add stub handling for the RegisterOCXs command.

	* dlls/advpack/install.c:
	advpack: Don't TRACE the internals of the setup pointer as it can be NULL.

	* dlls/advpack/install.c:
	advpack: LaunchINFSectionExA is no longer a stub.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Use a separate function to open each protseq.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Abstract access to the connection's waitable object.

2006-04-20  Robert Shearman <rob@codeweavers.com>

	* tools/widl/write_msft.c:
	widl: Prevent NULL pointer de-refs on "void *" types.

	* dlls/wininet/internet.c:
	wininet: Don't allocate memory for the thread error structure until it is needed.
	Don't allocate memory for the thread error structure until it is
	needed, as it is quite large and wastes memory for threads that don't
	call any wininet function.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Don't apply the offset to the pointer passed to callback conformance functions.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Free all pointers by default, except for conformant strings.
	Free all pointers by default, except for conformant strings.
	Conformant arrays should always be freed.
	Add FC_CVARRAY to list of known types to avoid a FIXME.

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix some memory leaks.

	* dlls/rpcrt4/ndr_stubless.c, include/ndrtypes.h, include/wine/rpcfc.h:
	rpcrt4: Use the documented NDR_PROC_HEADER_EXTS structure.
	Use the documented NDR_PROC_HEADER_EXTS structure instead of the
	current NDR_PROC_EXTENSIONS structure currently in ndr_stubless.c.

	* dlls/rpcrt4/ndr_stubless.c, include/ndrtypes.h, include/wine/rpcfc.h:
	rpcrt4: Use INTERPRETER_OPT_FLAGS in ndrtypes.h instead of flags on an unsigned char.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Store the return value on the stack for interpreted stubs.
	Store the return value on the stack for stubs, as MIDL reserves space
	for it and gives us a stack offset. This fixes calling methods with
	thunks that assume that the return value will be stored on the stack.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Correctly fill in StackTop for stubless clients/servers.
	Correctly fill in StackTop for stubless clients/servers so that
	conformance for top-level parameters works.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: There's no need to set stubMsg.StackTop twice.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fix the MSVC version of call_server_func.
	Fix the MSVC version of call_server_func to pop the registers in the
	same order they were pushed.

2006-04-19  Thomas Kho <tkho@ucla.edu>

	* dlls/x11drv/keyboard.c:
	x11drv: Virtual key input scrubbing in X11DRV_send_keyboard_input.

2006-04-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/progman/Cs.rc, programs/progman/De.rc, programs/progman/En.rc,
	  programs/progman/Es.rc, programs/progman/Fr.rc,
	  programs/progman/Hu.rc, programs/progman/It.rc,
	  programs/progman/Ko.rc, programs/progman/Nl.rc,
	  programs/progman/No.rc, programs/progman/Pt.rc,
	  programs/progman/Ru.rc, programs/progman/Si.rc,
	  programs/progman/Tr.rc, programs/progman/Xx.rc,
	  programs/progman/Zh.rc:
	progman: Add close button and sysmenu to dialogs.

	* dlls/comctl32/header.c:
	comctl32: header: Avoid freeing invalid pointers.

2006-04-19  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/resources/user32_Bg.rc, dlls/user/resources/user32_Ca.rc,
	  dlls/user/resources/user32_Cs.rc, dlls/user/resources/user32_Da.rc,
	  dlls/user/resources/user32_De.rc, dlls/user/resources/user32_En.rc,
	  dlls/user/resources/user32_Eo.rc, dlls/user/resources/user32_Es.rc,
	  dlls/user/resources/user32_Fi.rc, dlls/user/resources/user32_Fr.rc,
	  dlls/user/resources/user32_Hu.rc, dlls/user/resources/user32_It.rc,
	  dlls/user/resources/user32_Ja.rc, dlls/user/resources/user32_Ko.rc,
	  dlls/user/resources/user32_Nl.rc, dlls/user/resources/user32_No.rc,
	  dlls/user/resources/user32_Pl.rc, dlls/user/resources/user32_Pt.rc,
	  dlls/user/resources/user32_Ru.rc, dlls/user/resources/user32_Si.rc,
	  dlls/user/resources/user32_Sk.rc, dlls/user/resources/user32_Sv.rc,
	  dlls/user/resources/user32_Tr.rc, dlls/user/resources/user32_Uk.rc,
	  dlls/user/resources/user32_Wa.rc, dlls/user/resources/user32_Zh.rc:
	user: Add SS_NOPREFIX to the text style in message boxes.

2006-04-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/ie.c:
	shdocvw: Added InternetExplorer::Navigate2 implementation.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Move create_doc_view_hwnd call to navigate_url.

	* dlls/shdocvw/factory.c, dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Register InternetExplorer class factory in IEWinMain.
	Based on a patch by Mike McCormack.

	* dlls/shdocvw/ie.c:
	shdocvw: Added InternetExplorer::put_Visible implementation.

	* dlls/shdocvw/iexplore.c, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move IEWinMain to iexplore.c.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/ie.c, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Added beginning InternetExplorer implementation.

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move DllGetClassObject implementation to factory.c.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move more initialization code to DocHost_Init.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added HTMLDocumentEvents and HTMLDocumentEvents2 dispifaces.

2006-04-19  Jeff Latimer <lats@yless4u.com.au>

	* dlls/gdi/font.c, dlls/gdi/freetype.c, dlls/gdi/gdi32.spec,
	  dlls/gdi/gdi_private.h, include/wingdi.h:
	gdi: Added implementation of GetCharABCWidthsI.

2006-04-19  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/debugger.c,
	  server/process.c, server/process.h, server/thread.c, server/thread.h:
	server: Use the standard suspend mechanism to simulate a breakpoint
	in an active process, instead of sending a SIGTRAP.

	* loader/glibc.c:
	loader: Attempt to detect broken vmsplit setups.

2006-04-18  Mike Frysinger <vapier@gentoo.org>

	* dlls/dinput/joystick_linux.c, dlls/winmm/joystick/joystick.c:
	joystick: Search for /dev/input/js as well as /dev/js.

2006-04-19  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Support for shift modifiers.

	* dlls/wined3d/pixelshader.c:
	wined3d: Support more than 4/6 tex/temp registers.

2006-04-19  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/tests/header.c:
	comctl32: Test the HDM_SETITEM notifications.

	* dlls/comctl32/header.c:
	comctl32: header: Send correct notify after HDM_SETITEM.
	The HDN_ITEMCHANGING notify should have the new data instead of the
	old one.  Both HDN_ITEMCHANGING and HDN_ITEMCHANGED now have the text
	field if it changed.

	* dlls/comctl32/comctl32.h, dlls/comctl32/comctl32undoc.c:
	comctl32: Add Str_SetPtrWtoA analogue to Str_SetPtrAtoW.

2006-04-19  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Implement CLEANLOCALSTORAGE marshalling and fix GetLibAttr to use it.
	Based on some documentation by Rob Shearman.

2006-04-20  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_binding.c, dlls/rpcrt4/rpc_binding.h,
	  dlls/rpcrt4/rpc_message.c:
	rpcrt4: Use rpcrt4_conn_read in RPCRT4_OpenBinding.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Make RPCRT4_Send more compatible with write(2).

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Make RPCRT4_Receive more compatible with read(2).

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Simplify RPCRT4_OpenConnection() a little.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Split code to open a pipe from RPCRT4_OpenConnection.

	* dlls/rpcrt4/rpc_binding.c:
	rpcrt4: Isolate code to open named pipes out of RPCRT4_OpenConnection.

2006-04-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Don't fail to initialize if we can't load the main module as ELF.

	* dlls/shell32/shell32.spec:
	shell32: Fixed ordinals of SHDefExtractIconA/W.

2006-04-18  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user: Find popup menus by ID.
	- Find menus by ID: Proper fallback to popup menus.
	- Use the menu ID, not the handle for the fallback.
	- Save the fallback menu's position.

2006-04-18  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/wined3d_private.h:
	wined3d: Implement GetHWND and SetHWND.

	* dlls/wined3d/device.c:
	wined3d: Implement EnumTextureFormats.

	* dlls/wined3d/device.c:
	wined3d: Implement EnumZBufferFormats.

	* dlls/wined3d/device.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Implement IWineD3DDevice::EnumDisplayModes.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Implement Init3D and Uninit3D.

2006-04-18  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Set the destination directory to the working directory if key equals SourceDir.

	* dlls/advpack/advpack.c:
	advpack: Add the ability to set multiple keys on one line in set_ldid.

	* dlls/advpack/advpack.c, dlls/advpack/advpack_private.h,
	  dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Put function declarations in advpack_private.h.

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Stub implementation for rpcrt4.RpcMgmtEpEltInqBegin().

	* dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcrt4.spec, include/rpcdce.h:
	rpcrt4: Add a stub implementation for rpcrt4.RpcMgmtInqIfIds().

	* dlls/ntdll/ntdll.spec, dlls/ntdll/sync.c, include/winternl.h:
	ntdll: Stub implementations of NtCreateIoCompletion, NtSetIoCompletion, and NtRemoveIoCompletion.
	Based on a patch by Rob Shearman.

2006-04-18  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	gdi32: Fix return values in BitBlt/StretchBlt.

	* dlls/gdi/bitblt.c:
	gdi32: Fix {Bit,Stretch}Blt fallbacks to StretchDIBits.

2006-04-18  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: header: Remove the unused bUnicode.

	* dlls/comctl32/header.c:
	comctl32: header: Correct WM_[GS]ETUNICODEFORMAT.

2006-04-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/classes.c, dlls/msi/msi.c:
	msi: Clean up memset usage.

	* dlls/msi/classes.c:
	msi: Fix a regression caused by some bad logic.

	* dlls/msi/helpers.c:
	msi: Don't fall back to the folder's parent if the folder doesn't exist.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/hal.c:
	explorer: Reuse drives that point to the same device to avoid memory leaks.
	Also print a warning if HAL support is not compiled in.

	* tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/main.c, tools/winebuild/winebuild.man.in:
	winebuild: Disable linking to external symbols by default.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Added a wrapper for ber_scanf.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Added a wrapper for ber_printf.

	* dlls/wldap32/ber.c, dlls/wldap32/wldap32.spec:
	wldap32: Add wrappers for the ber_* functions.

	* dlls/ntdll/misc.c, dlls/ntdll/ntdll.spec:
	ntdll: Add wrappers for the remaining math functions.

	* dlls/ntdll/ntdll.spec, dlls/ntdll/string.c, dlls/ntdll/wcstring.c:
	ntdll: Add wrappers for the string functions.

	* configure, configure.ac:
	configure: Added check to catch old versions of the dbus library.

2006-04-18  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	msi: Simplify create_component_advertise_string() a little.

2006-04-18  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix differences between the size returned in sizing the
	buffer for interfaces and the buffer actually used.

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Initialise BSTR pointer to NULL in VARIANT_UserUnmarshal.
	Initialise BSTR pointer to NULL before calling BSTR_UserUnmarshal,
	otherwise BSTR_UserUnmarshal will try to use the memory in the
	pointer.

	* tools/widl/typelib.c, tools/widl/write_msft.c:
	widl: Ignore [object] attribute on interfaces written to a typelib.

2006-04-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winspool/tests/info.c:
	winspool: Add a test for DocumentProperties.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/explorer_private.h, programs/explorer/hal.c:
	explorer: Initial version of dynamic drive support using HAL.

	* configure, configure.ac, include/config.h.in:
	configure: Added checks for HAL libraries.

	* libs/wine/ldt.c:
	libwine: Added a couple of missing memory constraints in LDT syscalls.

2006-04-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Use DocHost, not WebBrowser, in navigate_url.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Use DocHost, not WebBrowser, in Shell DocObject View window.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move connection points to DocHost object.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Use Dochost, not WebBrowser, in deactivate_document.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/frame.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Get rid of WebBrowser dependency in DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/frame.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IOleInPlaceFrame to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IServiceProvider to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IDispatch to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Move IOleCommandTarget to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleDocumentSite to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Move IDocHostUIHandler to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleInPlaceSite to DocHost object.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Move IOleClientSite to new DocHost object to allow sharing
	code between WebBrowser and InternetExplorer.

2006-04-18  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Fixed index in module table for delayed imports.

2006-04-15  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Use ARB[f|v]p1.0 for ps2/ps3/vs3.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Use correct register number mask.
	The regmask currently being used is wrong - 0x1FFF includes the high
	two bits of the register type.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Dcl opcode takes 2 parameters.

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix _dw modifier.
	The _dw modifier needs to specify a component swizzle, just like the
	_dz currently does.

2006-04-16  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix flow control instructions number of parameters.
	- else, endif, break take 0 parameters [not 2]
	- if, rep take 1 parameter [not 2]
	- breakp takes 1 parameter [not 2]
	- move all flow control instructions in one place
	- sync software shaders signatures with this

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Skip unhandled opcodes in vshaders.

	* dlls/wined3d/pixelshader.c:
	wined3d: Texkill is supported for ps2.0-3.0.

2006-04-17  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/header.c:
	comctl32: Send Unicode notifications if required in header control.

	* dlls/comctl32/listview.c:
	comctl32: Scroll listview if changing scroll bounds changes the scroll pos.

	* dlls/shell32/shlview.c:
	shell32: Use LVCOLUMW instead of LVCOLUMNA in LVM_INSERTCOLUMNW listview message.

	* programs/progman/dialog.c, programs/progman/grpfile.c:
	progman: Fix two simple bugs.
	Use correctly the GetOpenFileName function.
	Use _lcreat instead of _lopen to create a new file.

2006-04-18  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: More tests and fixes for STGM_PRIORITY.

	* dlls/ole32/tests/clipboard.c:
	ole32: Fix a declaration.

	* dlls/ole32/tests/marshal.c:
	ole32: Uncomment some code to make sure it is compiled, but don't run it.

2006-04-17  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add the remaining DirectDraw methods to WineD3DSurface.

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add the remaining IWineD3DDevice methods.

	* dlls/wined3d/Makefile.in, dlls/wined3d/device.c, dlls/wined3d/palette.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DPalette.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add a parameter for surface type selection.

2006-04-17  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Define 2 more avi resources.

2006-04-17  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Exit with a non-zero exit code if a core dependency is missing.

	* configure, configure.ac, dlls/Makedll.rules.in,
	  dlls/Makeimplib.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in:
	configure: Remove the --disable-debug and --disable-trace options.

	* dlls/msi/msi.c, dlls/msi/package.c, dlls/msi/registry.c,
	  dlls/msi/tests/msi.c:
	msi: Fix some possible NULL pointer dereferences (Coverity).

	* programs/regsvr32/regsvr32.c:
	regsvr32: Ignore the /c flag.

2006-04-16  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Basic tests for DeleteMonitor.

	* dlls/winspool/info.c:
	winspool: Implement DeleteMonitor.

2006-04-17  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Add install_init/release to perform install initialization.

	* dlls/advpack/advpack.c:
	advpack: Factor out OCX registering into do_ocx_reg.

	* dlls/advpack/advpack.c:
	advpack: Use get_parameter to read the three parameters of RegisterOCX.
	Use get_parameter to read the three parameters to RegisterOCX.
	Remove the ERRs and TRACEs now that we return the HRESULT.

	* dlls/advpack/advpack.c:
	advpack: The fallback directory is the fifth field index, not the sixth.

	* dlls/advpack/install.c:
	advpack: Use the default queue callback when calling SetupInstallFromInfSection.

	* dlls/advpack/advpack.c:
	advpack: Fix the documentation for RegisterOCX.

	* dlls/advpack/advpack.c:
	advpack: Fix the return type of RegisterOCX.

2006-04-16  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Support multiple RPC interfaces per binary.

2006-04-16  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_No.rc:
	twain_32: Added Norwegian resource.

2006-04-17  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winefile/No.rc:
	winefile: Fix typo in the Norwegian resources.

2006-04-16  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac:
	configure: On FreeBSD, make wine-pthread the new default.

2006-04-15  Jonathan Ernst <jonathan@ernstfamily.ch>

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_Fr.rc:
	twain_32: French localization.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Fr.rc:
	shlwapi: French localization.

	* dlls/iccvid/iccvid_Fr.rc, dlls/iccvid/rsrc.rc:
	iccvid: French localization.

	* dlls/msvfw32/msvfw32_Fr.rc, dlls/msvfw32/rsrc.rc:
	msvfw: French localization.

	* dlls/msvidc32/msvidc32_Fr.rc, dlls/msvidc32/rsrc.rc:
	msvidc: French localization.

	* programs/winecfg/Fr.rc:
	winecfg: French localization.

2006-04-17  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/dbghelp/stack.c:
	dbghelp: Params of LPSTACKFRAME64 only has 4 elements.

2006-04-15  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add a method to change the front and back buffers.

2006-04-14  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d9/d3d9_private.h,
	  dlls/wined3d/surface.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::Blt.

2006-04-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/uxtheme/metric.c:
	uxtheme: Fix GetThemeSysString as the error-path was always taken.

2006-04-15  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for unique pointers to arrays.

2006-04-14  Andrew Riedi <andrewriedi@gmail.com>

	* programs/explorer/systray.c:
	explorer: Fixed a typo in system tray.

2006-04-13  Aric Stewart <aric@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Listview notify fix.
	Turn off updating for that the unselect and select and then turns it
	on for the focus call, this results in 1 edit notify being sent at the
	end of the operation.

2006-04-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/heap.c:
	kernel: Add some tests for Lock/Unlock memory handles.

	* dlls/kernel/heap.c:
	kernel: Update WARN/ERR and documentation for GlobalLock/GlobalUnlock.

2006-04-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added Top, Left, Height and Width properties implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Store IOleInPlaceSite in WebBrowser object.

	* dlls/shdocvw/oleobject.c:
	shdocvw: Update pos_rect and clip_rect in SetObjectRects.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c:
	shdocvw: Better window handling.
	Use unicode version of DefWindowProc in unicode window procs.
	Fix window styles.

	* dlls/shell32/shlexec.c:
	shell32: Don't crash in SHELL_ExecuteW if psei->lpDirectory is NULL.

2006-04-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/misc.c:
	wldap32: Document the miscellaneous functions.

2006-04-13  Sagar Mittal <sagar.mittal@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Fix null pointer check in IWineD3DImpl_GetPixelShader.

2006-04-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Add a test for GetPrinterDriver, make it pass under Wine.

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h:
	rpcrt4: Constify NDR function tables.

2006-04-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/comctl32/animate.c:
	comctl32: Change return code comparison in AVI control.

2006-04-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Document RegisterOCX.

2006-04-13  Anssi Hannula <anssi.hannula@gmail.com>

	* dlls/shell32/shell32_Fi.rc:
	shell32: Fix common files directory location in shell32_Fi.rc.

2006-04-12  Thomas Kho <tkho@ucla.edu>

	* dlls/user/tests/input.c, dlls/x11drv/keyboard.c, server/queue.c:
	x11drv: Properly handle VK_LMENU input.

2006-04-14  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/toolhelp.c:
	kernel: Load tests again on NT 3.51 (toolhelp API not present).

2006-04-13  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Add GetHWND and SetHWND methods to IWineD3DDevice.

2006-04-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h:
	wined3d: Add macros for (Un)Init3D and Flip.

2006-04-13  Antonio Codazzi <f_sophia@libero.it>

	* dlls/shell32/shell32_It.rc:
	shell32: Italian resources update.

2006-04-13  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* programs/winefile/winefile.c:
	winefile: Use header full drag.

	* include/tchar.h:
	include: Fix a mistake in the declaration of _sntprintf.

2006-04-13  Anssi Hannula <anssi.hannula@gmail.com>

	* programs/winecfg/Fi.rc:
	winecfg: Update the Finnish resources.

	* dlls/twain_32/rsrc.rc, dlls/twain_32/twain_Fi.rc:
	twain_32: Add Finnish resources.

2006-04-13  Mike McCormack <mike@codeweavers.com>

	* include/wtypes.idl:
	wtypes.idl: Add size attribute to a void pointer.

	* tools/widl/write_msft.c:
	widl: Add support for VT_I8 and VT_UI8 to msft typelibs.

2006-04-13  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c:
	libwine: Only try to mmap the exact address when reserving memory.
	This should avoid some extra work on platforms that need the
	try_mmap_fixed function.

	* libs/wine/mmap.c:
	libwine: Reorganize the mmap code a bit to avoid some #ifdefs.

	* server/ptrace.c:
	server: Remove the use_ptrace variable.

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.12.

----------------------------------------------------------------
2006-04-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resource.

2006-04-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/advpack/reg.c:
	advpack: Fixed a couple of typos in Unicode conversion.

	* dlls/crypt32/encode.c:
	crypt32: Fixed day/month mismatch in time encoding routines.

	* dlls/crypt32/cert.c:
	crypt32: Avoid crash on NULL pointer in trace.

2006-04-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user: Fix dereferencing a potential NULL pointer.

2006-04-12  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add case 0 to switch statement and fix the fixme.
	Screwed up a copy/paste from one of my recent patches.  This
	eliminates the erroneous FIXME for calls to D3DFmtMakeGlCfg() with 0
	as the Stencil format.  Also, it changes the FIXME to print the
	correct variable.

2006-04-13  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/version/install.c:
	version: Translate some German comments.

2006-04-13  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Add some tests to ScriptGetFontProperties.

2006-04-13  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/undname.c:
	msvcrt: If caller passes a NULL deallocator to __unDNameEx, don't use it.

2006-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/surface.c, include/wine/wined3d_interface.h:
	wined3d: Add IWineD3DSurface::Flip.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Split device creation and opengl initialization.

2006-04-12  Karsten Elfenbein <kelfe@gmx.de>

	* dlls/wined3d/device.c:
	wined3d: Combined unhandled renderstate cases into one.

	* dlls/wined3d/device.c:
	wined3d: IWineD3DDeviceImpl_Reset cleanup.
	Joined the functions as it looks like a typo in the function name
	(IWineD3DDeviceImpl_Rest isn't used anywhere but contains comments).

2006-04-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Allocate wszApplicationName on the heap as it may be longer than MAX_PATH.

	* dlls/shdocvw/dochost.c:
	shdocvw: Use GetClientRect, not GetWindowRect in create_doc_view_hwnd.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/wineps/init.c:
	wineps: Load generic.ppd from the data dir if nothing else is specified.

2006-04-12  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, include/config.h.in, tools/sfnt2fnt.c:
	tools: Don't try to use FT_Load_Sfnt_Table unless FreeType has it.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Workaround for broken no-exec protections.
	Add an executable page at the top of the address space to defeat
	broken no-exec protections that play with the code selector limit.

2006-04-12  Mikołaj Zalewski <mikolaj@zalewski.pl>

	* dlls/comctl32/listview.c:
	comctl32: Fix listview column resize.
	Draw a track line after a HDN_TRACK, resize the columns only after a
	HDN_ITEMCHANGED.
	Create the header with HDS_FULLDRAG.

	* dlls/comctl32/header.c:
	comctl32: Fix listview column resize.
	Fix the HDS_FULLDRAG headers notifications, invalidate such a control
	after a mouse move.

2006-04-12  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c:
	avifil32: Avoid not necessary zeroing out of an allocated memory block.

2006-04-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Add a resource dumper.

2006-04-11  Jean-Philippe Theriault <Jean-Philippe_Theriault@cimmetry.com>

	* dlls/gdi/enhmetafile.c:
	gdi32: Fix for PlayEnhMetaFileRecord support of EMR_SELECTPALETTE record.

2006-04-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/toolhelp.c:
	kernel32: Added some tests for toolhelp functions.

	* dlls/kernel/toolhelp.c:
	kernel32: Rewrote toolhelp implementation only on top of ntdll functions.

2006-04-11  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Added dnsapi tests.

2006-04-12  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Enable texld instruction (shaders 1.4).

2006-04-11  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Reorganize shaders code a bit.

2006-04-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/page.c:
	wldap32: Improve error handling in create_page_control().

2006-04-10  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Basic tests for AddMonitor.

2006-04-11  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Implement AddMonitor.

2006-04-11  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d9/d3d9_private.h, dlls/d3d9/vertexdeclaration.c,
	  dlls/d3d9/vertexshader.c:
	d3d9: VertexDeclaration and VertexShader should keep reference to the parent device object.

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexshader.c:
	d3d8: VertexShader should keep reference to the parent device object.

2006-04-12  Alexandre Julliard <julliard@winehq.org>

	* server/window.c:
	server: Don't attach thread input to the desktop.
	Now that the desktop can be owned by a thread we need to explicitly
	check for it in the thread attach check.

2006-04-11  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/int2f.c:
	winedos: Implement INT2F/AX=1501 (get drive device list).

2006-04-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/msi/appsearch.c:
	msi: Fix possible crash bugs in error path.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/regsvr.c:
	shdocvw: Register iexplore.exe as a COM local server.

2006-04-11  Jason Green <jave27@gmail.com>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Spelling fixes and downgrade a FIXME to a TRACE.

2006-04-10  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/swapchain.c:
	wined3d: Don't do a logical AND on the swap effect.

2006-04-12  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/wined3d/resource.c:
	wined3d: Store the private data in IWineD3DResource::SetPrivateData.

2006-04-12  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c, dlls/riched20/para.c:
	riched20: Allow inheriting table cell definitions from previous table row.
	Allow inheriting of table cell definitions from a previous table row
	when the current table row does not contain a \trowd, only an \intbl.

2006-04-11  Peter Oberndorfer <kumbayo84@arcor.de>

	* dlls/shlwapi/path.c, dlls/shlwapi/tests/path.c:
	shlwapi: Ignore leading spaces in PathMatchSpec.

	* dlls/shlwapi/tests/path.c:
	shlwapi: Add tests for PathMatchSpec.

	* dlls/gdi/font.c:
	gdi: Do not convert string paramter when rendering glyph indexes.

	* dlls/gdi/font.c:
	gdi: Write out glyph count correctly in GetCharacterPlacementA.

2006-04-11  Alexandre Julliard <julliard@winehq.org>

	* Makefile.in:
	Makefile: There are currently no tests in the programs directory.

2006-04-09  Dan Kegel <dank@kegel.com>

	* dlls/x11drv/clipboard.c:
	x11drv: Fix two clipboard bugs.
	Fix two clipboard problems that caused BadAtom crashes and caused some
	clipboard formats to not be exported properly.

2006-04-11  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/pixelshader.c:
	wined3d: Remove bogus address register warning for pixel shaders.
	Pixel shaders don't have an address register, this warning is bogus.
	D3DSPR_ADDR is interpreted as D3DSPR_TEXTURE for pixel shaders.

2006-04-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/install.c:
	advpack: Implement UserInstStubWrapper.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/acmstream.c, dlls/avifil32/api.c, dlls/avifil32/avifile.c,
	  dlls/avifil32/editstream.c, dlls/avifil32/extrachunk.c,
	  dlls/avifil32/getframe.c, dlls/avifil32/icmstream.c,
	  dlls/avifil32/tmpfile.c, dlls/avifil32/wavfile.c:
	avifil32: Fix a regression caused by patch removing GlobalAllocs by using HEAP_ZERO_INIT.

2006-04-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/file.c:
	msvcrt: IO init.
	Make sure, when copying handles from std ones (when no io info is
	inherited from parent) to create inheritable handles (spotted by
	qingdao daoo).

2006-04-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/debug.c, tools/winedump/dump.c,
	  tools/winedump/minidump.c, tools/winedump/pe.c, tools/winedump/pe.h,
	  tools/winedump/winedump.h:
	winedump: Constify some pointers.

2006-04-11  Alexandre Julliard <julliard@winehq.org>

	* tools/winedump/dump.c, tools/winedump/pe.c:
	winedump: Added detection of Wine fake dlls.
	Also pass the real start of the file to the dump functions, instead of
	having the generic code care about the specifics of the individual
	file formats.

2006-04-11  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/dosexe.h, dlls/winedos/int2f.c, dlls/winedos/module.c:
	winedos: Implement true CDROM DOS device driver.

	* dlls/winedos/devices.c, dlls/winedos/dosexe.h:
	winedos: Move all device driver initialization code to a newly written
	function DOSDEV_SetupDevice().

	* dlls/winedos/int2f.c:
	winedos: Move most of MSCDEX stuff into a separate function.

	* dlls/winedos/devices.c, dlls/winedos/dosexe.h:
	winedos: Move some declarations to the header file.

2006-04-10  Antonio Codazzi <f_sophia@libero.it>

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Eo.rc:
	wininet: Added Esperanto language.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Eo.rc:
	shlwapi: Added Esperanto language.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Eo.rc:
	oleaut32: Added Esperanto language.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Eo.rc:
	mpr: Added Esperanto language.

	* programs/view/Eo.rc, programs/view/viewrc.rc:
	view: Added Esperanto language.

	* dlls/serialui/Eo.rc, dlls/serialui/serialui_rc.rc:
	serialui: Added Esperanto language.

	* dlls/mpr/mpr_It.rc:
	mpr: Italian language update.

	* dlls/wininet/wininet_It.rc:
	wininet: Italian language update.

2006-04-10  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/factory.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Move the private class factory declaration into factory.c.

2006-04-11  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean resources.

2006-04-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/tests/format.c:
	msi: Add some more MsiFormatRecord tests.

2006-04-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Perform a setupapi-level install of the INF file in RunSetupCommand.

	* dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Implement LaunchINFSectionEx.

	* dlls/advpack/advpack.c, dlls/advpack/files.c, dlls/advpack/install.c,
	  dlls/advpack/reg.c:
	advpack: Standardize the format of advpack traces.
	Display all strings in advpack traces.
	Use debugstr_a/w for TRACE strings.

	* dlls/advpack/advpack.c, dlls/advpack/files.c, dlls/advpack/install.c:
	advpack: Standardize the format of advpack parameter lists.

2006-04-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/ntdll/thread.c:
	ntdll: Initialize a variable.
	Fix an uninitialized pointer in RtlCreateUserThread, caught by
	coverity.

	* dlls/crypt32/cert.c:
	crypt32: Fix a typo caught by coverity.

2006-04-11  Jacek Caban <jacek@codeweavers.com>

	* include/exdisp.idl:
	exdisp.idl: Added missing attributes and fix some arguments names.

	* include/exdisp.idl:
	exdisp.idl: Added missing declarations.

2006-04-10  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: Moved the tkill function to ptrace.c.

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/thread.h:
	server: Get rid of the no longer used get_thread_single_step function.

	* server/debugger.c, server/ptrace.c, server/thread.c, server/thread.h:
	server: Removed the thread attached flag, since we always detach now.

	* server/ptrace.c:
	server: Always detach from the thread when we are done with ptrace.

	* dlls/user/tests/menu.c:
	user: Use a smaller window for the menu test.

2006-04-10  Jacek Caban <jacek@codeweavers.com>

	* include/docobj.idl:
	docobj.idl: Fix some enums declarations.

	* include/exdisp.idl:
	exdisp.idl: Move declarations to better match to IE SDK.

	* include/exdisp.idl:
	exdisp.idl: Added SHDocVw type library declaration.

2006-04-10  Hans Leidekker <hans@it.vu.nl>

	* tools/winapi/win32.api:
	dnsapi: Teach winapi_check about dnsapi.dll.

	* DEVELOPERS-HINTS, documentation/PACKAGING:
	dnsapi: Tell Wine developers and packagers about dnsapi.dll.

2006-04-10  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in, dlls/twain/.gitignore,
	  dlls/twain/Makefile.in, dlls/twain/README, dlls/twain/TWAIN,
	  dlls/twain/capability.c, dlls/twain/ds_audio.c, dlls/twain/ds_ctrl.c,
	  dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c, dlls/twain/resource.h,
	  dlls/twain/rsrc.rc, dlls/twain/twain.h, dlls/twain/twain.spec,
	  dlls/twain/twain16_main.c, dlls/twain/twain32_main.c,
	  dlls/twain/twain_32.spec, dlls/twain/twain_De.rc,
	  dlls/twain/twain_En.rc, dlls/twain/twain_Ko.rc, dlls/twain/twain_i.h,
	  dlls/twain/ui.c, dlls/twain_32/.gitignore, dlls/twain_32/Makefile.in,
	  dlls/twain_32/README, dlls/twain_32/TWAIN,
	  dlls/twain_32/capability.c, dlls/twain_32/ds_audio.c,
	  dlls/twain_32/ds_ctrl.c, dlls/twain_32/ds_image.c,
	  dlls/twain_32/dsm_ctrl.c, dlls/twain_32/resource.h,
	  dlls/twain_32/rsrc.rc, dlls/twain_32/twain.h,
	  dlls/twain_32/twain.spec, dlls/twain_32/twain16_main.c,
	  dlls/twain_32/twain32_main.c, dlls/twain_32/twain_32.spec,
	  dlls/twain_32/twain_De.rc, dlls/twain_32/twain_En.rc,
	  dlls/twain_32/twain_Ko.rc, dlls/twain_32/twain_i.h,
	  dlls/twain_32/ui.c:
	twain_32: Renamed the dlls/twain directory to dlls/twain_32.

	* configure, configure.ac, dlls/Makefile.in, dlls/riched32/.gitignore,
	  dlls/riched32/Makefile.in, dlls/riched32/riched32.spec,
	  dlls/riched32/richedit.c, dlls/richedit/.gitignore,
	  dlls/richedit/Makefile.in, dlls/richedit/riched32.spec,
	  dlls/richedit/richedit.c:
	riched32: Renamed the dlls/richedit directory to dlls/riched32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/comdlg32/.gitignore, dlls/comdlg32/Makefile.in,
	  dlls/comdlg32/cdlg.h, dlls/comdlg32/cdlg16.h, dlls/comdlg32/cdlg32.c,
	  dlls/comdlg32/cdlg_Bg.rc, dlls/comdlg32/cdlg_Ca.rc,
	  dlls/comdlg32/cdlg_Cn.rc, dlls/comdlg32/cdlg_Cs.rc,
	  dlls/comdlg32/cdlg_Da.rc, dlls/comdlg32/cdlg_De.rc,
	  dlls/comdlg32/cdlg_En.rc, dlls/comdlg32/cdlg_Eo.rc,
	  dlls/comdlg32/cdlg_Es.rc, dlls/comdlg32/cdlg_Fi.rc,
	  dlls/comdlg32/cdlg_Fr.rc, dlls/comdlg32/cdlg_Hu.rc,
	  dlls/comdlg32/cdlg_It.rc, dlls/comdlg32/cdlg_Ja.rc,
	  dlls/comdlg32/cdlg_Ko.rc, dlls/comdlg32/cdlg_Nl.rc,
	  dlls/comdlg32/cdlg_No.rc, dlls/comdlg32/cdlg_Pl.rc,
	  dlls/comdlg32/cdlg_Pt.rc, dlls/comdlg32/cdlg_Ru.rc,
	  dlls/comdlg32/cdlg_Si.rc, dlls/comdlg32/cdlg_Sk.rc,
	  dlls/comdlg32/cdlg_Sv.rc, dlls/comdlg32/cdlg_Th.rc,
	  dlls/comdlg32/cdlg_Tr.rc, dlls/comdlg32/cdlg_Uk.rc,
	  dlls/comdlg32/cdlg_Wa.rc, dlls/comdlg32/cdlg_Zh.rc,
	  dlls/comdlg32/cdlg_xx.rc, dlls/comdlg32/colordlg.c,
	  dlls/comdlg32/colordlg16.c, dlls/comdlg32/comdlg32.spec,
	  dlls/comdlg32/commdlg.spec, dlls/comdlg32/filedlg.c,
	  dlls/comdlg32/filedlg16.c, dlls/comdlg32/filedlg31.c,
	  dlls/comdlg32/filedlg31.h, dlls/comdlg32/filedlgbrowser.c,
	  dlls/comdlg32/filedlgbrowser.h, dlls/comdlg32/filetitle.c,
	  dlls/comdlg32/finddlg.c, dlls/comdlg32/finddlg32.c,
	  dlls/comdlg32/fontdlg.c, dlls/comdlg32/fontdlg16.c,
	  dlls/comdlg32/printdlg.c, dlls/comdlg32/printdlg.h,
	  dlls/comdlg32/printdlg16.c, dlls/comdlg32/rsrc.rc,
	  dlls/commdlg/.gitignore, dlls/commdlg/Makefile.in,
	  dlls/commdlg/cdlg.h, dlls/commdlg/cdlg16.h, dlls/commdlg/cdlg32.c,
	  dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Ca.rc,
	  dlls/commdlg/cdlg_Cn.rc, dlls/commdlg/cdlg_Cs.rc,
	  dlls/commdlg/cdlg_Da.rc, dlls/commdlg/cdlg_De.rc,
	  dlls/commdlg/cdlg_En.rc, dlls/commdlg/cdlg_Eo.rc,
	  dlls/commdlg/cdlg_Es.rc, dlls/commdlg/cdlg_Fi.rc,
	  dlls/commdlg/cdlg_Fr.rc, dlls/commdlg/cdlg_Hu.rc,
	  dlls/commdlg/cdlg_It.rc, dlls/commdlg/cdlg_Ja.rc,
	  dlls/commdlg/cdlg_Ko.rc, dlls/commdlg/cdlg_Nl.rc,
	  dlls/commdlg/cdlg_No.rc, dlls/commdlg/cdlg_Pl.rc,
	  dlls/commdlg/cdlg_Pt.rc, dlls/commdlg/cdlg_Ru.rc,
	  dlls/commdlg/cdlg_Si.rc, dlls/commdlg/cdlg_Sk.rc,
	  dlls/commdlg/cdlg_Sv.rc, dlls/commdlg/cdlg_Th.rc,
	  dlls/commdlg/cdlg_Tr.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/cdlg_Wa.rc, dlls/commdlg/cdlg_Zh.rc,
	  dlls/commdlg/cdlg_xx.rc, dlls/commdlg/colordlg.c,
	  dlls/commdlg/colordlg16.c, dlls/commdlg/comdlg32.spec,
	  dlls/commdlg/commdlg.spec, dlls/commdlg/filedlg.c,
	  dlls/commdlg/filedlg16.c, dlls/commdlg/filedlg31.c,
	  dlls/commdlg/filedlg31.h, dlls/commdlg/filedlgbrowser.c,
	  dlls/commdlg/filedlgbrowser.h, dlls/commdlg/filetitle.c,
	  dlls/commdlg/finddlg.c, dlls/commdlg/finddlg32.c,
	  dlls/commdlg/fontdlg.c, dlls/commdlg/fontdlg16.c,
	  dlls/commdlg/printdlg.c, dlls/commdlg/printdlg.h,
	  dlls/commdlg/printdlg16.c, dlls/commdlg/rsrc.rc:
	comdlg32: Renamed the dlls/commdlg directory to dlls/comdlg32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/msacm/.gitignore, dlls/msacm/Makefile.in, dlls/msacm/driver.c,
	  dlls/msacm/filter.c, dlls/msacm/format.c, dlls/msacm/internal.c,
	  dlls/msacm/msacm.rc, dlls/msacm/msacm.spec, dlls/msacm/msacm32.spec,
	  dlls/msacm/msacm32_main.c, dlls/msacm/msacm_Cs.rc,
	  dlls/msacm/msacm_De.rc, dlls/msacm/msacm_En.rc,
	  dlls/msacm/msacm_Es.rc, dlls/msacm/msacm_Fr.rc,
	  dlls/msacm/msacm_Hu.rc, dlls/msacm/msacm_It.rc,
	  dlls/msacm/msacm_Ja.rc, dlls/msacm/msacm_Ko.rc,
	  dlls/msacm/msacm_Nl.rc, dlls/msacm/msacm_No.rc,
	  dlls/msacm/msacm_Pl.rc, dlls/msacm/msacm_Pt.rc,
	  dlls/msacm/msacm_Tr.rc, dlls/msacm/msacm_main.c,
	  dlls/msacm/pcmconverter.c, dlls/msacm/stream.c,
	  dlls/msacm/tests/.gitignore, dlls/msacm/tests/Makefile.in,
	  dlls/msacm/tests/msacm.c, dlls/msacm/wineacm.h,
	  dlls/msacm32/.gitignore, dlls/msacm32/Makefile.in,
	  dlls/msacm32/driver.c, dlls/msacm32/filter.c, dlls/msacm32/format.c,
	  dlls/msacm32/internal.c, dlls/msacm32/msacm.rc,
	  dlls/msacm32/msacm.spec, dlls/msacm32/msacm32.spec,
	  dlls/msacm32/msacm32_main.c, dlls/msacm32/msacm_Cs.rc,
	  dlls/msacm32/msacm_De.rc, dlls/msacm32/msacm_En.rc,
	  dlls/msacm32/msacm_Es.rc, dlls/msacm32/msacm_Fr.rc,
	  dlls/msacm32/msacm_Hu.rc, dlls/msacm32/msacm_It.rc,
	  dlls/msacm32/msacm_Ja.rc, dlls/msacm32/msacm_Ko.rc,
	  dlls/msacm32/msacm_Nl.rc, dlls/msacm32/msacm_No.rc,
	  dlls/msacm32/msacm_Pl.rc, dlls/msacm32/msacm_Pt.rc,
	  dlls/msacm32/msacm_Tr.rc, dlls/msacm32/msacm_main.c,
	  dlls/msacm32/pcmconverter.c, dlls/msacm32/stream.c,
	  dlls/msacm32/tests/.gitignore, dlls/msacm32/tests/Makefile.in,
	  dlls/msacm32/tests/msacm.c, dlls/msacm32/wineacm.h,
	  programs/winetest/Makefile.in:
	msacm32: Renamed the dlls/msacm directory to dlls/msacm32.

2006-04-10  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Add support for ttc indices in the font link list.

2006-04-09  Jason Green <jave27@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/utils.c:
	wined3d: Add some more debugging info.
	Adds more debugging FIXME's if a specific WINED3DFMT_??? isn't supported.

2006-04-09  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Implement support for ref pointers to simple structs.

2006-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi/font.c, dlls/gdi/tests/font.c:
	gdi32: GetCharABCWidthsW should not crash on a NULL handle.

	* dlls/wldap32/control.c:
	wldap32: Fix broken parameter handling.

2006-04-09  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/dnsapi/Makefile.in, include/config.h.in:
	dnsapi: Add a configure check for the resolver library and header.

	* configure, configure.ac, dlls/dnsapi/Makefile.in,
	  dlls/dnsapi/tests/.gitignore, dlls/dnsapi/tests/Makefile.in,
	  dlls/dnsapi/tests/name.c:
	dnsapi: Add a test for DnsNameCompare_A.

	* dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.h, dlls/dnsapi/dnsapi.spec,
	  dlls/dnsapi/name.c:
	dnsapi: Implement DnsNameCompare_{A,W}.

	* configure, configure.ac, dlls/Makefile.in, dlls/dnsapi/.gitignore,
	  dlls/dnsapi/Makefile.in, dlls/dnsapi/dnsapi.spec, dlls/dnsapi/main.c:
	dnsapi: Add a stub implementation of dnsapi.dll.

	* include/Makefile.in, include/windns.h:
	dnsapi: Add windns.h.
	Based on a patch sent by Matthew Kehrer a while ago.

2006-04-09  Stefan Dösinger <stefan@codeweavers.com>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Add a test for IDirect3DVertexBuffer7::ProcessVertices.

2006-04-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Add initial implementation of SetPerUserSecValues.

2006-04-10  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/wine.inf:
	wine.inf: Added dbghelp & imagehlp as fake DLLs.

2006-04-10  Ivan Gyurdiev <ivg2@cornell.edu>

	* dlls/wined3d/wined3d_private.h:
	wined3d: Print all errors in checkGLcall.

	* dlls/d3d9/pixelshader.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Downgrade some FIXMEs.

	* dlls/wined3d/utils.c:
	wined3d: Map D3DFMT_L16, D3DFMT_A16B16G16R16 to OpenGL formats.
	Map:
	D3DFMT_L16 -> GL_LUMINANCE16_EXT
	D3DFMT_A16B16G16R16 -> GL_RGBA16_EXT
	as Raphael suggested.
	Also increase the returned Bpp for unknown and unhandled formats from
	4 to 8 bytes - this part fixes segfault in the F.E.A.R demo. It now
	shows some flashy graphics before it dies again :)

2006-04-10  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shdocvw/iexplore.c:
	shdocvw: Constify IExplore OLE vtables.

	* dlls/x11drv/keyboard.c:
	x11drv: Update French keyboard layout to better match the X11 one.

2006-04-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian resources.

2006-04-09  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add accented greek glyphs to System.

2006-04-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/ntdll/rtlstr.c, dlls/ntdll/tests/rtlstr.c:
	ntdll: The closing brace of a guid string is at index 37.

2006-04-08  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c:
	dsound: Fix 2 bugs in ds3d tests.
	Fix 2 bugs in the error paths of the ds3d.c test (coverity).

2006-04-09  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Terminate some strings in fixmes and traces.

2006-04-09  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Avoid reading from NULL (GetPrinterDriver).

2006-04-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Set active document of both frame and doc window.

	* dlls/shdocvw/dochost.c:
	shdocvw: Use IOleInPlaceObjectWindowless interface of document in deactivate_document.

	* dlls/mshtml/htmlinput.c, dlls/mshtml/htmlselect.c:
	mshtml: Make sure to use initialized variables.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Fix ref counting.
	- Fix ref counting.
	- Use This->window instead of QI in NSContainer_Release.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* programs/wineconsole/wineconsole_Eo.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Esperanto language support.

	* dlls/winspool/It.rc, dlls/winspool/winspool.rc:
	winspool: Italian language support.

2006-04-06  Antonio Codazzi <f_sophia@libero.it>

	* programs/winhelp/Eo.rc:
	winhelp: Esperanto language update.

	* programs/regedit/It.rc:
	regedit: Italian language update.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* programs/start/It.rc:
	start: Italian language update.

2006-04-04  Antonio Codazzi <f_sophia@libero.it>

	* programs/uninstaller/Eo.rc:
	uninstaller: Esperanto language adjustments.

2006-04-06  Antonio Codazzi <f_sophia@libero.it>

	* programs/wineconsole/wineconsole_It.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Italian language support.

2006-04-08  Antonio Codazzi <f_sophia@libero.it>

	* dlls/winspool/Eo.rc, dlls/winspool/winspool.rc:
	winspool: Esperanto language support.

2006-04-08  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: A read can fail.

2006-04-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/ddraw.h:
	ddraw: Add MAKEFOURCC to ddraw.h.

	* dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c:
	d3d9: Add typecasts for WINED3DLOCKED_BOX to avoid compiler warnings.

2006-04-08  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd:
	fonts: Add greek glyphs (with thanks to Maria Hadjipanayi).

2006-04-08  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c:
	wldap32: Don't handle NULL attrs twice.

	* dlls/wldap32/init.c:
	wldap32: Don't return uninitialised values.

	* dlls/wldap32/error.c:
	wldap32: Fix overrun by one of static array.

2006-04-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user: Add an missing element to the hbmmenus array.

2006-04-08  Marcus Meissner <marcus@jet.franken.de>

	* tools/winedump/output.c:
	winedump: Use fchmod() instead of doing system(chmod).

2006-04-08  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c:
	dsound: Remove NULL This pointer checks.

2006-04-07  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c:
	dsound: Remove unnecessary NULL pointer check.

2006-04-08  Troy Rollo <wine@troy.rollo.name>

	* dlls/ntdll/cdrom.c:
	ntdll: Fix DVD_ReadStructure's layout of layer information.
	Fix DVD_ReadStructure to reflect what Windows actually does, not what
	Microsoft (incorrectly) documents it to do and not what the DDK
	headers (incorrectly) suggest it does.

2006-04-07  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/virtual.c:
	ntdll: Added ARM architecture.

2006-04-05  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Add default dsound sample rate and bits per sample.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_main.c,
	  dlls/dsound/dsound_private.h:
	dsound: Set default primary buffer sample rate and bits per sample.
	Programs that are written specifically for 2000 and xp don't bother to
	set the primary buffer format because it's a noop.  However wine is
	patterned after win9x and DirectX 7 or earlier which has a real
	primary buffer and expects the program to change the primary buffer
	format if necessary.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/desktop.c, server/window.c:
	explorer: Don't use ExitWindows on shutdown.
	ExitWindows kills all current processes and that creates a race with
	newly started processes. Instead, simply exit and let the new process
	create a new explorer.

2006-04-06  Mike Hearn <mike@plan99.net>

	* dlls/kernel/path.c:
	kernel: Don't crash on NULL arg in GetShortPathNameW.

	* dlls/comctl32/imagelist.c:
	comctl32: Add OOM codepath in imagelist control.

2006-04-07  Mike Hearn <mike@plan99.net>

	* dlls/gdi/enhmetafile.c:
	gdi: Protect GetEnhMetaFilePaletteEntries against bad handles.

	* dlls/kernel/path.c:
	kernel: Correct SearchPathA argument validation.

2006-04-07  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c:
	dsound: Fix capture test.
	Remove bogus release of NULL pointer code found by Coverity.

2006-04-07  Mike Hearn <mike@plan99.net>

	* dlls/uxtheme/metric.c:
	uxtheme: Fix GetThemeSysInt.
	TMT_FIRSTINT and TMT_LASTINT are the same value here, so the error
	path would always be taken. Fix to check only that the values are
	outside the possible range.

2006-04-07  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/netapi32/browsr.c, dlls/netapi32/share.c:
	netapi32: Move NetShareEnum from browsr.c to share.c.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Add a few more tests for SetPerUserSecValues.

2006-04-07  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/gdi/tests/bitmap.c:
	gdi: Also initialize a variable in the failure case.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	msi: Use a debug channel to turn on transform debugging.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/process.h, server/ptrace.c, server/thread.c,
	  server/thread.h:
	server: Moved read/write_process_memory and get_selector_entry to ptrace.c.

	* server/process.c:
	server: Hide assumptions about alignment inside the read_process_memory function.

	* dlls/ntdll/virtual.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Get rid of alignment requirements in write_process_memory request.
	All the alignment handling is now done in the write_process_memory
	function inside the server.

2006-04-07  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Allow the inclusion of the wined3d headers when the ddraw headers are included.

	* dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/volume.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DBOX to wined3d_types.h.

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h:
	wined3d: Rename return values from D3D* to WINED3D*.

2006-04-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/filemoniker.c:
	ole32: Fix typo in FileMonikerImpl_BindToObject.
	Fix apparent typo in FileMonikerImpl_BindToObject, where ppf was
	incorrectly passed into IClassFactory_CreateInstance instead of &ppf
	(found by Coverity).

	* dlls/ole32/compositemoniker.c:
	ole32: Check for pcbSize parameter of CompositeMonikerImpl_GetSizeMax being NULL, rather than non-NULL.

	* dlls/ole32/antimoniker.c:
	ole32: Check for pcbSize in AntiMonikerImpl_GetSizeMax being for NULL, not for non-NULL.

	* dlls/ole32/defaulthandler.c:
	ole32: Fix DefaultHandler_EnumAdvises.
	As per MSDN, if the object has no connections then
	IOleObject::EnumAdvises should return a NULL enumerator and S_OK. This
	is the case when This->oleAdviseHolder is NULL, so do this and avert a
	potential NULL dereference of This->oleAdviseHolder (found by
	Coverity).

	* dlls/oleaut32/usrmarshal.c:
	oleaut32: Fix typo in LPSAFEARRAY_Unmarshal.
	Fix typo in LPSAFEARRAY_Unmarshal where the check for the failure of
	the SafeArrayCreateEx call was missing a dereference operator (found
	by Coverity).

	* dlls/oleaut32/safearray.c:
	oleaut32: Remove deadcode in SafeArrayPutElement.
	Remove deadcode in SafeArrayPutElement, as lpBstr cannot be NULL
	because of the check at the top of the function on pvData (found by
	Coverity).

	* server/console.c:
	server: Free ptr in console_input_append_hist.
	Free ptr in console_input_append_hist before returning, otherwise it
	will be leaked (found by Coverity).
	Remove the setting of last error on mem_alloc failure, as it is already
	done in mem_alloc.

	* server/token.c:
	server: Handle failure of mem_alloc in duplicate_token.

	* server/token.c:
	server: Handle possible mem_alloc failure in create_token.

	* server/queue.c:
	server: Should use release_object on an object instead of free.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	msi: Remove broken volume management code.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/iexplore.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Implement IEWinMain using a simple window frame.

	* dlls/x11drv/wintab.c:
	x11drv: Cursors index used with WTI_DEVICES is zero based.

2006-04-07  Huw Davies <huw@codeweavers.com>

	* fonts/system.sfd, tools/sfnt2fnt.c:
	fonts: Add the Won sign in place of the backslash for Korean fonts.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward DelNodeRunDLL32A to its Unicode counterpart.

	* dlls/advpack/files.c:
	advpack: Rewrite get_parameter to be able to handle an empty parameter.

2006-04-07  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add WINED3DPRESENT_INTERVAL_* definitions.

	* include/wine/wined3d_types.h:
	wined3d: Add WINED3DPRESENTRATE_DEFAULT.

	* dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DLOCKED_BOX to wined3d_types.h.

2006-04-07  James Hawkins <truiken@gmail.com>

	* dlls/ntdll/signal_i386.c:
	ntdll: Return error if the signal index equals the size of the array.

2006-04-07  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Remove unnecessary check for NULL.

	* server/registry.c:
	server: Avoid comparison of -1 with an unsigned variable.

	* libs/wine/config.c:
	libwine: Fix a memory leak.

	* dlls/msi/classes.c:
	msi: Fix a logic error.

	* dlls/msi/record.c:
	msi: Avoid accessing a null pointer.

	* dlls/msi/string.c:
	msi: Check the correct pointer after allocating memory.

	* dlls/msi/table.c:
	msi: Fix possible free of uninitialized pointer.

2006-04-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Fixed set_process_name for the winevdm case.

2006-04-06  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/texture.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DLOCKED_RECT to wined3d_types.h.

	* dlls/d3d9/basetexture.c, dlls/d3d9/cubetexture.c, dlls/d3d9/device.c,
	  dlls/d3d9/texture.c, dlls/d3d9/volumetexture.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/texture.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DTEXTUREFILTERTYPE to wined3d_types.h.

2006-04-06  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/netapi32/Makefile.in, dlls/netapi32/netapi32.spec,
	  dlls/netapi32/share.c, include/lmshare.h:
	netapi32: Add (stubbed) NetSessionEnum.

2006-04-06  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Add initial tests for SetPerUserSecValues.

2006-04-06  Huw Davies <huw@codeweavers.com>

	* dlls/comctl32/propsheet.c, dlls/comctl32/tests/.gitignore,
	  dlls/comctl32/tests/Makefile.in, dlls/comctl32/tests/propsheet.c,
	  dlls/comctl32/tests/propsheet.rc:
	comctl32: Set the sheet caption before invoking the sheet callback and before creating the pages.

2006-04-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/courier.sfd, fonts/ms_sans_serif.sfd, fonts/small_fonts.sfd,
	  fonts/system.sfd:
	fonts: Add a couple of cyrillic glyphs to all built-in bitmap fonts.
	Also add numero-sign to Courier.

2006-04-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c:
	ntdll: Print traces for EXC_CallHandler even with the assembly version.

2006-04-05  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/process.c:
	msvcrt: Append extension(.exe) for _spawnve argument.

2006-04-06  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/kernel/process.c, include/config.h.in:
	kernel: Show the exe name instead of wine-[kp]thread in ps and top.

2006-04-05  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	crypt32: Implement CertCreateSelfSignCertificate, with some tests.

	* dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Add support for the CERT_KEY_PROV_INFO_PROP_ID certificate property.

2006-03-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Implement EnumMonitorsA on top of EnumMonitorsW.

	* dlls/winspool/info.c:
	winspool: Implement EnumMonitorsW.

2006-04-06  Mike McCormack <mike@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Forward IWebBrowser2::Navigate calls to ::Navigate2.

	* dlls/msi/files.c:
	msi: Avoid a crash if a parameter is NULL.

2006-04-05  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winearts/audio.c:
	winearts: Don't call arts_free if arts_init wasn't successful.

2006-04-05  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Always consume the subst structure.

	* dlls/gdi/freetype.c:
	gdi32: Use the localised family name if present
	(based on a patch on Byeong-Sik Jeon).

	* dlls/gdi/freetype.c:
	gdi32: Move a few functions around.  Should be a nop.

2006-04-05  Mike McCormack <mike@codeweavers.com>

	* include/exdisp.idl:
	shdocvw: Add class definition for InternetExplorer.

2006-04-05  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/bitmap.c:
	gdi32: Add tests for GetBitmapBits and GetObject for a DIB section.
	Make them pass under Wine.

2006-04-05  Paul Vriens <paul.vriens@xs4all.nl>

	* include/lm.h:
	include: Add lmshare to lm.h.

2006-04-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h:
	wined3d: Add some type macros to wined3d_interface.h.

2006-04-05  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/spec16.c:
	winebuild: Remove a no longer necessary movzwl instruction.
	This could cause broken relays to be generated depending on the order
	of the entry points in the relay list.
	Also add a few missing tabs in the assembly output.

	* dlls/cards/cards.c:
	cards: Avoid GetPixel to draw round corners, use a clip region instead.

2006-04-04  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Factor out advpack error handling into ADV_HRESULT.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/iexplore/.gitignore, programs/iexplore/Makefile.in,
	  programs/iexplore/main.c:
	Add an implementation of iexplore.exe.

	* dlls/shdocvw/shdocvw.spec, dlls/shdocvw/shdocvw_main.c:
	shdocvw: Stub implementation of IEWinMain.

2006-04-04  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/environ.c:
	msvcrt: Fix a TRACE message to avoid buffer overflow.

2006-04-04  Huw Davies <huw@codeweavers.com>

	* fonts/ms_sans_serif.sfd:
	fonts: Add a few missing glyphs.

2006-04-05  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Implement support for ref pointers to arrays of base types.

2006-04-04  Pavel Semerad <semerad@sisal.mff.cuni.cz>

	* dlls/dinput/joystick_linux.c:
	dinput: Fixed joystick with POV and JoystickAImpl_SetProperty-proprange.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/event.c, dlls/x11drv/winpos.c:
	x11drv: Avoid redundant flushing of the thread display.

	* dlls/x11drv/window.c:
	x11drv: Remove one more XSync call.

2006-04-04  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/device.c:
	wined3d: CreateDevice should use the root window.

	* dlls/wined3d/device.c:
	wined3d: Output unhandled renderstates with debug_d3drenderstate.

	* dlls/wined3d/utils.c, include/d3d9types.h, include/wine/wined3d_types.h:
	wined3d: Add D3DFMT_L16.

2006-04-04  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/x11drv/x11drv_main.c:
	x11drv: Make UseXVidMode default to yes.

2006-04-03  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/x11drv/xvidmode.c:
	x11drv: Allow xvidmode to always initialize at least for the gamma functions.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c:
	setupapi: Add a stub implementation for RegistryDelnode.

2006-04-04  Huw Davies <huw@codeweavers>

	* dlls/gdi/freetype.c:
	gdi32: Use a function to add entries to the substitution list
	(based on a patch by Byeong-Sik Jeon).

2006-04-04  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Use RtlUshortByteSwap to read big endian words.

2006-04-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCUBEMAP_FACES to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h:
	wined3d: Define WINED3DGAMMARAMP based on D3DGAMMARAMP / DDGAMMARAMP.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/exticon.c:
	user: Fixed PrivateExtractIcons to pass the tests when using native dlls.

	* tools/Makefile.in, tools/winegcc/Makefile.in:
	tools: Add LDFLAGS to all the linker invocations.

	* tools/winegcc/winegcc.c:
	winegcc: Don't use the library full name for .so libs.

2006-04-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/small_fonts.sfd:
	fonts: Add cyrillic glyphs to the "Small Fonts" built-in bitmap font.

	* fonts/small_fonts.sfd:
	fonts: Use pixels instead of logical units for "Small Fonts" bitmap font metrics.

2006-03-09  Augusto Arcoverde da Rocha <agarobr.listas@gmail.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Fixed handling of XK_KP_Separator.

2006-04-03  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegInstallA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward LaunchINFSectionA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegSaveRestoreOnINFA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegSaveRestoreA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c:
	advpack: Forward RegRestoreAllA to its Unicode counterpart.

2006-03-31  Mike Hearn <mh@codeweavers.com>

	* dlls/kernel/process.c:
	kernel: Don't enforce process handle access rights in Win98 mode.

2006-04-03  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add a couple more debugging output formats.

2006-04-04  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Filter out garbage from arts-config --libs too.

	* dlls/gdi/freetype.c:
	gdi: Change ReadFontDir error into a warning.

2006-04-04  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DCLIPSTATUS to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/d3d9/swapchain.c,
	  dlls/wined3d/device.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DRASTERSTATUS to wined3d_types.h.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/.gitignore, programs/msiexec/Makefile.in,
	  programs/msiexec/rsrc.rc:
	msiexec: Add an icon for msiexec and .msi files.

2006-04-03  James Hawkins <truiken@gmail.com>

	* tools/wine.inf:
	wine.inf: Add hhctrl.ocx to the list of fake dlls.

2006-04-04  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac:
	configure: Warn if the fonts aren't going to be built.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* server/ptrace.c:
	server: Don't single step into signal handlers.

	* dlls/ntdll/signal_i386.c:
	ntdll: Save FPU context for all exceptions.

2006-04-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/usrmarshal.c:
	ole32: Add documentation for the clip format user marshal functions.

	* tools/widl/typegen.c:
	widl: Fix the type offset for generated conformant string calls.

	* dlls/kernel/kernel32.spec:
	kernel: Remove some stubs that aren't present in NT.

	* dlls/kernel/file.c:
	kernel: Document some file functions.

2006-04-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Make use of WINED3DDEVICE_CREATION_PARAMETERS.

2006-04-03  Mike McCormack <mike@codeweavers.com>

	* dlls/user/driver.c:
	user32: More informative message on failure to load x11drv.

2006-04-03  Huw Davies <huw@codeweavers.com>

	* fonts/.gitignore, fonts/Makefile.in, fonts/small_fonts.sfd:
	fonts: Add an 11 ppem strike of 'Small Fonts'.

2006-04-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/.gitignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/bitmap.c, dlls/gdi/tests/font.c,
	  dlls/gdi/tests/gdiobj.c, dlls/gdi/tests/pen.c:
	gdi: Separate GDI tests by moving them into appropriate files.
	Separate GDI tests by moving them into appropriate files:
	bitmap tests to bitmap.c, font test to font.c, pen tests to pen.c.

	* dlls/gdi/gdiobj.c:
	gdi: Move WineEngInit call before stock fonts creation.
	Move WineEngInit call before stock fonts creation, otherwise we end up
	caching wrong fonts before loading built-in bitmap fonts.

2006-04-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/vertexbuffer.c:
	d3dx: VertexBuffer should keep reference to the parent device object.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/fakedll.c:
	setupapi: Copy the complete resource tree into the fake dlls.

2006-04-03  Hwang YunSong <hys545@dreamwiz.com>

	* dlls/twain/rsrc.rc, dlls/twain/twain_Ko.rc:
	twain: Add a Korean resource.

2006-04-03  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Fix pausing when the hardware does not support it.

2006-04-01  Matthew Kehrer <kehrermatt@gmail.com>

	* dlls/url/Makefile.in, dlls/url/url.spec, dlls/url/url_main.c:
	url: Add a function and two stubs.

2006-04-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d8/swapchain.c, dlls/d3d9/device.c,
	  dlls/d3d9/swapchain.c, dlls/wined3d/device.c,
	  dlls/wined3d/swapchain.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DBACKBUFFER_TYPE to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DDISPLAYMODE to wined3d_types.h.

2006-04-03  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: STGM_PRIORITY implies STGM_SHARE_EXCLUSIVE.

	* dlls/kernel/profile.c:
	kernel32: [Read/Write]PrivateProfile functions accept a NULL filename.

	* dlls/msi/string.c:
	msi: Improve the string table hash.

2006-04-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c:
	ntdll: Process --help and --version args earlier on during startup.

2006-04-01  Antonio Codazzi <f_sophia@libero.it>

	* dlls/msi/msi.rc, dlls/msi/msi_It.rc:
	msi: Italian language support.

	* dlls/setupapi/Eo.rc, dlls/setupapi/setupapi.rc:
	setupapi: Esperanto language support.

	* programs/uninstaller/Eo.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Esperanto language support.

	* programs/uninstaller/It.rc:
	uninstaller: Italian language support.

	* programs/notepad/Eo.rc, programs/notepad/rsrc.rc:
	notepad: Esperanto language support.

	* programs/notepad/It.rc:
	notepad: Italian language support.

	* dlls/msi/msi.rc, dlls/msi/msi_Eo.rc:
	msi: Esperanto language support.

	* dlls/commdlg/cdlg_Eo.rc:
	commdlg: Esperanto language update.

	* dlls/commdlg/cdlg_It.rc:
	commdlg: Italian language update.

	* dlls/wineps/wps_It.rc:
	wineps: Italian language update.

	* dlls/user/resources/user32_Eo.rc:
	user32: Esperanto language update.

	* dlls/comctl32/comctl_Eo.rc, dlls/comctl32/rsrc.rc:
	comctl32: Esperanto language support.

	* dlls/comctl32/comctl_It.rc:
	comctl32: Italian language updates.

	* programs/clock/Eo.rc, programs/clock/rsrc.rc:
	clock: Esperanto language support.

2006-04-01  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/basetexture.c:
	wined3d: Do not set the mipmap level count every time a texture is used.

2006-04-02  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/gdiobj.c:
	gdi32: Add tests for 'Small Fonts'.

2006-04-03  qingdoa daoo <qingdao33122@yahoo.com>

	* dlls/msvcrt/environ.c, dlls/msvcrt/tests/environ.c:
	msvcrt: Allow environment strings longer than 512 characters.

2006-04-02  Marcus Meissner <marcus@jet.franken.de>

	* dlls/usp10/usp10.c:
	usp10: Fixed debug output of ScriptItemize.

2006-04-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/keyboard.c, dlls/dinput/tests/keyboard.c:
	dinput: Keyboard should be acquired before calling GetDeviceState.

2006-04-01  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/regedit/No.rc:
	regedit: Fix typo in Norwegian resources.

2006-04-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: Get rid of XSync calls on window creation and destruction.

	* dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c, dlls/x11drv/xrender.c:
	x11drv: Ignore X errors caused by windows being created or deleted.

2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/tests/metafile.c:
	gdi: In metafile test only print debug output if enabled.

	* loader/preloader.c:
	loader: Hide the preloader from the ps output.

	* tools/winewrapper:
	winewrapper: Remove a couple of variables that are no longer needed.

	* dlls/ntdll/loadorder.c:
	ntdll: Get rid of the loadorder wildcard support, builtin is always the default now.

2006-03-31  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Fix handling of invalid parameter in GlobalSize().

2006-03-31  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	ole: Use ncalrpc instead of ncacn_np as the RPC transport.
	Use ncalrpc instead of ncacn_np as the transport as this is more similar
	to how ole32 from NT works and should also be compatible with rpcrt4
	from Win9x, allowing more combinations of dlls to work.

	* dlls/kernel/process.c:
	kernel: Add some documentation for simple process functions.

	* tools/widl/typegen.c:
	widl: There's no need to cast _StubMsg - it's already of the correct type.

	* tools/widl/server.c:
	widl: Only assign variables if not a string and only create a local variable if not a sized parameter.
	Only assign variables if not a string and only create a local variable
	if not a sized parameter. Fixes type mismatches in the generated code
	due to differences in the algorithms between creating local variables
	and using them.

	* tools/widl/server.c:
	widl: Initialise the temporary variable to 0 for parameters with more than one level of indirection.

	* tools/widl/server.c:
	widl: Create the correct variable type for parameters with more than one level of indirection.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.h:
	widl: Re-use print_phase_basetype for generating return value marshaling and unmarshaling code.

	* tools/widl/typegen.c:
	widl: Move handling of base type marshaling and unmarshaling to a separate function.
	Move handling of base type marshaling and unmarshaling to a separate
	function and improve it to support return values.

	* tools/widl/typegen.c:
	widl: Use print_phase_function for printing NdrPointerFree call.

	* tools/widl/typegen.c:
	widl: Add a function to generate the Ndr type calls.
	- Add a function to generate the Ndr type calls.
	- Fix a typo where the aligned buffer was added to itself, rather than
	assigned.

	* tools/widl/typegen.c:
	widl: Only write the buffer incrementing code for the marshaling and unmarshaling phases.
	Only write the buffer incrementing code for the marshaling and
	unmarshaling phases - buffer sizing is handled elsewhere and freeing
	isn't applicable.

	* tools/widl/typegen.c:
	widl: Output the necessary sizing information for other phases.
	Output the necessary sizing information for PHASE_BUFFERSIZE and
	PHASE_FREE as well as PHASE_MARSHAL. Standardise this rule in a new
	function.

	* tools/widl/client.c:
	widl: Output NULL ref pointer check for pointer levels > 1 too.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix a GCC warning in the generated client and server code.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: The lval member of var_t is essentially a duplicate of eval->cval.
	- Generate eval's for enums that don't explicitly have one. This means
	that enums written in header files won't match exactly what has been put
	into the IDL file, but the numeric constat is the same and MIDL does a
	similar thing.
	- Replace constant lookups with eval->cval instead of lval.

	* tools/widl/typegen.c:
	widl: De-reference parameters' types before deciding what to do with them.
	De-reference parameters' types before deciding what to do with them.
	Also dereference string parameters since they are immediately
	dispatched to write_string_tfs when the string attribute is detected
	without any further processing done on them.

	* tools/widl/typegen.c:
	widl: Write pointer calls for all non-basetype pointer parameters to functions.

	* tools/widl/header.c:
	widl: Write definitions for MIDL_user_allocate and MIDL_user_free in the header.
	Write definitions for MIDL_user_allocate and MIDL_user_free in the
	header when writing out RPC interfaces to prevent compile failures in
	the generated client/server code.

	* tools/widl/header.c:
	widl: Write out the pre- and postamble for RPC interfaces with no methods.

	* tools/widl/header.c:
	widl: Output interface defined guard for rpc interfaces too.

	* tools/widl/typegen.c:
	widl: NdrFcShort should be written out instead of NdrShort.

	* tools/widl/typegen.c:
	widl: Output the numeric equivalent of FC_END, not the string FC_END itself.

	* tools/widl/typegen.c:
	widl: Support references in type_memsize.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Only output code for non-object interfaces in client and server.
	Only output code for non-object interfaces in client and server
	generation and convert the while loops into for loops.

2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.11.

----------------------------------------------------------------
2006-03-31  Alexandre Julliard <julliard@winehq.org>

	* server/request.c:
	server: Avoid crash on startup when the configuration dir doesn't exist.

	* dlls/user/tests/win.c:
	user/tests: Flush events before running the keyboard event test.

	* dlls/comctl32/tests/monthcal.c:
	comctl32: Force a specific day value in the monthcal test.
	Avoids test failure when the current day happens to be the 31st...

2006-03-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec:
	advpack: LaunchINFSectionExW is available, so mark it so in the spec file.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward ExecuteCabA to its Unicode counterpart.

2006-03-30  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/dcom.idl:
	ole32: Remove unnecessary commenting out of the RPC interfaces in the dcom idl file.

	* dlls/wininet/urlcache.c:
	wininet: Fix some string length calculations.
	Fix some string length calculations that didn't account for the
	different sized characters with Unicode.

	* dlls/wininet/urlcache.c:
	wininet: Only access the URL in the cache by the provided offset.

2006-03-30  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move fields common to vertex shaders and pixel shaders to IWineD3DBaseShader.

2006-03-30  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/proplist.c:
	crypt32: Tiny fixes.

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Fix certificate adding
	- Implement add disposition in CertAddCertificateContextToStore,
	rather than in each store.
	- Add a few more tests.

2006-03-30  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/undname.c:
	msvcrt: Fix read beyond end of string in __unDNameEx().

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add DllAllocSplMem and DllFreeSplMem.

2006-03-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/metafile.c:
	gdi32: Add a test for WMF->EMF conversions performed by SetWinMetaFileBits.
	These tests currently fail in Wine.

	* dlls/x11drv/keyboard.c:
	x11drv: Update Hungarian keyboard layout to better match the X11 one.

2006-03-29  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c, tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Implement support for ref pointers to strings.

2006-03-30  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi32: Move the font substitution list to a standard Wine list
	(based on a patch by Byeong-Sik Jeon).

2006-03-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c:
	user: Only wait for sent messages in wait_message_reply.

	* dlls/x11drv/event.c:
	x11drv: Filter a few more event types in filter_event.
	ConfigureNotify and related events should only be processed when
	posted messages are selected. There's no need to handle MappingNotify
	if keyboard events are not selected.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Removed a number of no longer needed dependencies.

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/spoolss/.gitignore, dlls/spoolss/Makefile.in,
	  dlls/spoolss/spoolss.spec, dlls/spoolss/spoolss_main.c:
	spoolss: Add minimal spoolss.dll.

2006-03-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/message.c, dlls/user/win.c:
	user: Don't send WM_PARENTNOTIFY to the desktop window.

2006-03-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Open the INF file if the RSC_FLAG_INF flag is specified.

2006-03-30  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c:
	advpack: Forward LaunchINFSectionExA to its Unicode counterpart.

	* dlls/advpack/install.c:
	advpack: Fix the documentation for the cmdline parameter of LaunchInfSection/Ex.

2006-03-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/except.c:
	kernel: Resource browsing.
	Try to be a bit more strict when checking for resource mapping in
	exception handler (and prevent some exceptions while in exception
	handler).

2006-03-30  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/d3d8_private.h, dlls/d3d9/d3d9_private.h,
	  dlls/wined3d/directx.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DDEVTYPE to wined3d_types.h.

2006-03-30  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/twain/rsrc.rc, dlls/twain/twain_De.rc:
	twain: Add German resource.

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c:
	kernel32: Display the parameter that caused a page fault in GlobalFree().

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Fix handling of invalid parameter in GlobalFlags().

2006-03-30  Detlef Riekenberg <wine.dev@web.de>

	* tools/wineconf:
	tools: Remove wineconf.

2006-03-29  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS:
	DEVELOPER-HINTS:  Some directories are renamed / removed / added.

2006-03-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c:
	oleaut32: Add IPersist to QueryInterface.

	* dlls/oleaut32/typelib.c:
	oleaut32: Zero out parameter in LoadRegTypeLib in case of failure.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Replace memcmp with IsEqualIID macro.
	Replace memcmp with IsEqualIID macro that doesn't require a size
	parameter and remove the unneeded brackets to give more compact and
	more readable code.

	* dlls/ole32/compobj.c:
	ole32: Don't process posted messages in CoWaitForMultipleHandles.
	Tests with native show that during COM calls posted messages aren't
	retrieved other than COM calls so change the PeekMessage parameters in
	CoWaitForMultipleHandles to duplicate this.

	* dlls/ole32/compobj.c:
	ole32: Try to retrieve messages that are COM calls first.
	Try to retrieve messages that are COM calls first in
	CoWaitForMultipleHandles before retrieving other types.

	* dlls/ole32/compobj.c:
	ole32: Put the PeekMessage call of CoWaitForMultipleHandles into a separate function.
	Put the PeekMessage call of CoWaitForMultipleHandles into a separate
	function so that the order and type of the messages retrieved can be
	customised in the future.

	* dlls/ole32/compobj.c:
	ole32: Whether the message loop is entered in CoWaitForMultipleHandles,
	should depend on whether the current apartment is a single threaded one.

	* dlls/ole32/compobj.c:
	ole32: Pass the no yield flag to PeekMessage.
	Pass the no yield flag to PeekMessage since we sleep in
	MsgWaitForMultipleObjectsEx and the extra context switch is wasteful.

	* server/token.c:
	server: Store the token source.

2006-03-29  Huw Davies <huw@codeweavers.com>

	* include/winuser.h:
	include: Add DFC_POPUPMENU.

2006-03-30  Mike McCormack <mike@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Clean up HTTP_GetCustomHeaderIndex.

	* dlls/wininet/http.c:
	wininet: Use a lookup table sorted by index so we don't need a loop to do lookups.

	* dlls/wininet/http.c:
	WININET: Clean up HttpQueryInfo.
	Fixes another return FALSE without SetLastError.

	* dlls/wininet/http.c:
	wininet: Make sure to set LastError when returning FALSE in HttpQueryInfo.

2006-03-29  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix StgOpenStorage's handling of the STGM_PRIORITY flag.

2006-03-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c, dlls/x11drv/winpos.c, dlls/x11drv/x11drv.h,
	  include/winpos.h:
	x11drv: Replace the SWP_WINE_NOHOSTMOVE flag by a lock count.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/ntdll/cdrom.c:
	ntdll: Fix CDROM raw reads.
	- Fix incorrect data sizes.
	- Fix CDDA addressing.
	- Implement XAForm2 mode on Linux.

2006-03-29  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Disable the desktop option when configuring a specific application.

2006-03-28  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  include/wine/wined3d_interface.h:
	wined3d: Create an IWineD3DBaseShader class.

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	wined3d: Move the vshader_ins and pshader_ins arrays into their respective objects.

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Move the SHADER_OPCODE definition to wined3d_private.h.

	* dlls/wined3d/pixelshader.c:
	wined3d: Pass the correct number of parameters for texld with ps version >= 2.

2006-03-29  Mike McCormack <mike@codeweavers.com>

	* dlls/user/sysparams.c:
	user32: Fix SPI_GETLISTBOXSMOOTHSCROLLING, and implement SPI_SETLISTBOXSMOOTHSCROLLING.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETUIEFFECTS.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETTOOLTIPANIMATION and SPI_[GS]ETTOOLTIPFADE.

	* dlls/user/sysparams.c:
	user32: Implement SPI_[GS]ETMENUANIMATION and SPI_[GS]ETSELECTIONFADE.

	* dlls/user/sysparams.c:
	user32: Implement SystemParametersInfo(SPI_[SG]ETCURSORSHADOW).

	* dlls/user/sysparams.c:
	user32: Implement SystemParametersInfo(SPI_[GS]ETCOMBOBOXANIMATION).

	* dlls/user/sysparams.c:
	user32: Implement SPI_[SG]ETCARETWIDTH.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/mshtml/persist.c:
	mshtml: Don't free the URL we have just stored in the callback object.

	* dlls/x11drv/mouse.c:
	x11drv: Only warp the mouse pointer if it has actually moved.

2006-03-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: Add a TRACE for IDirect3DDevice8Impl_CreateVertexBuffer.

2006-03-28  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/swapchain.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_types.h:
	wined3d: Use WINED3DSWAPEFFECT in the wined3d headers and code.

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/surface.c, dlls/d3d8/texture.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c, dlls/d3d9/cubetexture.c,
	  dlls/d3d9/d3d9_private.h, dlls/d3d9/device.c,
	  dlls/d3d9/indexbuffer.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/d3d9/vertexbuffer.c, dlls/d3d9/volume.c,
	  dlls/d3d9/volumetexture.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DPOOL to wined3d_types.h.

2006-03-22  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/.gitignore, dlls/twain/Makefile.in, dlls/twain/ds_ctrl.c,
	  dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c, dlls/twain/resource.h,
	  dlls/twain/rsrc.rc, dlls/twain/twain32_main.c,
	  dlls/twain/twain_En.rc, dlls/twain/twain_i.h, dlls/twain/ui.c:
	twain: Add a property sheet UI for scanning.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/desktop.c, dlls/x11drv/window.c, dlls/x11drv/x11drv.h:
	x11drv: Reinitialize the display settings when using a desktop window.

2006-03-22  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/ds_image.c:
	twain: A few cleanups, using some consts from sane.

2006-03-24  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Implement support for pointers to base types.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c:
	advapi32: Fixed compiler warnings.

2006-03-26  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/advapi32/security.c, dlls/advapi32/tests/security.c,
	  include/winnt.h:
	advapi32: Fixed building TRUSTEEs with objects.
	Fill the TRUSTEE structure properly in BuildTrusteeWithObjectsAndName
	and BuildTrusteeWithObjectsAndSid, including regression tests.

	* dlls/comctl32/rebar.c:
	comctl32: Rebar size fix.
	Rebars without any bands should have a height/width of 0.

2006-03-26  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wineshelllink:
	wineshelllink: Remove quotes from Path=<workdir>.

2006-03-28  Jonathan Ernst <jonathan@ernstfamily.ch>

	* tools/wine.inf:
	wine.inf: Add some more fake dlls to the system directory.

2006-03-28  Mike McCormack <mike@codeweavers.com>

	* dlls/mpr/wnet.c:
	mpr: Improve the stub for WNetGetUniversalNameW.

	* server/change.c:
	server: Fix a race condition in the delivery of change notifications.

2006-03-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/window.c:
	x11drv: Avoid setting text or WM hints of the X root window.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/msacm/winemp3/.gitignore, dlls/msacm/winemp3/Makefile.in,
	  dlls/msacm/winemp3/common.c, dlls/msacm/winemp3/dct64_i386.c,
	  dlls/msacm/winemp3/decode_i386.c, dlls/msacm/winemp3/huffman.h,
	  dlls/msacm/winemp3/interface.c, dlls/msacm/winemp3/l2tables.h,
	  dlls/msacm/winemp3/layer1.c, dlls/msacm/winemp3/layer2.c,
	  dlls/msacm/winemp3/layer3.c, dlls/msacm/winemp3/mpegl3.c,
	  dlls/msacm/winemp3/mpg123.h, dlls/msacm/winemp3/mpglib.h,
	  dlls/msacm/winemp3/tabinit.c, dlls/msacm/winemp3/winemp3.acm.spec,
	  dlls/winemp3.acm/.gitignore, dlls/winemp3.acm/Makefile.in,
	  dlls/winemp3.acm/common.c, dlls/winemp3.acm/dct64_i386.c,
	  dlls/winemp3.acm/decode_i386.c, dlls/winemp3.acm/huffman.h,
	  dlls/winemp3.acm/interface.c, dlls/winemp3.acm/l2tables.h,
	  dlls/winemp3.acm/layer1.c, dlls/winemp3.acm/layer2.c,
	  dlls/winemp3.acm/layer3.c, dlls/winemp3.acm/mpegl3.c,
	  dlls/winemp3.acm/mpg123.h, dlls/winemp3.acm/mpglib.h,
	  dlls/winemp3.acm/tabinit.c, dlls/winemp3.acm/winemp3.acm.spec:
	winemp3: Renamed the dlls/msacm/winemp3 directory to dlls/winemp3.acm.

	* configure, configure.ac, dlls/Makefile.in, dlls/msacm/msg711/.gitignore,
	  dlls/msacm/msg711/Makefile.in, dlls/msacm/msg711/msg711.acm.spec,
	  dlls/msacm/msg711/msg711.c, dlls/msg711.acm/.gitignore,
	  dlls/msg711.acm/Makefile.in, dlls/msg711.acm/msg711.acm.spec,
	  dlls/msg711.acm/msg711.c:
	msg711: Renamed the dlls/msacm/msg711 directory to dlls/msg711.acm.

	* configure, configure.ac, dlls/Makefile.in,
	  dlls/msacm/msadp32/.gitignore, dlls/msacm/msadp32/Makefile.in,
	  dlls/msacm/msadp32/msadp32.acm.spec, dlls/msacm/msadp32/msadp32.c,
	  dlls/msadp32.acm/.gitignore, dlls/msadp32.acm/Makefile.in,
	  dlls/msadp32.acm/msadp32.acm.spec, dlls/msadp32.acm/msadp32.c:
	msadp32: Renamed the dlls/msacm/msadp32 directory to dlls/msadp32.acm.

	* configure, configure.ac, dlls/Makefile.in, dlls/imaadp32.acm/.gitignore,
	  dlls/imaadp32.acm/Makefile.in, dlls/imaadp32.acm/imaadp32.acm.spec,
	  dlls/imaadp32.acm/imaadp32.c, dlls/msacm/imaadp32/.gitignore,
	  dlls/msacm/imaadp32/Makefile.in,
	  dlls/msacm/imaadp32/imaadp32.acm.spec,
	  dlls/msacm/imaadp32/imaadp32.c:
	imaadp32: Renamed the dlls/msacm/imaadp32 directory to dlls/imaadp32.acm.

	* dlls/x11drv/desktop.c, dlls/x11drv/window.c,
	  dlls/x11drv/winex11.drv.spec, dlls/x11drv/x11drv.h,
	  dlls/x11drv/x11drv_main.c, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h:
	x11drv: Moved desktop mode handling to the explorer process.
	Per-application desktop mode settings are no longer supported.  Apps
	can be launched in a specific desktop window by using:
	explorer /desktop=name[,widthxheight] app.exe [args]
	If the named desktop already exists the app is launched inside it. The
	default desktop is cleverly named "default".

	* dlls/x11drv/window.c:
	x11drv: Allow setting WM hints for the desktop window.

	* dlls/x11drv/winpos.c:
	x11drv: Support SetWindowPos and ShowWindow on the desktop window.

2006-03-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsservice.c, dlls/mshtml/view.c:
	mshtml: Added tooltip implementation.

2006-03-27  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/commdlg/fontdlg.c:
	commdlg: Properly set and retrieve colour value from combo box .

2006-03-27  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/systray.c, programs/explorer/systray.c:
	shell32: Adding a systray item with an invalid icon handle is allowed.

2006-03-27  Huw Davies <huw@codeweavers.com>

	* dlls/riched20/txtsrv.c:
	riched20: Take a ref on text host.

2006-03-27  Mike McCormack <mike@codeweavers.com>

	* dlls/user/input.c:
	user32: Send a fake mouse movement event after releasing capture.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Limit header_size to the file size.

	* dlls/x11drv/window.c, dlls/x11drv/x11drv.h, dlls/x11drv/x11drv_main.c,
	  dlls/x11drv/xrandr.c, dlls/x11drv/xvidmode.c:
	x11drv: Get rid of the using_wine_desktop flag.

	* dlls/user/user_main.c, server/process.c, server/user.h, server/window.c,
	  server/winstation.c:
	server: Connect to the window station and desktop specified by startup info.
	If window station and desktop aren't inherited from the parent, don't
	connect to them from the server, but from the USER init code where we
	can get the proper values from the startup info structure.

	* server/window.c:
	server: Store window properties in the global atom table instead of
	the per-winstation table.

2006-03-25  Louis. Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/shell32/.gitignore, dlls/shell32/Makefile.in,
	  dlls/shell32/shres.rc, dlls/shell32/shresdef.h:
	shell32: Add an uncompressed AVI displaying the word searching.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Implement the launching of executables in RunSetupCommand.

	* dlls/advpack/tests/install.c, include/advpub.h, include/urlmon.idl:
	advpack: Define S_ASYNCHRONOUS in advpub.h.

2006-03-27  Alexandre Julliard <julliard@winehq.org>

	* server/process.c, server/request.c:
	server: Fixed process exit code on FreeBSD.

2006-03-24  Petr Tesarik <hat@tesarici.cz>

	* programs/winedbg/break.c:
	winedbg: Fix stepping over an instruction.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/winedos/dosexe.h, dlls/winedos/interrupts.c:
	winedos: Clear TF bit before passing control to a VM86 interrupt handler.

2006-03-26  f_sophia <f_sophia@libero.it>

	* programs/winhelp/Eo.rc, programs/winhelp/rsrc.rc:
	winhelp: Added Esperanto language support.

2006-03-26  Antonio Codazzi <f_sophia@libero.it>

	* dlls/shell32/shell32_Eo.rc:
	shell32: Updated Esperanto translation.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/kernel/process.c, dlls/kernel/tests/process.c:
	kernel: Error out of CreateProcess if the specified current directory
	doesn't exist.

2006-03-26  Vitaly Lipatov <lav@etersoft.ru>

	* tools/wine.inf:
	wine.inf: Add some dll stub dll to the system directory.

2006-03-24  Paul Vriens <paul.vriens@xs4all.nl>

	* tools/wine.inf:
	wine.inf: Add SystemRoot.

2006-03-27  Petr Tesarik <hat@tesarici.cz>

	* dlls/ntdll/signal_i386.c:
	ntdll: Fix debug exceptions from VM86.
	- Set ContextFlags accordingly in save_vm86_context().
	- Raise debug exceptions correctly for debug exceptions.
	- Do not clear TF bit for VM86-generated debug exceptions.

2006-03-26  James Hawkins <truiken@gmail.com>

	* dlls/advpack/install.c, dlls/advpack/tests/install.c:
	advpack: Set hexe to a non-NULL value to test that the handle is NULL on return.

2006-03-26  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/filedlg.c:
	commdlg: Malformed filters are still added to the filter combo box.

	* dlls/comctl32/comctl32undoc.c:
	comctl32: Having an MRU list without a compare function works in Windows.

2006-03-26  H. Verbeet <hverbeet@gmail.com>

	* dlls/msvcrt/scanf.h, dlls/msvcrt/tests/scanf.c:
	msvcrt: Fix reading of signed numbers with unsigned read types in scanf.

2006-03-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/file.c:
	msvcrt: Fix fflush() of files opened for read.
	Some apps, for no particular reason, call fflush() on files opened for
	read.  This keeps them from tripping over their shoelaces.

2006-03-25  Tomas Carnecky <tom@dbservice.com>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/x11drv/opengl.c:
	opengl: Put OpenGL setup functions into their own debug channel.

2006-03-25  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	winedbg: Fixes for identifiers.
	- fixed lexical rules for a path name
	- fixed identifier rules so that we get the right precedence
	between ! and ::
	- modules (in mod!name forms) are now handled as tIDENTIFIER
	(tPATH was buggy anyhow)

	* dlls/dbghelp/symbol.c:
	dbghelp: Module should be case insensitive.
	When looking up a symbol name in the form module!name, the module
	lookup should be insensitive.

2006-03-24  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/directx.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/d3d9_private.h,
	  dlls/d3d9/device.c, dlls/d3d9/directx.c, dlls/d3d9/surface.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DMULTISAMPLE_TYPE to wined3d_types.h.

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Add WINED3DTRIPATCH_INFO to wined3d_types.h.

2006-03-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Move the D3DSIO_DCL dumping code into its own function.

2006-03-23  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/.gitignore, dlls/advpack/tests/Makefile.in,
	  dlls/advpack/tests/install.c:
	advpack: Add initial tests for RunSetupCommand.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward DelNodeA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/install.c:
	advpack: Forward RunSetupCommandA to its Unicode counterpart.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward the FileSaveRestore API to their Unicode counterparts.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward GetVersionFromFileA/ExA to their Unicode counterparts.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward SetPerUserSecValuesA to its Unicode counterpart.

2006-03-24  Ken Thomases <ken@codeweavers.com>

	* server/process.c:
	server: Fix memory leak in read_process_memory handler.

2006-03-24  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/directory.c:
	ntdll: Recursive notify is implemented.

2006-03-24  Phil Krylov <phil@newstar.rinet.ru>

	* server/signal.c:
	server: Fix compilation under Darwin 7.

2006-03-23  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlelem2.c, dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLElement2 implementation.

	* include/exdisp.idl:
	exdisp.idl: Added missing IE6 methods to DWebBrowserEvents2.

2006-03-23  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/device.c, dlls/d3d9/device.c, dlls/wined3d/device.c,
	  include/wine/wined3d_interface.h:
	wined3d: Rectpatch code fix.
	Update the wined3d code to use WINED3DRECTPATCH_INFO, which was added
	with an older patch.

2006-03-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/time.c:
	msvcrt: Implementation of wcsftime (based on a patch by Mike McCormack).

2006-03-22  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/kernel/cpu.c:
	kernel: Add processor specific environment variables.

2006-03-23  James Hawkins <truiken@gmail.com>

	* dlls/comctl32/tab.c:
	comctl32: A couple fixes for tab icon offsets.
	- Shift selected icons up and non-selected icons down.
	- Add the top or left draw rect to the vertical offset, because it may
	not be zero.

2006-03-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Implement FileSaveMarkNotExistW.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward AdvInstallFileA to its Unicode counterpart.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward the ansi user stub APIs to their Unicode counterparts.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c:
	advpack: Forward AddDelBackupEntryA to its unicode counterpart.

2006-03-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/environ.c:
	kernel: Remove a couple of incorrect asserts.

2006-03-23  Rein Klazes <wijn@wanadoo.nl>

	* dlls/comctl32/tooltips.c:
	comctl32: Do not free LPSTR_TEXTCALLBACK tooltip texts.

2006-03-22  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/thread.c:
	kernel: Load QueueUserWorkItem function dynamically.

2006-03-23  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c, tools/widl/typegen.c:
	widl: Fix base type alignments.
	Generate aligned marshal and unmarshal code for base type arguments
	and return values.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Fix format string size calculation.
	- Move proc format string size calculation from client.c and server.c
	to typegen.c.
	- Implement type format string size calculation.

2006-03-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/winstation.c, server/atom.c, server/class.c:
	server: Class and global atoms should not be local to a window station.

2006-03-22  Marcus Meissner <meissner@suse.de>

	* configure, configure.ac, programs/Makefile.in,
	  programs/avitools/.gitignore, programs/avitools/Makefile.in,
	  programs/avitools/aviinfo.c, programs/avitools/aviplay.c,
	  programs/avitools/icinfo.c, programs/icinfo/.gitignore,
	  programs/icinfo/Makefile.in, programs/icinfo/icinfo.c:
	programs: Move icinfo out of avitools.

2006-03-22  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/vertexshader.c:
	wined3d: Set vertex attribute pointers defined in vertex declarations properly.

	* dlls/wined3d/vertexshader.c:
	wined3d: Fix slightly misleading ParseVertexDeclarationUsage naming.

	* dlls/wined3d/vertexdeclaration.c, include/wine/wined3d_types.h:
	wined3d: Initialise WINED3DVERTEXELEMENT's Reg field in
	IWineD3DVertexDeclarationImpl_ParseDeclaration9.

	* dlls/wined3d/vertexdeclaration.c, dlls/wined3d/wined3d_private.h:
	wined3d: glTypeLookup cleanup.
	Use a struct instead of an UINT array as entries in the glTypeLookup
	table.

	* dlls/wined3d/pixelshader.c:
	wined3d: Store the pixelshader version in the pixelshader object.

2006-03-22  Huw Davies <huw@codeweavers.com>

	* dlls/user/edit.c, dlls/user/tests/edit.c:
	user32: Only adjust the margins if the edit control is above a certain size.

2006-03-22  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward RebootCheckOnInstallA to its Unicode counterpart.

2006-03-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Clean up get_all and tags (also fixes a typo).

2006-03-22  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a shdocvw.dll stub dll to the system directory.

	* dlls/msi/action.c:
	msi: Add stub for the RegisterComPlus and UnregisterComPlus actions.

	* dlls/msi/package.c:
	msi: Don't crash when logging a record with only one field.

2006-03-22  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/handle.c, server/handle.h, server/mailslot.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/registry.c, server/request.c, server/signal.c:
	server: New scheme for cleaning up objects on server exit.
	Objects stored in static variables can now be marked when they are
	created and are automatically cleaned up on exit. This avoids having
	to export a bunch of close_* functions.

2006-03-21  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward TranslateInfStringExA to its unicode counterpart.

	* dlls/advpack/tests/files.c:
	advpack: Add second null for double null terminated lists.

2006-03-22  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Show "hidden dialogs" but hide them initially.

	* dlls/msi/custom.c:
	msi: Implement custom action type 17.

	* dlls/riched20/.gitignore, dlls/riched20/Makefile.in,
	  dlls/riched20/version.rc:
	riched20: Add a version resource.

	* dlls/wintrust/wintrust_main.c:
	wintrust: Use the definition of WINTRUST_ACTION_GENERIC_VERIFY_V2 in softpub.h.

	* include/Makefile.in, include/softpub.h:
	include: Add softpub.h.

2006-03-22  Kevin Koltzau <kevin@plop.org>

	* dlls/ole32/tests/.gitignore, dlls/ole32/tests/Makefile.in,
	  dlls/ole32/tests/clipboard.c:
	ole32: Initial tests for OLE clipboard functions.

2006-03-21  Bryan Mayland <bmayland@leoninedev.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/sync.c:
	kernel: WaitForMultipleObjectsEx should accept up to MAXIMUM_WAIT_OBJECTS.

2006-03-21  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implements FR_WHOLEWORD for EM_FINDTEXT.
	Add FR_WHOLEWORD to riched20's EM_FINDTEXT and fix a couple small bugs
	introduced in earlier patches for EM_FINDTEXT. Additional test cases
	have been added to check for corner cases.  Also improve input
	validation.

2006-03-21  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/ddrawmodes.c, dlls/ole32/datacache.c,
	  dlls/ole32/storage32.c, dlls/oleaut32/dispatch.c,
	  dlls/shell32/shlfolder.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/path.c, dlls/wininet/gopher.c:
	Assorted spelling fixes.

	* programs/taskmgr/taskmgr.c, programs/taskmgr/taskmgr.h:
	taskmgr: Avoid forward declarations and make functions static.

	* programs/taskmgr/applpage.c:
	taskmgr: Reorder functions to avoid forward declarations.

	* programs/taskmgr/about.c, programs/taskmgr/affinity.c,
	  programs/taskmgr/column.c, programs/taskmgr/graph.c,
	  programs/taskmgr/perfpage.c, programs/taskmgr/proclist.c,
	  programs/taskmgr/procpage.c:
	taskmgr: Avoid forward declarations and make functions static.

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

	* include/winerror.h:
	include: Add missing error and facility codes.

	* dlls/advapi32/advapi32.spec:
	advapi32: Fix the LsaEnumerateAccountRights() export.

	* include/ntsecapi.h:
	include: Standardize the LsaLookupNames() prototype.

2006-03-21  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut: ITypeInfo::GetIDsOfNames should search inherited interfaces
	regardless of what type they are.
	Add a test for this and dump type infos created with CreateDispTypeInfo.

2006-03-21  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/gdiobj.c, tools/sfnt2fnt.c:
	fonts: Use the EBLC table to retrieve the ascent of the bitmap font.

2006-03-21  Jeff Latimer <lats@yless4u.com.au>

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/info.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/winedbg.man.in:
	winedbg: Add display for floating point status.
	Added code to examine and display floating point unit status into
	be_i386.c as info all-regs command.

2006-03-21  Alexandre Julliard <julliard@winehq.org>

	* tools/sfnt2fnt.c:
	sfnt2fnt: Remove output file on failure.

	* dlls/activeds/activeds_main.c, dlls/cfgmgr32/main.c,
	  dlls/cryptdll/cryptdll.c, dlls/d3dim/d3dim_main.c,
	  dlls/d3drm/d3drm_main.c, dlls/msnet32/msnet_main.c,
	  dlls/snmpapi/main.c, dlls/url/url_main.c, dlls/vdmdbg/vdmdbg.c,
	  dlls/winnls32/winnls.c, dlls/wintrust/wintrust_main.c:
	Added DLL_WINE_PREATTACH handling in a number of stub-only dlls.

2006-03-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	msi: Improve handling of short paths.

2006-03-21  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/threadpool.c:
	ntdll: Start of pooling support for RtlQueueWorkItem.
	Start of pooling support for RtlQueueWorkItem. The algorithm
	implmented is very simple - if there are no free threads, create a new
	one.

	* dlls/kernel/tests/thread.c:
	kernel: Add a test for QueueUserWorkItem.

	* dlls/oleaut32/typelib.c:
	oleaut: Better support for invoking methods with VT_VARIANT argument types.

	* dlls/wininet/internet.c:
	wininet: Document InternetCrackUrlW.

	* dlls/wininet/http.c, dlls/wininet/internet.c:
	wininet: InternetCreateUrlW should return the number of bytes needed.
	InternetCreateUrlW should return the number of bytes needed to store
	the URL, not the number of characters (reported by Sven Paschukat).

2006-03-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, include/winnt.h:
	ntdll: Added a DLL_WINE_PREATTACH call to DllMain for builtins.
	By returning FALSE from this call, a builtin dll can specify that we
	should try to load the native one instead.

	* dlls/ddraw/main.c:
	ddraw: Call DDRAW_ChooseDefaultDriver only on PROCESS_ATTACH.

	* dlls/Makefile.in, dlls/Maketest.rules.in, dlls/make_dlls:
	dlls: Removed a number of dll symlinks that are no longer needed.

	* tools/winewrapper:
	winewrapper: Remove explicit call to wineprefixcreate.
	Now that wineprefixcreate detects the build tree automatically, the
	standard behavior of starting it from ntdll should work fine.

	* programs/wcmd/wcmdmain.c:
	wcmd: Try executing the process even if the exe file doesn't exist.
	It may be a builtin exe in which case the CreateProcess call will
	succeed.

	* tools/wine.inf, tools/wineprefixcreate.in:
	wine.inf: Use the new fake dlls mechanism to create placeholders for
	applications instead of using symlinks.

	* dlls/ntdll/loader.c:
	ntdll: Detect the fake dlls created by setupapi and refuse to load them.

	* dlls/setupapi/Makefile.in, dlls/setupapi/fakedll.c,
	  dlls/setupapi/install.c, dlls/setupapi/setupapi_private.h:
	setupapi: Added support for creating fake dlls at install time.
	This should satisfy applications that access a dll file directly. For
	apps that check the dll version in the file, the version resource is
	copied from the builtin dll.

2006-03-18  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dinput/device.c, dlls/dinput/device_private.h,
	  dlls/dinput/keyboard.c, dlls/dinput/mouse.c:
	dinput: Create single thread for mouse and keyboard hook.
	Put keyboard & mouse hook callbacks into separate thread.
	Move few global variables into object. Delete no longer used crit section.
	For hooks to work properly hook callback have to be in a thread
	with message loop. Some games create separate threads just to handle
	mouse and/or keyboard events that do not have message loop.

2006-03-20  Mike Hearn <mike@plan99.net>

	* dlls/opengl32/Makefile.in, dlls/opengl32/wgl.c:
	opengl32: Optimize thunks by storing GL context in the thread environment block.

2006-03-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/gdiobj.c:
	gdi: Fix a couple of todos in the bitmap test.

2006-03-21  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/commdlg/cdlg_Ko.rc:
	commdlg: Updated Korean translation.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

2006-03-21  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/applpage.c:
	taskmgr: Make some functions static.

	* programs/taskmgr/applpage.c:
	taskmgr: Fix some gcc 4.1 warnings caused by commctrl.h macros.

	* programs/winefile/winefile.c:
	winefile: Fix some gcc 4.1 warnings caused by commctrl.h macros.

2006-03-19  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Don't use OpenGL 2.0.

2006-03-20  Paul Vriens <paul.vriens@xs4all.nl>

	* dlls/kernel/cpu.c:
	kernel: Fix model/stepping in GetSystemInfo.
	wProcessorRevision is built from model and stepping.

2006-03-20  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/priority.c:
	taskmgr: Eliminate common code and fix a warning.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Get rid of some incorrect casts.

2006-03-20  Alexandre Julliard <julliard@winehq.org>

	* configure.ac:
	configure: Add autoheader to the compile command.

	* configure, configure.ac, dlls/Makedll.rules.in, loader/Makefile.in,
	  programs/Makeprog.rules.in:
	configure: Use --rpath when linking dlls too.

	* programs/Makefile.in, programs/make_progs:
	programs: Get rid of application symlinks, they are no longer needed.

	* dlls/gdi/tests/gdiobj.c, dlls/x11drv/bitmap.c:
	x11drv: Clear new bitmaps if they don't contain any data.

2006-03-20  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/bitmap.c, dlls/gdi/tests/gdiobj.c:
	gdi: Add a simple test for bitmap bits/metrics
	Add a simple test for bitmap bits/metrics, fix GetBitmapBits for an
	empty (not selected into a DC) bitmap.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/regsvr.c:
	msi: Set the InstallerLocation value when registering msi.dll.

2006-03-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Avoid heap corruption on invalid parameter in GlobalFree().

2006-03-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/change.c:
	kernel: Avoid infinite waits in directory change tests.

2006-03-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: Change the default debug channel to d3d8 for device.c.

	* dlls/d3d8/device.c:
	d3d8: Downgrade a FIXME to a TRACE in IDirect3DDevice8Impl_SetVertexShader.

	* dlls/d3d8/device.c:
	d3d8: Fix comparison in IDirect3DDevice8Impl_DeleteVertexShader.

2006-03-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/persist.c:
	mshtml: Optimize nsACString handling.

	* dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlinput.c,
	  dlls/mshtml/htmlnode.c, dlls/mshtml/htmlselect.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h:
	mshtml: Better QueryInterface implementation.

2006-03-19  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/wordpad/No.rc:
	wordpad: Fix typo in Norwegian resource.

2006-03-19  Vitaly Lipatov <lav@etersoft.ru>

	* programs/regedit/Ru.rc:
	regedit: Fix Russian translation.

	* programs/control/params.h:
	control: Fix datetime name.

2006-03-19  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian translation.

2006-03-19  Mike McCormack <mike@codeweavers.com>

	* include/commctrl.h:
	include: LVSETINFOTIPA does not exist.

2006-03-19  Jeff Latimer <lats@yless4u.com.au>

	* programs/winedbg/tgt_active.c:
	winedbg: Copy floating point status to the dbgcontext.

2006-03-18  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/gdi/driver.c:
	gdi: Handle NT style \\.\DISPLAY1 name that we return.

2006-03-18  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/delete.c, dlls/msi/distinct.c, dlls/msi/insert.c,
	  dlls/msi/msipriv.h, dlls/msi/order.c, dlls/msi/select.c,
	  dlls/msi/table.c, dlls/msi/update.c, dlls/msi/where.c:
	msi: Optimise WHERE operations.
	Optimise WHERE operations on matching against strings by adding a new
	function find_matching_rows to the views, which eliminates the need to
	examine every record when executing a query. Implement this function
	in the table using a hash table on the ID stored in the data.

	* dlls/msi/tests/format.c:
	msi: Add a test for MsiFormatRecord with integer fields.

	* dlls/wininet/cookie.c:
	wininet: Copy from the start of the cookie name, not the cookie data.
	Copy from the start of the cookie name, not the cookie data when
	parsing cookies with a NULL cookie name.

	* include/wininet.h:
	include: Add some more defines to wininet.h.

	* programs/wcmd/wcmdmain.c:
	wcmd: Use PACKAGE_VERSION as the wcmd version.

	* dlls/ole32/rpc.c:
	ole: Use the thread pool for executing RPC calls for better performance
	(after the thread pool has been improved).

2006-03-17  Alexandre Julliard <julliard@winehq.org>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Autodetect the running from build tree case.

	* dlls/setupapi/install.c:
	setupapi: Added support for calling executables in a RegisterDlls section.

2006-03-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: In MODULE_FlushModrefs, also free dlls that haven't been initialized yet.

2006-03-18  Mike McCormack <mike@codeweavers.com>

	* include/windowsx.h:
	Prevent the use of windowsx.h with Wine source.

	* programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Eliminate use of windowsx.h.

2006-03-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: MSC fixes.
	- wrong cut & paste across versions of a given record type
	- wrong definition for register_v2

	* dlls/dbghelp/msc.c:
	dbghelp: Support for LF_VTSHAPE in MSC.
	- added preliminary support for VT (virtual table) shape
	type record
	- as we don't do C++, it's just a hack to get rid of
	some errors

	* dlls/dbghelp/msc.c:
	dbghelp: MSC forward declaration.
	- create an infrastructure for handling forward usage
	of type records
	- used it in some cases (pointer to yet not defined udt,
	function signature, modifiers)

	* dlls/dbghelp/msc.c:
	dbghelp: Type parsing refactoring.
	- seperate types' table handling from a single type handling
	by adding codeview_parse_one_type function
	- factored all calls for caching symt
	- make type parsing helpers return the symt instead of a
	simple error status

	* dlls/dbghelp/msc.c:
	dbghelp: Fixes for NB11 types.
	- when checking debug info in NB09 or NB11 format (CodeView),
	try to load the global types section

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: MSC handling of function signature's parameters.
	- now correctly parsing parameters types for a function
	signature and storing them in dbghelp internal structures

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Cleanup MSC bitfield handling.
	- no longer caching bitfield information but accessing it directly
	when needed
	- removed all kludges for bitfield handling
	- reused BOOL parameter to codeview_get_type for monitoring
	traces (will be used in later patches)

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Fieldlist.
	- now that we have offset tables to type, we can cleanly
	parse the field-lists and remove the associated kludges
	- also adding internal structure for easing parameter sharing
	across functions (codeview_type_parse)
	- in mscvpdb.h, also reparated the type records that are
	referenced from other type records (union codeview_type_ref)
	from type records referenced by symbols (union codeview_type)

	* dlls/dbghelp/msc.c:
	dbghelp: MSC types.
	- enforce the type records that can be accessed by symbols (these are
	anyway the high level ones)

	* dlls/dbghelp/msc.c:
	dbghelp: Types parsing.
	- our engine for parsing types section now requires in entry
	an offsets table for getting directly to each type in the
	section
	- (re)construct this table for PDB types

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: CV's ssearch.
	- added definitions for start_search symbol info
	- silenced warnings from this symbol

	* dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Moved codeview structures and definitions from msc.c to mscvpdb.h.

	* dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c, dlls/dbghelp/mscvpdb.h:
	dbghelp: Compiland and source files are not the same thing.
	- in MSC debug info parsing, clearly separate a source file
	information from a compiland (including in linetab structure)
	- in ELF debug info parsing, now storing compiland directly
	in symtab_elt while browsing the symtab section (we still
	create twice the compilands, once in stabs/dwarf parsing,
	a second time in symtab parsing)

2006-03-17  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/gdi/freetype.c:
	gdi32: Look for ttf fonts in the Wine font dir.

2006-03-17  Dmitry Timoshkov <dmitry@baikal.ru>

	* dlls/gdi/tests/gdiobj.c:
	gdi: Add a test for bitmap font metrics to ensure that they match the Windows ones.

2006-03-18  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c:
	widl: Do not generate code that initializes a binding handle.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix proc offset calculation.
	A void return type is represented by a FC_END/FC_PAD sequence in the
	proc format string. Increment the proc offset by two when a function
	returns void.

	* tools/widl/parser.y:
	widl: 'unsigned char' and 'byte' are must be distinct types.

2006-03-18  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml.idl: Added more interfaces.

	* dlls/mshtml/tests/protocol.c:
	mshtml/tests: Code cleanup.

2006-03-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, programs/winedbg/tgt_active.c:
	dbghelp: Live target detection.
	- DBGHELP_NOLIVE env variable is tested earlier to avoid
	some strange effects in live target detection
	- in WineDbg, delete DBGHELP_NOLIVE before attaching to
	a process, because we know it must be a live target

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/edit.c, programs/progman/group.c,
	  programs/progman/main.c, programs/progman/program.c,
	  programs/winecfg/audio.c:
	Remove some unnecessary uses of windowsx.h

2006-03-18  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c:
	avifil32: Use HeapAlloc instead of GlobalAlloc. Eliminate windowsx.h.

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/winecfg/appdefaults.c:
	winecfg: Fix some gcc 4.1 warnings.

	* dlls/crypt32/tests/store.c:
	crypt32: Fix a warning.

2006-03-17  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/msvfw32/msvfw32_Ko.rc:
	msvfw32: Update Korean resources.

2006-03-17  Mike McCormack <mike@codeweavers.com>

	* programs/taskmgr/taskmgr.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/procpage.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/proclist.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/debug.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/endproc.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/taskmgr/affinity.c:
	taskmgr: Fix some gcc 4.1 warnings.

	* programs/regedit/treeview.c:
	regedit: Fix some gcc 4.1 warnings.

2006-03-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c,
	  dlls/crypt32/tests/store.c, include/wincrypt.h:
	crypt32: Implement CertGetSubjectCertificateFromStore.

2006-03-16  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add D3DBASISTYPE to wined3d_types.h.

2006-03-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/device.c, dlls/wined3d/device.c, dlls/wined3d/vertexshader.c:
	d3d8/wined3d: Vertex shader fixes.

2006-03-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/freetype.c:
	gdi: Support for loading fonts from the build directory.

	* programs/winecfg/libraries.c:
	winecfg: Support for loading the list of dlls from the build directory.

	* libs/wine/loader.c:
	libwine: Added magic handling of dll path when running in build dir.
	This should ensure that we do the right thing in the build dir even if
	WINEDLLPATH isn't set.

2006-03-16  Detlef Riekenberg <wine.dev@web.de>

	* include/winbase.h:
	winbase.h: Add missing LMEM_INVALID_HANDLE define.

2006-03-16  Alexandre Julliard <julliard@winehq.org>

	* include/wine/library.h, libs/wine/config.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Export wine_get_build_dir.

	* dlls/ntdll/server.c, libs/wine/config.c:
	libwine: Added support for executing wine binaries out of the build dir.

	* libs/wine/config.c:
	libwine: Added detection for Wine being run out of the build directory.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Remove the no longer needed symlinks to the static libraries.

	* dlls/Makedll.rules.in, dlls/Maketest.rules.in,
	  programs/Makeprog.rules.in, programs/avitools/Makefile.in:
	Remove some no longer needed library paths.

	* tools/winegcc/utils.c, tools/winegcc/winegcc.c:
	winegcc: Look for libraries in subdirs of the library path too.
	This means that -lfoo will match the library 'foo/libfoo.def' in
	addition to just 'libfoo.def'. This allows supporting the Wine source
	layout without adding a gazillion path entries.

2006-03-16  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/dispatcher.c:
	secur32: Update ntlm_auth version detection to detect new samba4 version numbers.
	Samba4 changed the versioning from 3.9.X to 4.0.0tpX-preY.

2006-03-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/store.c:
	crypt32: Tighten CertDuplicateCertificateContext test.
	Test that the return from CertDuplicateCertificateContext is the same
	as its parameter.

2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.10.

----------------------------------------------------------------
2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* programs/avitools/Makefile.in:
	avitools: Fixed library path for msvfw32.

	* dlls/user/tests/msg.c, dlls/user/tests/win.c:
	user/tests: Try harder to flush X events before running tests.

2006-03-06  András Kovács <andras@csevego.net>

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Hu.rc:
	wininet: Added Hungarian translation.

	* dlls/wineps/rsrc.rc, dlls/wineps/wps_Hu.rc:
	wineps: Added Hungarian translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Hu.rc:
	shlwapi: Added Hungarian translation.

	* dlls/shell32/shell32_Hu.rc:
	shell32: Added Hungarian translation.

	* dlls/shdocvw/Hu.rc, dlls/shdocvw/shdocvw.rc:
	shdocvw: Added Hungarian translation.

	* dlls/setupapi/Hu.rc, dlls/setupapi/setupapi.rc:
	setupapi: Added Hungarian translation.

	* dlls/serialui/Hu.rc, dlls/serialui/serialui_rc.rc:
	serialui: Added Hungarian translation.

	* dlls/oledlg/oledlg_Hu.rc, dlls/oledlg/rsrc.rc:
	oledlg: Added Hungarian translation.

	* dlls/msvidc32/msvidc32_Hu.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Added Hungarian translation.

	* dlls/msvfw32/msvfw32_Hu.rc, dlls/msvfw32/rsrc.rc:
	msvfw32: Added Hungarian translation.

	* dlls/msrle32/msrle_Hu.rc, dlls/msrle32/rsrc.rc:
	msrle32: Added Hungarian translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Hu.rc:
	msi: Added Hungarian translation.

	* dlls/mshtml/Hu.rc, dlls/mshtml/rsrc.rc:
	mshtml: Added Hungarian translation.

	* dlls/msacm/msacm.rc, dlls/msacm/msacm_Hu.rc:
	msacm: Added Hungarian translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Hu.rc:
	mpr: Added Hungarian translation.

	* dlls/iccvid/iccvid_Hu.rc, dlls/iccvid/rsrc.rc:
	iccvid: Added Hungarian translation.

	* dlls/hhctrl.ocx/Hu.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Added Hungarian translation.

	* dlls/comctl32/comctl_Hu.rc, dlls/comctl32/rsrc.rc:
	comctl32: Added Hungarian translation.

	* dlls/avifil32/avifile_Hu.rc, dlls/avifil32/rsrc.rc:
	avifil32: Added Hungarian translation.

2006-03-14  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/indexbuffer.c, dlls/d3d9/indexbuffer.c, dlls/wined3d/device.c,
	  dlls/wined3d/indexbuffer.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DINDEXBUFFER_DESC to wined3dtypes.h.

2006-03-15  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/tests/treeview.c:
	comctl32: Fix some gcc 4.1 warnings.

2006-03-14  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c:
	dsound: Add info to failed tests.
	Print format for failed SetFormat calls.

2006-03-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	advpack: Forward OpenINFEngineA and TranslateInfStringA to their
	unicode counterparts.

2006-03-04  Aric Cyr <aric.cyr@gmail.com>

	* dlls/dplayx/dplayx_global.c:
	dplayx: Fix semaphore deadlock.
	- Make sure to release the dplayx semaphore in for error cases as well.
	- Prevent race condition between creation of the semaphore and
	grabbing of the lock by creating the semaphore in the locked state
	instead of unlocked.

2006-03-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/opengl.c:
	x11drv: Fix one case of "glXChooseFBConfig returns NULL" problem.
	Using alpha bits > 8 makes this function fail, while it should not.

2006-03-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/x11drv/dib_convert.c:
	x11drv: Avoid unaligned 32 bit reads, and reads beyond the input pixel
	buffer in the convert_888_to_0888_* functions.

2006-03-15  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/msvfw32/.gitignore, dlls/msvfw32/Makefile.in,
	  dlls/msvfw32/drawdib.c, dlls/msvfw32/mciwnd.c,
	  dlls/msvfw32/msvfw32.spec, dlls/msvfw32/msvfw32_De.rc,
	  dlls/msvfw32/msvfw32_En.rc, dlls/msvfw32/msvfw32_Ko.rc,
	  dlls/msvfw32/msvfw32_No.rc, dlls/msvfw32/msvfw32_Tr.rc,
	  dlls/msvfw32/msvideo.spec, dlls/msvfw32/msvideo16.c,
	  dlls/msvfw32/msvideo_main.c, dlls/msvfw32/msvideo_private.h,
	  dlls/msvfw32/rsrc.rc, dlls/msvfw32/vfw16.h, dlls/msvideo/.gitignore,
	  dlls/msvideo/Makefile.in, dlls/msvideo/drawdib.c,
	  dlls/msvideo/mciwnd.c, dlls/msvideo/msvfw32.spec,
	  dlls/msvideo/msvfw32_De.rc, dlls/msvideo/msvfw32_En.rc,
	  dlls/msvideo/msvfw32_Ko.rc, dlls/msvideo/msvfw32_No.rc,
	  dlls/msvideo/msvfw32_Tr.rc, dlls/msvideo/msvideo.spec,
	  dlls/msvideo/msvideo16.c, dlls/msvideo/msvideo_main.c,
	  dlls/msvideo/msvideo_private.h, dlls/msvideo/rsrc.rc,
	  dlls/msvideo/vfw16.h:
	msvideo: Renamed the msvideo directory to msvfw32.

	* configure, configure.ac, dlls/Makefile.in, dlls/w32skrnl/.gitignore,
	  dlls/w32skrnl/Makefile.in, dlls/w32skrnl/w32skernel.c,
	  dlls/w32skrnl/w32skrnl.spec, dlls/w32skrnl/w32sys.c,
	  dlls/w32skrnl/w32sys.spec, dlls/w32skrnl/win32s16.c,
	  dlls/w32skrnl/win32s16.spec, dlls/win32s/.gitignore,
	  dlls/win32s/Makefile.in, dlls/win32s/w32skernel.c,
	  dlls/win32s/w32skrnl.spec, dlls/win32s/w32sys.c,
	  dlls/win32s/w32sys.spec, dlls/win32s/win32s16.c,
	  dlls/win32s/win32s16.spec:
	win32s: Renamed the win32s directory to w32skrnl.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winsock/.gitignore, dlls/winsock/Makefile.in,
	  dlls/winsock/async.c, dlls/winsock/protocol.c, dlls/winsock/socket.c,
	  dlls/winsock/socket16.c, dlls/winsock/tests/.gitignore,
	  dlls/winsock/tests/Makefile.in, dlls/winsock/tests/protocol.c,
	  dlls/winsock/tests/sock.c, dlls/winsock/version.rc,
	  dlls/winsock/winsock.spec, dlls/winsock/ws2_32.spec,
	  dlls/ws2_32/.gitignore, dlls/ws2_32/Makefile.in, dlls/ws2_32/async.c,
	  dlls/ws2_32/protocol.c, dlls/ws2_32/socket.c, dlls/ws2_32/socket16.c,
	  dlls/ws2_32/tests/.gitignore, dlls/ws2_32/tests/Makefile.in,
	  dlls/ws2_32/tests/protocol.c, dlls/ws2_32/tests/sock.c,
	  dlls/ws2_32/version.rc, dlls/ws2_32/winsock.spec,
	  dlls/ws2_32/ws2_32.spec, programs/winetest/Makefile.in:
	winsock: Renamed the winsock directory to ws2_32.

	* tools/Makefile.in:
	wineprefixcreate: Fixed datadir path. Added dependency on relpath.

2006-03-11  Pierre d'Herbemont <stegefin@free.fr>

	* tools/Makefile.in, tools/wineprefixcreate.in:
	wineprefixcreate: Make path searching relative.

2006-03-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shlexec.c:
	shell32: Add parameter formatting rule to the command line if there isn't any.

2006-03-14  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/.gitignore, dlls/wininet/tests/Makefile.in,
	  dlls/wininet/tests/http.c, dlls/wininet/tests/url.c:
	wininet: Move URL-related tests to a separate file.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Make InternetCrackUrlW set the components related to net_loc
	to NULL when net_loc isn't present in the input URL.

	* dlls/wininet/cookie.c, dlls/wininet/internet.c:
	wininet: Move cookie-related stubs to cookie.c

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Implement setting of send and receive timeouts.

	* dlls/kernel/thread.c, dlls/ntdll/ntdll.spec, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/thread.c:
	ntdll: Move the call to MODULE_DllThreadAttach from the kernel32
	thread creation function to the NTDLL one.

2006-03-14  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineesd/audio.c:
	wineesd: Use pipe sync for events.
	Ues pipe sync code from OSS/ALSA rather than windows events.

2006-03-13  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/x11drv/opengl.c:
	x11drv: Prevent out of bound access in DescribePixelFormat.

	* tools/wine.inf:
	wine.inf: Increase the DirectX version to that of the latest 9.0c .

2006-03-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ddraw/tests/d3d.c:
	ddraw: Don't crash in d3d test if OpenGL is missing.

2006-03-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Abstract contexts.
	- create a base cert context, and make functions unaware whether
	they're dealing with the base or derived type
	- simplify stores as a result

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlview.c:
	shell32: Fix some gcc 4.1 warnings caused by casts in macros.

2006-03-12  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Vertexdeclaration fix.
	In the old d3d8 code SetVertexShader stored the so called vertex
	declaration in the stateblock. In case of WineD3D this isn't done
	which breaks the drawPrimitive code. This patch stores the vertex
	declaration again in the stateblock which fixes Age Of Mythology.

2006-03-11  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/lsa.c, include/ntsecapi.h:
	advapi32: Add stub implementations for a bunch of documented Lsa APIs.

2006-03-10  Christoph Frick <rid@zefix.tv>

	* dlls/dinput/joystick_linuxinput.c:
	dinput/joystick_linuxinput: Add POV detection and reporting.
	Mapping of ABS_HAT[0-3][XY] to the four POV used by dinput.

2006-03-13  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/Makefile.in, dlls/ntdll/ntdll.spec, dlls/ntdll/threadpool.c,
	  include/winternl.h:
	ntdll: Very crude implementation of RtlQueueWorkItem.

	* dlls/kernel/thread.c:
	kernel: Implement QueueUserWorkItem.

2006-03-11  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix the conversion of NULL component values from InternetCreateUrlA.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Host name isn't present when two slashes aren't present in InternetCrackUrl.
	The test for "about:" in InternetCrackUrlW should be more general so
	that only URLs without double slashes should also be assumed not to
	have a host name.
	Add another test for this case and remove an unreliable
	InternetCreateUrl test.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: InternetCrackUrl should set nPort to the default port if not specified.

2006-03-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/vertexbuffer.c, dlls/d3d9/vertexbuffer.c,
	  dlls/wined3d/vertexbuffer.c, include/wine/wined3d_interface.h,
	  include/wine/wined3d_types.h:
	wined3d: Add WINED3DVERTEXBUFFER_DESC to wined3d_types.h.

2006-03-12  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Don't override variable that still has something we need.
	Use local temp variable instead.

	* dlls/wined3d/pixelshader.c:
	wined3d: Add D3DSIO_TEXM3x3PAD to opcode list. We already handle it where we should.

2006-03-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* tools/wine.inf:
	wine.inf: Add RegisteredOwner and Org also to WindowsNT branch.

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c:
	avifil32: Use HeapAlloc instead of LocalAlloc.

	* dlls/avifil32/editstream.c:
	avifil32: Use HeapAlloc instead of Global/LocalAlloc.

	* dlls/avifil32/extrachunk.c:
	avifil32: Use HeapAlloc instead of Local Alloc.

	* dlls/avifil32/acmstream.c:
	avifil32: Use HeapAlloc instead of GlobalAlloc/LocalAlloc.

	* dlls/avifil32/tmpfile.c:
	avifil32: Use HeapAlloc/Free instead of LocalAlloc/Free.

	* dlls/avifil32/factory.c:
	avifil32: Use HeapAlloc instead of LocalAlloc.  Make sure to free the memory.

2006-03-10  Alexandre Julliard <julliard@winehq.org>

	* programs/winefile/winefile.c:
	winefile: Refresh the drives and files upon WM_DEVICECHANGE.

2006-03-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c,
	  dlls/d3d8/volume.c, dlls/d3d8/volumetexture.c,
	  dlls/d3d9/cubetexture.c, dlls/d3d9/surface.c, dlls/d3d9/texture.c,
	  dlls/d3d9/volume.c, dlls/d3d9/volumetexture.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/indexbuffer.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/surface.c, dlls/wined3d/texture.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Consistently use WINED3DRESOURCETYPE.

2006-03-11  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/avifile.c, dlls/avifil32/wavfile.c:
	avifil32: Use CoTaskMemAlloc when allocating memory to return through
	an OLE interface.

	* dlls/avifil32/api.c, dlls/avifil32/avifile.c, dlls/avifil32/getframe.c,
	  dlls/avifil32/icmstream.c, dlls/avifil32/wavfile.c:
	avifil32: Fix some gcc 4.1 warnings cause by windowsx.h macros.

2006-03-10  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/colordlg.c:
	comdlg32: Remove the property when destroy the dialog box.

2006-03-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/proplist.c, dlls/crypt32/store.c:
	crypt32: Move context properties to a separate file.

2006-03-09  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineesd/audio.c:
	wineesd: Update ESD driver to closer match OSS and ALSA drivers.

2006-03-10  Petr Tesarik <hat@tesarici.cz>

	* programs/winedbg/be_i386.c:
	winedbg: Fix lcall instruction opcode.

2006-03-10  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Don't duplicate empty strings.

2006-03-10  Fatih Asici <fasici@linux-sevenler.org>

	* programs/wordpad/Tr.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Turkish resource file.

	* programs/winecfg/Tr.rc:
	winecfg: Update Turkish resource file.

2006-03-09  Fatih Aşıcı <fasici@linux-sevenler.org>

	* documentation/README.tr:
	documentation: Turkish translation of README file.

2006-03-10  Alexandre Julliard <julliard@winehq.org>

	* aclocal.m4, configure:
	aclocal.m4: Avoid invalid characters in the cache variable name in WINE_GET_SONAME.

2006-03-10  Mike McCormack <mike@codeweavers.com>

	* dlls/commdlg/colordlg.c:
	comdlg32: Use a property for the color dialog's information.

2006-03-09  Alexandre Julliard <julliard@winehq.org>

	* include/dbt.h:
	dbt.h: Added DBTF_ flags.

	* dlls/user/message.c:
	user: Support packing/unpacking the WM_DEVICECHANGE message.

2006-03-09  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/cookie.c, dlls/wininet/tests/internet.c:
	wininet: Fix InternetGetCookie with no matching cookies.
	Return FALSE and an error of ERROR_NO_MORE_ITEMS from
	InternetGetCookie when there are no cookies for the specified
	domain. This fixes a bug in sending a blank cookie to HTTP servers.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Fix an off-by-one error in InternetCreateUrlW.
	Fix an off-by-one error in the size of buffer used to store the port
	number in InternetCreateUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Further InternetCreateFileW fixes.
	- Add the slash after the port number.
	- Only add the port number if the host name is present.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: If necessary, add a slash between the hostname and path in
	InternetCreateUrlW.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: More InternetCreateUrlW fixes.
	- Don't add double slashes for opaque URLs.
	- The default port number for all other schemes is 0.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Parse the scheme the string in InternetCreateFileW.
	Parse the scheme the string in InternetCreateFileW and rewrite
	url_uses_default_port using schemes instead of strings.

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Get the string for the scheme if specified only by the
	INTERNET_SCHEME enumeration in InternetCreateUrlW.

	* dlls/wininet/internet.c:
	wininet: The host name is optional in InternetCreateUrlW.

	* dlls/wininet/internet.c:
	wininet: Use an array of schemes for mapping from a string to an INTERNET_SCHEME.
	Use an array of schemes so that it can be re-used for mapping from
	INTERNET_SCHEME back to a string and simplify the code in
	GetInternetSchemeW.

	* dlls/wininet/internet.c:
	wininet: Fix Trace in InternetCreateUrl.
	The url passed in to InternetCreateUrl is an out parameter, so don't
	dump it.

	* dlls/wininet/http.c:
	wininet: Fix redirects with relative URIs instead of absolute URIs.

2006-03-09  Christoph Frick <rid@zefix.tv>

	* dlls/dinput/joystick_linuxinput.c:
	dinput/linuxinput: Fix handling of DIPH_BYID.
	- handling of DIPH_BYID
	- use regular id and not shifted one also for axes
	- may only Acquire after SetDataFormat

2006-03-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Load system fonts from $(datadir)/wine/fonts if loading from
	%windir%\fonts has failed.

	* dlls/gdi/enhmfdrv/objects.c, dlls/gdi/mfdrv/objects.c,
	  dlls/wineps/pen.c, dlls/x11drv/pen.c:
	gdi: A better workaround for extended user style pens.

2006-03-08  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c:
	wined3d: Use OpenGL fragment programs when available.

	* dlls/wined3d/drawprim.c:
	wined3d: Remove an incorrect FIXME.

	* dlls/wined3d/vertexshader.c:
	wined3d: Enable color fixups for vertex shaders.

	* dlls/wined3d/vertexshader.c:
	wined3d: Minor vshader_program_add_param cleanup.
	- In vshader_program_add_param, pass a pointer to the shader object
	instead of individual parameters.
	- In vshader_program_add_param, rename input to is_input to make it
	clearer what the parameter does.
	- Fix a typo & cleanup a comment.

2006-03-08  Francois Gouget <fgouget@codeweavers.com>

	* dlls/oleaut32/olepicture.c:
	oleaut32: Reorder a few functions to avoid forward declaractions.

2006-03-09  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/d3d9/swapchain.c, dlls/wined3d/swapchain.c,
	  include/wine/wined3d_interface.h:
	wined3d: Use WINED3DPRESENT_PARAMETERS in IWineD3DSwapChain::GetPresentParameters.

2006-03-09  Mike McCormack <mike@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	user: The height of a ListBox item can be no more than MAXBYTE.

	* dlls/msi/action.c:
	msi: Remove some unnecessary indent.

	* dlls/msi/tests/package.c:
	msi: Make sure to run tests for MsiEvaluateCondition.

2006-03-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c:
	mshtml: Added beginning of getAttribute implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlbody.c, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLBodyElement implementation.

2006-03-07  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/opengl32/opengl32.spec,
	  dlls/opengl32/wgl.c, include/config.h.in:
	opengl32: Implement wglUseFontOutlines.

2006-03-07  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	crypt32: Implement CertGetValidUsages.

2006-03-08  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/volume.c, include/wine/wined3d_types.h:
	wined3d: Add D3DLOCK_* types to wined3d_types.h.

2006-03-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmltextarea.c:
	mshtml: Added get_name and get_value implementation of IHTMLTextAreaElement interface.

	* dlls/mshtml/htmlselect.c:
	mshtml: Added get_name and get_value implementation of IHTMLSelectElement interface.

	* dlls/mshtml/htmlinput.c:
	mshtml: Added get_type, get_value, get_name and get_checked
	implementation of IHTMLInputElement interface.

2006-03-07  Peter Åstrand <astrand@cendio.se>

	* dlls/comctl32/listview.c:
	comctl32: LISTVIEW_InsertItemT should accept iItem < 0, when using sorted lists.

2006-03-07  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/tests/profile.c:
	mscms: Add tests for EnumColorProfiles{A,W}.

	* dlls/mscms/profile.c, dlls/mscms/stub.c, include/icm.h:
	mscms: Implement EnumColorProfiles{A,W}.

2006-03-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* fonts/Makefile.in:
	fonts: Install fonts in $(datadir)/wine/fonts.

2006-03-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makeimplib.rules.in:
	dlls: Added a default install-lib rule for dlls that don't have one.

2006-03-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/desktop.c:
	x11drv: Don't send an invalid WM_NCCREATE to the desktop window.

	* server/trace.c:
	server: Fixed length check in dump_inline_unicode_string.

	* dlls/shell32/systray.c, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h,
	  programs/explorer/systray.c, programs/explorer/systray.h:
	explorer: Merged systray support with the desktop window main loop.
	Systray is now always available as part of the desktop and doesn't
	need to be started from shell32.

	* dlls/user/win.c, dlls/x11drv/winpos.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/window.c:
	user: Launch explorer to manage the desktop window.

	* programs/explorer/Makefile.in, programs/explorer/desktop.c,
	  programs/explorer/explorer.c, programs/explorer/explorer_private.h:
	explorer: Added desktop option.
	The /desktop option causes explorer to create and manage the desktop
	window.

2006-03-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/actctx.c:
	kernel: Improve the activation context stubs.

2006-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/drawprim.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/vertexshader.c:
	wined3d: Fix a few FIXME's.

	* dlls/wined3d/device.c:
	wined3d: Implement GetCreationParameters (from a patch by Al Tobey).

2006-03-06  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  include/wine/wined3d_types.h:
	wined3d: Define D3D usage flags in wined3d_types.h.

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_types.h:
	wined3d: Add device caps to wined3d_types.h.

2006-03-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmltextarea.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLTextAreaElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlselect.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLSelectElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c,
	  dlls/mshtml/htmlinput.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLInputElement implementation.

	* dlls/mshtml/htmlelem.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLElementCollection::tags implementation.

2006-03-06  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Simplify stores.
	Ref count cert context references, and eliminate the DupCert function
	from stores.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Better support for detached processes.
	Call setsid() in the new process to create a new Unix process group
	when CREATE_NEW_PROCESS_GROUP, CREATE_NEW_CONSOLE, or DETACHED_PROCESS
	are specified.

	* dlls/x11drv/window.c, dlls/x11drv/winpos.c:
	x11drv: Make sure to never manipulate the root window, even if we own
	the desktop window.

	* server/process.c, server/user.h, server/window.c, server/winstation.c:
	server: Support for closing the desktop window.
	If a thread is owning the desktop window, when all other users of the
	desktop have exited, signal the owner to close the desktop (with a 1
	second delay).

	* server/object.c, server/object.h:
	server: Added unlink_named_object function.
	Allows to remove the name of an object while keeping around the object
	itself.

	* server/class.c, server/user.h, server/window.c:
	server: Infrastructure for having a thread own the desktop window.

	* dlls/mlang/mlang.c:
	mlang: Decrement the module refcount when an object is destroyed.

2006-03-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/volume.c, dlls/d3d9/volume.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c, include/wine/wined3d_interface.h:
	wined3d: Fix the relation between volumes and their container.

	* dlls/d3d8/surface.c, dlls/d3d9/surface.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  include/wine/wined3d_interface.h:
	wined3d: Fix the relation between surfaces and their container.

	* dlls/wined3d/surface.c:
	wined3d: Don't call glCompressedTexImage2DARB without allocatedMemory.
	Don't call glCompressedTexImage2DARB if we haven't got allocatedMemory (yet).
	Fix a small typo.

2006-03-06  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	wininet: Rewrite InternetCreateUrlW.
	- Rewrite InternetCreateUrlW to respect the lengths passed in via the
	URL_COMPONENTS structure and fall back to a strlenW call when a
	length is zero.
	- Expand the number of protocols supported when determining whether
	the port number should be added.
	- Fix a test by passing in the correct length of scheme.

	* dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	wininet: Don't continue to connect to a secure server without SSL support since it won't work.
	Don't continue to connect to a secure server without SSL support since
	it won't work. Return an error back to the application instead.

	* dlls/wininet/tests/http.c:
	wininet: More tests for InternetCreateUrl.
	Fix an InternetCreateUrl test so that it correctly sets the scheme
	length and add tests which show the behaviour when the lengths are set
	to zero and when the https scheme is used.

2006-03-06  Victor Pelt <victor.pelt@gmail.com>

	* dlls/wininet/internet.c:
	wininet: Add stub for missing InternetSetOption.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* include/wine/library.h, libs/wine/Makefile.in, libs/wine/config.c,
	  libs/wine/wine.def, libs/wine/wine.map:
	libwine: Export a function to retrieve the data directory (based on a
	patch by Dmitry Timoshkov).

2006-03-06  Francois Gouget <fgouget@free.fr>

	* dlls/mshtml/main.c, dlls/urlmon/regsvr.c:
	Fix compatibility with native advpack dlls.
	Most native advpack dlls in circulation don't have RegInstallA. So
	mshtml and urlmon should do a GetProcAddress() on 'RegInstall'
	instead.

2006-03-06  Mike McCormack <mike@codeweavers.com>

	* tools/wrc/parser.l:
	wrc: Don't use identifiers starting yy*, they're reserved for flex.

	* dlls/avifil32/editstream.c:
	avifil32: Fix some more gcc 4.1 warnings caused by windowsx.h macros.

2006-03-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_LocationURL implementation.

2006-03-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c:
	mshtml: Added IHTMLElementCollection implementation.
	- Added IHTMLElementCollection implementation.
	- Added get_all implementation.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shlfileop.c:
	shell32: Grow the file list dynamically in SHFileOperation.
	This avoids searching the same directories twice, once to count the
	files and then once for real.

	* dlls/shell32/shlfileop.c:
	shell32: Store only the file attributes in the file list for SHFileOperation.
	We don't need the rest of the WIN32_FIND_DATA structure.

	* dlls/shell32/shlfileop.c:
	shell32: Fixed handling of null-terminated file list in SHFileOperation.

2006-03-03  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shlfileop.c:
	shell32: Skip dot directories in SHFileOperation.
	In ShFileOperation when generating a file list with * wildcards, for
	example for deletion, do not include the dot directories (. and ..) in
	the list, because that cause the operation to spiral out of control.

2006-03-06  Alexandre Julliard <julliard@winehq.org>

	* server/winstation.c:
	server: Avoid crash in set_thread_desktop if the thread doesn't have a queue.

	* dlls/user/win.c, include/wine/server_protocol.h, server/protocol.def,
	  server/trace.c, server/window.c:
	server: Return real parent and owner in the create_window request.
	Remove computing of parent and owner handles on the client side.

	* dlls/user/desktop.c:
	user: Allow creating windows of the desktop class.

	* dlls/user/message.c:
	user: Allow some Wine internal messages to act on the desktop window.

2006-03-05  Mike McCormack <mike@codeweavers.com>

	* dlls/mpr/mpr.spec, dlls/mpr/nps.c:
	mpr: Stub implementations of some mpr functions.

2006-03-05  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shellfolder.h, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_unixfs.c, dlls/shell32/shv_bg_cmenu.c:
	shell32: Unicode'ify ISFHelper interface.

2006-03-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/wined3d/directx.c:
	wined3d: Fix retrieval of driver adapter versions.

2006-03-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: Added type for array index.
	- added type for array index
	- correctly parsing array index type in stabs, Dwarf2 and MSC formats
	- fixed SyGetTypeInfo accordingly

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	msvcrt: Some more fixes to name demangling.

	* dlls/dbghelp/type.c:
	dbghelp: Implemented TI_GET_COUNT in SymGetTypeInfo for function.

2006-03-05  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/directx.c, include/wine/wined3d_types.h:
	wined3d: Add d3d7 and d3d8/9 cap flags to wined3d_types.h.

2006-03-05  Jason Green <jave27@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Add a few more WINED3DFMT formats to be recognized.

2006-03-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Beginning ShowContextMenu implementation.

	* dlls/mshtml/htmldoc3.c, dlls/mshtml/nsiface.idl:
	mshtml: Added get_documentElement implementation.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmlelem.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLElement implementation.

	* include/mshtmdid.h, include/mshtml.idl:
	mshtml: Added more interfaces to mshtml.idl.

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmlnode.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl:
	mshtml: Added IHTMLDOMNode implementation.

2006-03-05  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  include/wine/wined3d_gl.h:
	wined3d: Added OpenGL 2.0 function definitions.

2006-03-05  Robert Shearman <rob@codeweavers.com>

	* programs/wcmd/wcmdmain.c:
	wcmd: Improve command line processing.
	Make the command line processing more robust by continuing to process
	command line options if an unknown one is detected and remove the
	skipping of argv[0], which is no longer necessary. This fixes the
	parsing when argv[0] isn't set to the program name.

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/vartype.c:
	oleaut: Implement VarBstrFromDisp.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/varformat.c:
	oleaut: Fix VarFormat for VT_NULL variants.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c, dlls/ole32/rpc.c:
	ole: Implement IRpcChannelBuffer::GetDestCtx on the client side.

	* dlls/ole32/compobj_private.h, dlls/ole32/marshal.c:
	ole: Store the destination context and the destination context data in
	the proxy manager when unmarshaling.

	* include/olectl.h:
	include: Add more definitions and types to olectl.h.

	* dlls/oleaut32/tests/vartest.c:
	oleaut: Add some more VarFormat tests and fix the VarMod decimal test.

	* dlls/oleaut32/olepicture.c:
	oleaut: Split OLEPictureImpl_Load.
	Split OLEPictureImpl_Load into separate functions for the different file
	types.

2006-03-05  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Fix a typo (LVM_ -> TVM_).

2006-03-01  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_DEPTHBIAS.

2006-03-04  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Added two sided stencil support to WINED3DRS_STENCILFUNC.

	* dlls/wined3d/device.c:
	wined3d: Added two sided stencil support to WINED3DRS_STENCILFAIL,
	WINED3DRS_STENCILZFAIL and WINED3DRS_STENCILPASS.

	* dlls/wined3d/device.c:
	wined3d: Implemented fallback for separate stencil function in WINED3DRS_CCW_STENCILFUNC.

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Implemented fallback for separate stencil operation in WINED3DRS_CCW_STENCIL*.

2006-03-03  Detlef Riekenberg <wine.dev@web.de>

	* dlls/wined3d/device.c:
	wined3d: Fix cut&paste typo.

2006-03-03  Stefan Dösinger <stefandoesinger@gmx.at>

	* include/wine/wined3d_types.h:
	wined3d: Add D3D7 texture stage types.

	* include/wine/wined3d_types.h:
	wined3d: Add D3D7 render states.

2006-03-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/winebrowser/main.c:
	winebrowser: Use CP_UNIXCP when translating URL passed on command line
	to unicode.

2006-03-04  Byeong-Sik Jeon <wjsqudtlr@gmail.com>

	* dlls/user/sysparams.c:
	user32: Fix the default height for CJK fonts.

2006-03-04  Mike McCormack <mike@codeweavers.com>

	* dlls/avifil32/acmstream.c:
	avifil32: Eliminate some gcc 4.1 warnings caused by windowsx.h macros.

2006-03-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/serialize.c, dlls/crypt32/store.c:
	crypt32: Move serialization functions to serialize.c.

2006-03-03  Christian Gmeiner <christian.gmeiner@students.fh-vorarlberg.ac.at>

	* dlls/mlang/mlang.c:
	mlang: Implement DllCanUnloadNow.

2006-03-02  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/tests/bitmap.c, dlls/x11drv/dib.c, dlls/x11drv/palette.c,
	  dlls/x11drv/x11drv.h:
	gdi: Better support for 1bpp dib sections.

2006-03-03  Mike McCormack <mike@codeweavers.com>

	* programs/regedit/childwnd.c, programs/regedit/framewnd.c,
	  programs/regedit/listview.c:
	regedit: Fix some gcc 4.1 warnings caused by casts in macros.

	* programs/winecfg/audio.c:
	winecfg: Eliminate some gcc 4.1 warnings caused by casts in macros.

	* dlls/shell32/brsfolder.c:
	shell32: Fix some gcc 4.1 warnings caused by casts in macros.

	* dlls/msrle32/msrle32.c:
	msrle32: Fix some gcc 4.1 warnings caused by casts in windowsx.h macros.

	* dlls/hhctrl.ocx/help.c:
	hhctrl.ocx: Fix a gcc 4.1 warning caused by a cast in a macro.

	* dlls/comctl32/listview.c, dlls/comctl32/pager.c:
	comctl32: Fix some gcc 4.1 warnings caused by windowsx.h macros.

2006-03-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/store.c, include/wincrypt.h:
	crypt32: Implement CertDuplicateStore.

2006-03-02  Francois Gouget <fgouget@free.fr>

	* dlls/d3d8/d3d8_main.c, dlls/d3d9/d3d9_main.c:
	d3d: Fix Validate(Pixel|Vertex)Shader() prototypes.
	Fix Validate(Pixel|Vertex)Shader() prototypes so they match the spec file.
	Fix the stub message so it is more standard and use consistent
	parameter names.

	* dlls/kernel/heap.c:
	kernel: Protect sys/resource.h include.

2006-03-02  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.9.

----------------------------------------------------------------
2006-03-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/dxdiagn/container.c, dlls/ole32/ole2.c, dlls/ole32/oleobj.c,
	  dlls/riched20/editor.c, dlls/riched20/tests/editor.c,
	  dlls/shell32/tests/shlfolder.c, include/ddk/wdm.h, server/change.c:
	Fixed some compiler warnings on old gcc versions.

	* dlls/Makefile.in, dlls/make_dlls:
	dlls: Remove 16-bit files on make clean.

2006-03-02  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Opengl 2.x compile fix.

2006-03-01  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/user/menu.c:
	user: Fix uninitialized rectangle in menu arrow painting.

2006-03-01  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a default RelayExclude.

2006-03-01  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/winedbg.c, programs/winedbg/winedbg.man.in:
	winedbg: Bring usage() and .man up to date.

	* programs/winedbg/debugger.h, programs/winedbg/stack.c,
	  programs/winedbg/tgt_minidump.c, programs/winedbg/winedbg.c:
	winedbg: Add ability to reload a minidump.
	- now recognize winedbg foo.mdmp on command line
	- fleshed out tgt_minidump to reload information from minidump

	* programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  programs/winedbg/tgt_active.c, programs/winedbg/winedbg.c:
	winedbg: process_io
	- added ability to specify process_io at process creation/attachment
	time
	- created a process_io structure for gdbproxy

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: main_loop.
	- split dbg_main_loop in two parts (one for finishing the debuggee
	attachment, the second one really for handling the main loop)
	- removed now longer needed dbg_main_loop

2006-03-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/navigate.c:
	shdocvw: Don't call hlink_navigate if HLNF_OPENINNEWWINDOW is set.
	- Don't call hlink_navigate if HLNF_OPENINNEWWINDOW is set.
	- Remove unneeded call to GetBindInfo.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/navigate.c, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c, dlls/mshtml/nsservice.c:
	mshtml: Beginning support for links opened in a new frame.

	* dlls/mshtml/nsembed.c:
	mshtml: Use NSContainer as 'This' of its window.

2006-02-24  Gerold J. Wucherpfennig <gjwucherpfennig@gmx.net>

	* dlls/cabinet/cabinet.h, dlls/cabinet/fci.c:
	cabinet: Set proper error information on failures.

2006-03-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Fix handling of '\b' right flush character in menus.
	- do not add extra space; modify the tests to confirm this;
	- right flush to the menu tab stop, not to the menu border;
	- small fixes to the menu tab stop calculation.

2006-03-01  Brandon Woodmansee <wood@socal.rr.com>

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implement EM_AUTOURLDETECT & EM_GETAUTOURLDETECT.

2006-03-01  Jeremy White <jwhite@codeweavers.com>

	* dlls/crypt32/tests/oid.c:
	crypt32: More gcc 2.95 adjustments.

2006-03-02  Aric Cyr <aric.cyr@gmail.com>

	* dlls/wined3d/utils.c:
	wined3d: Reverse GL_BGR to GL_RGB for the D3D RGB formats.
	This fixes texture colours in many D3D games (verified with Age Of Mythology).

2006-03-01  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/marshal.c, dlls/ole32/stubmanager.c:
	ole: Change NORMALEXTREFS to 5, like it is in native.

	* dlls/ole32/marshal.c, dlls/ole32/tests/marshal.c:
	ole: Fix marshaling of proxies for interfaces that haven't already been unmarshaled.

	* dlls/oleaut32/connpt.c:
	oleaut: Use IsEqualIID in connpt.c instead of memcmp for comparing IIDs.

	* dlls/rpcrt4/ndr_stubless.c, include/Makefile.in, include/ndrtypes.h:
	rpcrt4: Change the stubless parameter attributes to using a bitfield
	(as defined by the PSDK) so the ServerAllocSize part is easier to
	calculate.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement marshaling and unmarshaling for enum types.

2006-03-01  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Use CertFindCertificateInStore to simplify adding certificates.

2006-03-01  Jon Parshall <jparshall@codeweavers.com>

	* dlls/shell32/shres.rc:
	shell32: New icons for Desktop and My Computer.

2006-03-01  Jason Edmeades <us@edmeades.me.uk>

	* dlls/user/menu.c:
	user32: Ensure VK_UP displays the popup menu for the selected item if
	the popup menu is not visible

2006-03-01  Marcus Meissner <marcus@jet.franken.de>

	* documentation/PACKAGING:
	PACKAGING: Mention more libraries / tools in the needed dependencies section.

2006-02-28  Gerald Pfeifer <gerald@pfeifer.com>

	* README:
	README: Fix spelling Red Hat.  Remove unneeded references to Debian
	and Red Hat.  Document the use of libxml2 as a weak prerequisite.

2006-03-01  Mike McCormack <mike@codeweavers.com>

	* configure, configure.ac, include/config.h.in, server/signal.c:
	server: Print a message if wineserver crashes and we don't dump cores.

2006-02-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/settings.c:
	x11drv: Convert 24-bit into 32-bit color before looking for an
	available screen resolution. We do this during enumeration, so there
	would be no 24-bit modes available.

2006-02-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Eliminate an unnecessary function pointer from stores.

2006-02-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/notepad/main.c:
	notepad: Wrap long lines by default like Windows does.

2006-02-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c:
	kernel32: Implemented ClearCommError on top of GET_COMM_STATUS ioctl.

	* dlls/ntdll/serial.c:
	ntdll: Implemented serial IOCTL for status: GET_COMM_STATUS.

2006-02-28  Alexandre Julliard <julliard@winehq.org>

	* tools/wrc/parser.y:
	wrc: Integer ids can be used for control labels instead of strings.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winnls/.gitignore, dlls/winnls/Makefile.in,
	  dlls/winnls/winnls.c, dlls/winnls/winnls.spec,
	  dlls/winnls/winnls32.spec, dlls/winnls32/.gitignore,
	  dlls/winnls32/Makefile.in, dlls/winnls32/winnls.c,
	  dlls/winnls32/winnls.spec, dlls/winnls32/winnls32.spec:
	winnls32: Renamed the winnls directory to winnls32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/winaspi/.gitignore, dlls/winaspi/Makefile.in,
	  dlls/winaspi/aspi.c, dlls/winaspi/aspi.h, dlls/winaspi/winaspi.spec,
	  dlls/winaspi/winaspi16.c, dlls/winaspi/winaspi32.c,
	  dlls/winaspi/winescsi.h, dlls/winaspi/wnaspi32.spec,
	  dlls/wnaspi32/.gitignore, dlls/wnaspi32/Makefile.in,
	  dlls/wnaspi32/aspi.c, dlls/wnaspi32/aspi.h,
	  dlls/wnaspi32/winaspi.spec, dlls/wnaspi32/winaspi16.c,
	  dlls/wnaspi32/winaspi32.c, dlls/wnaspi32/winescsi.h,
	  dlls/wnaspi32/wnaspi32.spec:
	wnaspi32: Renamed the winaspi directory to wnaspi32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/lz32/.gitignore, dlls/lz32/Makefile.in, dlls/lz32/lz32.spec,
	  dlls/lz32/lzexpand.spec, dlls/lz32/lzexpand16.c,
	  dlls/lz32/lzexpand_main.c, dlls/lz32/tests/.gitignore,
	  dlls/lz32/tests/Makefile.in, dlls/lz32/tests/lzexpand_main.c,
	  dlls/lzexpand/.gitignore, dlls/lzexpand/Makefile.in,
	  dlls/lzexpand/lz32.spec, dlls/lzexpand/lzexpand.spec,
	  dlls/lzexpand/lzexpand16.c, dlls/lzexpand/lzexpand_main.c,
	  dlls/lzexpand/tests/.gitignore, dlls/lzexpand/tests/Makefile.in,
	  dlls/lzexpand/tests/lzexpand_main.c, programs/winetest/Makefile.in:
	lz32: Renamed lzexpand directory to lz32.

	* dlls/ntdll/loader.c:
	ntdll: Don't reset the load count when reusing a builtin modref.

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* tools/wine.inf:
	wine.inf: Add printing section for local port monitor.

2006-02-27  Robert Reif <reif@earthlink.net>

	* dlls/dsound/duplex.c:
	dsound: Fix duplex create bug.

2006-02-21  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/dinput/mouse.c:
	dinput: Return an error if both DISCL_EXCLUSIVE and DISCL_BACKGROUND are set.

2006-02-26  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_CCW_STENCIL* render states.

2006-02-25  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_SCISSORTESTENABLE.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_SLOPESCALEDEPTHBIAS.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_ANTIALIASEDLINEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Added D3D9 render states.

	* dlls/wined3d/device.c:
	wined3d: Fixed some typos and prevented divide by 0.

2006-02-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/crypt32/oid.c, dlls/crypt32/store.c:
	crypt32: Don't access a blob after freeing it.

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Added a close_process method to process_io.
	- added a close_process method to process_io
	- made use of it to get rid of dbg_detach

	* programs/winedbg/tgt_active.c, programs/winedbg/winedbg.c:
	winedbg: Extend auto mode with minidump.
	- added -minidump and -minidump <file> options to command line
	Those options are to be used in remplacement of --auto to create a minidump
	In the form --minidump <file>, the minidump will be created in <file>,
	otherwise the filename will be automatically generated.

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Rewrite auto mode.
	- rewrote auto mode as a specific set of commands to be run in
	regular parser, instead of hard coding those commands
	- added a new function to store a set of commands to be executed
	in a file
	- added 'echo' command to the parser functions
	- got rid of dbg_action_mode
	- added support of '--' on command line

	* programs/winedbg/gdbproxy.c:
	winedbg: Fixed regression in gdb handling.

2006-02-27  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/advpack.c:
	advpack: Factor out loading the program files directory.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Add tests for the TranslateInfStringEx trio of functions and
	fix the errors.

	* dlls/advpack/tests/advpack.c:
	advpack: Factor out the API loading of advpack tests.

2006-02-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/oid.c:
	crypt32: Correct compile problem on gcc 2.95.

2006-02-28  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_Ko.rc:
	crypt32: Add Korean translation.

2006-02-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/locale.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Add a stub for _wsetlocale.

2006-02-27  Kovács András <andras@csevego.net>

	* programs/winecfg/Hu.rc, programs/winecfg/winecfg.rc:
	winecfg: New Hungarian language resource.

2006-02-27  Francois Gouget <fgouget@free.fr>

	* dlls/d3d8/device.c, dlls/d3d8/directx.c:
	d3d8: Remove spaces before '\n'.

2006-02-27  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/d3dcore_gl.h:
	d3d8: Header cleanup.
	Remove unneeded structures and functions from d3d8_private.h, clean
	some datatypes up and remove d3dcore_gl.h.

2006-02-27  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added nsIInterfaceRequestor implementation.

2006-02-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsservice.c:
	mshtml: Improve ConfirmEx hack.

2006-02-24  Francois Gouget <fgouget@free.fr>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, dlls/advpack/files.c,
	  dlls/advpack/install.c, dlls/advpack/reg.c, dlls/mshtml/main.c,
	  dlls/urlmon/regsvr.c, include/advpub.h, tools/winapi/win32.api:
	advpack: Prepare the unicodification of advpack.dll.
	All functions that manipulate strings should have an Ansi and a
	Unicode variant.
	Forward the unqualified dll entry points to the Ansi variant for
	backward compatibility.
	We're not allowed to use unqualified entry points in Wine, so change
	RegInstall() calls to RegInstallA().
	Update win32.api.

2006-02-24  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Auto mode.
	- rewrite auto mode startup
	- move part of auto handling to tgt_active.c

	* programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  programs/winedbg/winedbg.c:
	winedbg: Move gdb command line handling.
	- moves gdb command line handling to gdbproxy.c
	- using manifest constants to make code more readable

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Active and command line.
	- move process attachment and process creation (related to command
	line handling) from winedbg.c to tgt_active.c
	- tidy up argument parsing

	* programs/winedbg/be_alpha.c, programs/winedbg/be_cpu.h,
	  programs/winedbg/be_i386.c, programs/winedbg/be_ppc.c,
	  programs/winedbg/debugger.h:
	winedbg: Cleanup the process_io usage.
	- made be_process_io references 'const'
	- make use of it for dbg_read_memory and dbg_write_memory

	* programs/winedbg/debugger.h, programs/winedbg/tgt_active.c,
	  programs/winedbg/winedbg.c:
	winedbg: Active targets
	Move all code related to an 'active' target (ie a running process)
	from winedbg.c to tgt_active.c.

	* dlls/kernel/comm.c, dlls/kernel/tests/comm.c,
	  include/wine/server_protocol.h, server/protocol.def, server/serial.c,
	  server/trace.c:
	kernel32: ClearCommError.
	ClearCommError should only deal with *communication* errors (are being
	seen on the serial interface) rather than API errors (which can be
	reported to the caller by the API itself).  I then removed all the
	stuff related to storing the error status in the server object.

2006-02-24  Andrew de los Reyes <adlr@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_SCROLL and its tests.

2006-02-24  Hamza Lakhani <hlakhani@gmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c:
	riched20: EM_HIDESELECTION implementation.

2006-02-25  Peter Beutner <p.beutner@gmx.net>

	* dlls/ddraw/surface_dib.c:
	ddraw: Fix transparent Blits on 8bit surfaces.
	There are no red/green/blue bitmasks with color depth==8bpp. In that
	case always match against the whole byte.

2006-02-24  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c:
	wined3d: Don't use GetDevice in IWineD3DSurfaceImpl_GetContainer, as
	it adds a reference to the device that shouldn't be there.

2006-02-25  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/Makefile.in, dlls/d3d8/basetexture.c, dlls/d3d8/d3d8_main.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c,
	  dlls/d3d8/drawprim.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/pixelshader.c, dlls/d3d8/resource.c, dlls/d3d8/shader.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/swapchain.c, dlls/d3d8/texture.c,
	  dlls/d3d8/utils.c, dlls/d3d8/vertexbuffer.c,
	  dlls/d3d8/vertexshader.c, dlls/d3d8/vshaderdeclaration.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c:
	d3d8: Moved the remaining code over to WineD3D (based on patches by
	Oliver Stieber).

2006-02-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/winsock/socket.c:
	winsock: Fix two Windows to Unix mapping issues.
	Handle wildcard address family hint in getaddrinfo.
	Convert flags too in getnameinfo.

2006-02-25  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_De.rc:
	crypt32: Add German resource file.

2006-02-25  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: One more LastError code fixed.

2006-02-24  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Added test for Desktop::ParseDisplayName(SHGetFolderPath(CSIDL_PERSONAL))
	Test if the Desktop Folder's ParseDisplayName recognizes MyDocument's
	path.  Removed some HRESULT tests on IUnknown_Release calls, which
	returns ULONG.

2006-02-24  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Return error in NewChannelFromURL if retval is NULL.

	* dlls/mshtml/nsio.c:
	mshtml: Added nsIURI::Clone implementation.

	* dlls/mshtml/navigate.c, dlls/mshtml/persist.c:
	mshtml: Don't add null byte to post data.

	* dlls/mshtml/nsembed.c:
	mshtml: Init nsIOService as soon as possible.

2006-02-24  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/iphlpapi/ifenum.c:
	iphplapi: Define IF_NAMESIZE if missing.

2006-02-24  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_No.rc,
	  programs/notepad/No.rc, programs/winecfg/No.rc,
	  programs/wordpad/No.rc, programs/wordpad/rsrc.rc:
	Updated/new Norwegian Bokmål resources.

2006-02-24  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/ole32/storage32.c:
	ole32: Add descriptions for StgCreateDocfile and StgIsStorageFile functions.

2006-02-24  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Added a comment to make life easier.

2006-02-24  Francois Gouget <fgouget@free.fr>

	* dlls/user/tests/menu.c, dlls/winmm/wavemap/wavemap.c,
	  dlls/winmm/winealsa/midi.c, programs/winecfg/theme.c,
	  server/change.c:
	Assorted spelling fixes.

	* include/wincrypt.h, tools/winapi/win32.api:
	crypt32: Add CryptQueryObject() prototype.
	Update win32.api.

	* dlls/winsock/socket.c, include/ws2tcpip.h, tools/winapi/win32.api:
	winsock: Tweak getnameinfo() prototype.
	Tweak the getnameinfo() prototype to better match the Windows PSDK and
	the GetNameInfoW() prototype.
	Update win32.api.

	* include/sfc.h, tools/winapi/win32.api:
	sfc: Updates.
	Add a missing sfc.dll prototype.
	Add an sfc.dll section to win32.api for winapi_check.

	* dlls/msftedit/msftedit.spec:
	msftedit: Fix CreateTextServices() forward.

	* dlls/d3d8/device.c:
	d3d8: Remove spaces before '\n', spelling fix.

	* dlls/msvcrt/tests/file.c, dlls/ole32/tests/compobj.c,
	  dlls/riched20/tests/editor.c:
	Add trailing '\n's to ok() calls.

2006-02-24  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/defwnd.c:
	user32: Handle WM_ENDSESSION in DefWinProc().
	DefWinProc() should call PostQuitMessage() on WM_ENDSESSION if the
	shutdown is proceeding.

	* dlls/user/message.c:
	user32: 0 vs. INFINITE timeout.
	It is 0 that denotes an infinite timeout for the wine server now, not
	-1 (INFINITE).
	Document put_message_in_queue()'s check for INFINITE (done for
	backwards compatibility with Windows 9x).

	* dlls/user/user_main.c:
	user: Fix ExitWindows().
	- Use 0 to get an infinite timeout with SendMessageTimeoutW().
	- Use SendMessageTimeoutW() to send the WM_ENDSESSION messages too so
	we don't get stuck if a process is hung.
	- Only send WM_ENDSESSION to windows that received a
	WM_QUERYENDSESSION message. Also better mimick the Windows behavior.

2006-02-24  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c:
	usp10: Tidy default values.
	Set values for pwLogClust, uJustification and fClusterStart similar to
	what Windows uses.

2006-02-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/x11drv_main.c:
	x11drv: Make the synchronous option a debug channel instead of a
	registry entry to make it easier to use.

	* configure, configure.ac:
	configure: Added special check for broken linux/capi.h.

	* dlls/ntdll/virtual.c:
	ntdll: Use PROT_NONE instead of 0.

	* dlls/kernel/dosmem.c:
	kernel: Don't request execute permission for DOS memory.

2006-02-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/store.c:
	crypt32: Use public functions during serialization rather than relying
	on the internal format of a certificate.

	* dlls/crypt32/.gitignore, dlls/crypt32/Makefile.in,
	  dlls/crypt32/crypt32.rc, dlls/crypt32/crypt32_En.rc,
	  dlls/crypt32/crypt32_private.h, dlls/crypt32/cryptres.h,
	  dlls/crypt32/main.c, dlls/crypt32/oid.c, dlls/crypt32/tests/oid.c,
	  dlls/crypt32/version.rc, include/wincrypt.h:
	crypt32: implement CryptEnumOIDInfo and CryptFindOIDInfo.
	- implement CryptEnumOIDInfo and CryptFindOIDInfo
	- implement CertOIDToAlgId and CertAlgIdToOID using CryptFindOIDInfo

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Skip tests, when a remote print server has no RPC
	service running.

2006-02-23  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/ole32/tests/storage32.c:
	ole32/tests: Do not compare returned by DeleteFile value with TRUE.

2006-02-23  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	ole: Fallthrough from local activation in CoGetClassObject.
	If local-server or local-service activation doesn't work in
	CoGetClassObject then fallthrough instead of returning from the
	function.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/tests/olefont.c:
	oleaut: Fix standard font cloning.
	Create new empty connection points on clone of the standard Font
	(based on a patch by Alex Villacís Lasso).

2006-02-23  Francois Gouget <fgouget@codeweavers.com>

	* dlls/user/tests/msg.c:
	user: Give meaningful names to the structures used to transfer
	information to the test threads.

2006-02-23  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: When evaluating conditions, if the condition is empty or none is
	provided then treat it as being satisfied.

2006-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix for empty node lists.

2006-02-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Use "MS Sans Serif" as default sans serif font, not Arial.

2006-02-23  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	gdi32: Fallback to StretchDIBits if the driver doesn't support BitBlt.

2006-02-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/cfgmgr32/Makefile.in, dlls/cfgmgr32/cfgmgr32.spec:
	cfgmgr32: Forward some functions to setupapi.dll.

2006-02-23  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Add directories to recursive watches as they're opened.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	wincrypt: Add OIDs.

2006-02-22  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/dirid.c:
	setupapi: Downgrade an ERR to a WARN.

2006-02-22  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Call GetClipboardData callback on cut/copy.

	* dlls/riched20/richole.c:
	riched20: Enable retrieving data through the ole interface.

	* dlls/riched20/clipboard.c:
	riched20: Ensure copied text is terminated with a null.

	* dlls/riched20/editor.c:
	riched20: EM_GETOLEINTERFACE is not a stub.

	* dlls/riched20/editor.c, dlls/riched20/editor.h, dlls/riched20/richole.c:
	riched20: Store reference to editor in ole interface.

	* dlls/riched20/clipboard.c:
	riched20: Allocate proper amount of memory for formatetc array.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/main.c, dlls/crypt32/oid.c, dlls/crypt32/tests/main.c,
	  dlls/crypt32/tests/oid.c:
	crypt32: Move OIDToAlgID and AlgIDToOID to oid.c.

	* dlls/crypt32/store.c, dlls/crypt32/tests/store.c:
	crypt32: Implement CertFindCertificateInStore, with tests.

2006-02-22  Stefan Leichter <Stefan.Leichter@camLine.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/msftedit/.gitignore,
	  dlls/msftedit/Makefile.in, dlls/msftedit/msftedit.spec:
	Added msftedit.dll.

2006-02-22  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/Makefile.in, dlls/riched20/clipboard.c,
	  dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h:
	riched20: Add IDataObject implementation and use it for cut/copy.

	* tools/widl/typegen.c:
	widl: Fix 64bit warning.

	* dlls/x11drv/clipboard.c:
	x11drv: Fix 64bit warning.

2006-02-22  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/action.c:
	msi: Fix heap overflow in ITERATE_CreateShortcuts.

	* dlls/msi/source.c:
	msi: Init size before passing to RegEnumValue.

	* dlls/msi/files.c:
	msi: Always set a value for intype in ready_volume.
	Remove a memory leak.

	* dlls/msi/table.c:
	msi: Fix heap overflow in save_string_table.
	Fix heap overflow caused by not accounting for the dummy first item,
	which contains the codepage.

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole: Make the CoCreateInstance test succeed.
	Move the uninitialized apartment check after zeroing out the return
	value.

2006-02-21  Brian Chang <brianch@seas.ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: EM_SETOPTIONS/EM_GETOPTIONS base implementation.
	ECO_READONLY implemented and tested.

2006-02-22  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/encode.c, dlls/crypt32/tests/store.c:
	crypt32: Tidy up tests.
	Fix up encoded data to use BYTE arrays rather than strings, and remove
	extraneous NULL bytes from the end of some of them

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/oid.c:
	crypt32: Add stubs for CryptFindOIDInfo and I_CryptInstallAsn1Module.
	Move CryptVerifyMessageSignature stub to main.c.

2006-02-22  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/kernel32.spec, dlls/kernel/process.c:
	kernel32: Add a stub implementation for CmdBatNotification.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Initialize the dll path from the main exe name explicitly
	since ImagePathName is not always set at that point.

	* programs/explorer/systray.c:
	explorer: Moved systray configuration option to a more appropriate place
	and make it compatible with the way other options are stored.

2006-02-19  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shell32_main.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/systray.c, programs/explorer/Makefile.in,
	  programs/explorer/explorer.c, programs/explorer/systray.c,
	  programs/explorer/systray.h:
	shell32: Move systray handling to the explorer process.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/module.c, dlls/kernel/thread.c, include/module.h:
	kernel: Get rid of module.h.

	* dlls/ntdll/loader.c, dlls/ntdll/loadorder.c, dlls/ntdll/ntdll.spec,
	  dlls/ntdll/ntdll_misc.h:
	ntdll: Simplify loadorder code by using an enum instead of an array
	to represent load order values.
	Added a special value for default load order so that we can handle it
	differently later on.

	* dlls/kernel/process.c:
	kernel: Don't bother checking load order of the exe in the parent process.

2006-02-22  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi/freetype.c, include/config.h.in:
	gdi32: Update due to last minute api change in freetype 2.2.0.
	FT_Module_Get_Flags existed briefly in freetype 2.2.0.rc1 but has now
	been replaced by FT_Get_TrueType_Engine_Type.  There's no point in
	supporting an rc1 release, so this removes support for
	FT_Module_Get_Flags and adds support for FT_Get_TrueType_Engine_Type.

2006-02-22  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Make sure we don't get into an infinite loop freeing inodes.

2006-02-22  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptGetCMap functionality to translate wchars to glyphs.

2006-02-22  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Save esp before calling catch block and restore afterwards.
	It seems like the esp value (which is saved at [ebp-16]) is sometimes
	changed inside the catch handler so we end up with a bogus esp
	afterwards.  To avoid that save it before calling the catch block.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Fix handling of multiple nested exceptions.
	Save in each nested frame a pointer to the original exception record.
	Only one refence in thread_data isn't enough when we have multiple
	nested frames.

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Fix handling of nested exceptions.
	Move handling of nested exceptions completely in the
	catch_function_nested_handler().  If a new exception was thrown inside
	a catch block destroy the old exception object, if it is a rethrow
	re-propagate the previous object.

2006-02-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/shell32/pidl.c, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/shlexec.c, dlls/shell32/tests/shelllink.c,
	  dlls/shlwapi/path.c:
	shell32: Fixes for bugs found by valgrind on shell32 tests harness.
	- read strings from left to right (PathGetDriveNumberW)
	- don't access buffers before they are filled (SHGetPathFromIDListW)
	- fill buffers & variables on all paths (SHELL_FindExecutable)
	- handle error condition (unix_fs)
	- don't shoot in the blind for AW APIs (tests/shelllink.c)

2006-02-22  Marco Timpano <marcotimpano@hotmail.it>

	* dlls/winedos/ppdev.c:
	winedos: Fixed a couple of typos in ppdev.

2006-02-22  Francois Gouget <fgouget@free.fr>

	* dlls/mapi32/mapi32_main.c, dlls/mapi32/sendmail.c, include/mapi.h,
	  include/mapix.h:
	mapi: Add some missing MAPI prototypes.
	Add some missing MAPI prototypes to mapi.h (spotted by winapi_check)
	and include it where they are implemented.
	Make mapi.h and mapix.h compatible. gcc does not like macros and
	prototypes to be redefined so this involved protecting against
	multiple definitions.
	Fix the MAPISendMail() implementation prototype.

2006-02-21  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/editor.h, dlls/riched20/tests/editor.c:
	riched20: Implement FR_MATCHCASE for EM_FINDTEXT.
	Removed todo flag from affected FR_MATCHCASE tests.

2006-02-21  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/msi/msi.spec, dlls/msi/source.c:
	msi: Implement MsiSourceListAddSource.

	* dlls/advapi32/security.c:
	advapi32: Add partial implementation of LookupAccountNameW.

2006-02-21  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shell32/shell32.spec:
	shell32: Export PathResolve by name.

2006-02-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h,
	  dlls/ntdll/thread.c:
	kernel: Moved the get_startup_info call to ntdll.

2006-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Remove no longer needed fields in the init_process_done request.

2006-02-21  Aric Stewart <aric@codeweavers.com>

	* dlls/twain/ds_ctrl.c, dlls/twain/ds_image.c, dlls/twain/dsm_ctrl.c,
	  dlls/twain/twain_i.h:
	twain: Implment DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET.
	Implement the DG_IMAGE/DAT_IMAGEMEMXFER/MSG_GET code path. Along with
	a number of corrections and improvements to allow the actual aquiring
	of images to succeed.

2006-02-21  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/parseerror.c:
	msxml3: Improve parse error handling a bit.

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c:
	msxml3: Use url monikers to load xml.

2006-02-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/loader.c:
	kernel: Use LoadLibrary to load the main exe in all cases.

	* dlls/ntdll/loader.c:
	ntdll: Support loading a builtin under a different name.
	Find the proper modref in that case based on the dlopen handle.

	* dlls/ntdll/loader.c:
	ntdll: Moved LDR_DONT_RESOLVE_REFS handling into fixup_imports.
	This ensures that we never fixup imports twice on the same dll.

	* dlls/shell32/tests/shlexec.c:
	shell32: Use more reasonable timeouts in shlexec test.

	* server/process.c:
	server: Avoid hang on process startup.
	Fixed the startup_info signaled state to avoid blocking the parent
	process when the child crashes on startup.

	* dlls/ntdll/loader.c:
	ntdll: Support loading builtin dlls with an explicit path name also
	when loadorder is set to builtin only.

2006-02-20  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/ntdll/loader.c:
	ntdll: Remove spaces at end of name in import_dll.

2006-02-20  Jason Green <jave27@gmail.com>

	* programs/winefile/En.rc, programs/winefile/resource.h,
	  programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Add the ability to save window position to the registry.

2006-02-21  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Add stub for ScriptTextOut.

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptPlace funtionality.
	The key function is to calculate the total of the ABC widths of the
	characters converted to gylphs by ScriptShape.

2006-02-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/classinfo.c:
	shdocvw: Added correct implementation of IProvideClassInfo::GetGUID.

2006-02-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/d3dcore_gl.h, dlls/d3d8/directx.c,
	  dlls/d3d8/shader.c, dlls/wined3d/device.c, dlls/wined3d/directx.c:
	d3d8: Move the capability detection code over to WineD3D.
	Let the few existing parts which need the capabiliteis use the WineD3D
	capability structure (gl_info). This info structure contains next to
	'flags' inidicating certain features also all GL/GLX functions
	pointers. Because D3D8 moves over to the wined3d gl_info structure all
	the gl prototypes in d3dcore_gl.h were unneeded and removed.

2006-02-20  Lei Zhang <leiz@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Fix for EM_FINDTEXT input validation.
	Fixed the cpMin/cpMax validation code for EM_FINDTEXT.
	Removed todo flag from affected EM_FINDTEXT tests.

2006-02-20  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c, dlls/advpack/tests/files.c:
	advpack: Implement AddDelBackupEntry.

	* dlls/advpack/tests/files.c:
	advpack: Add tests for AddDelBackupEntry.

	* dlls/advpack/files.c:
	advpack: Make AddDelBackupEntry always return S_OK.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c,
	  dlls/advpack/install.c:
	advpack: Branch off the advpack install functions into install.c.

	* dlls/advpack/advpack.c:
	advpack: Implement the Open/CloseINFEngine and TranslateINFStringEx
	trio of functions.

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	advpack: Load the LDIDs of an install section in TranslateInfString.

2006-02-21  Dr J A Gow <J.A.Gow@furrybubble.co.uk>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  dlls/ole32/tests/storage32.c:
	ole32: Fix stream ref counting.
	Stream methods called after parent object has been closed correctly
	return STG_E_REVERTED.
	Stream refcounting fixed. Now can safely call IStorage destructor
	before IStream destructor and guarantee file will be closed.

	* dlls/ole32/storage32.c, dlls/ole32/tests/storage32.c:
	ole32: Fix up permissions when opening streams.
	Fix up permissions when opening streams in storage objects when
	storage object has been opened in transacted mode.

2006-02-21  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel32: Add a simple test for recursive notification.

	* dlls/kernel/tests/file.c:
	kernel32: Add a short test for GetOverlappedResult.

	* dlls/ntdll/directory.c, include/wine/server_protocol.h, server/change.c,
	  server/protocol.def, server/trace.c:
	server: Track created and removed directories in the tree of inodes for inotify.
	Add them to or remove them from existing recursive watches.

2006-02-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/signal_i386.c:
	ntdll: Avoid compile error caused by a single quote.

2006-02-20  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/winsock/socket.c,
	  dlls/winsock/ws2_32.spec, include/config.h.in, include/ws2tcpip.h:
	winsock: Implement getnameinfo.

2006-02-20  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	menu: Take the MF_DEFAULT flag in to account in MENU_CalcItemSize.

2006-02-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/signal_i386.c:
	ntdll: Add a define for SYS_sigaction to __NR_sigaction.
	Print an error if __NR_sigaction doesn't exist as this means the wrong
	syscall header is being used.

2006-02-20  Vitaly Lipatov <lav@etersoft.ru>

	* configure, configure.ac, dlls/winsock/socket.c, include/config.h.in:
	winsock: Add check for sin6_scope_id.

2006-02-20  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/Makefile.in, dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptShape functionality.

2006-02-18  Roger Hoang <rogerhoang@hotmail.com>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h,
	  dlls/riched20/tests/editor.c:
	riched20: Implemented EM_SETTEXTMODE options TM_RICHTEXT and TM_PLAINTEXT
	and their tests.

2006-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsio.c:
	mshtml: Set default original uri in NewChannelFromURI.

2006-02-20  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c, server/change.c:
	server: Distinguish between a directory and a file changing in
	ReadDirectoryChangesW.
	Add a test for it.

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/elf_module.c,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c:
	dbghelp: Virtual modules.
	Rewrote virtual modules handling so that it's an option to either PE
	or ELF modules rather than a specific type.

2006-02-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/dosmem.c:
	kernel: Don't require execute permission for DOS memory, this will be
	done in winedos if necessary.

2006-02-20  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/menu.c:
	user: Add conformance tests for menu item drawing.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	- check mark is drawn left of a bitmap;
	- if a MNS_CHECKORBMP-style menu has a checkmark, do no draw any bitmap;
	- space for the popup arrow is also reserved for non popup items;
	- implement the MNS_NOCHECK style.

	* dlls/user/menu.c:
	user:  Menu string width calculation fixes.
	- Use DrawText in stead of GetTextExtendPoint32, to properly measure
	strings with ampersands like "&File";
	- Fix mess with strings with an embedded tab;
	- In case of a menu bar, two extra pixels are added if the item has
	both a bitmap and string.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	Replace some #defined constants by values calculated from windows
	metrics.

	* dlls/user/menu.c:
	user: Menu drawing fixes.
	- Move sending WM_MEASUREITEM message for HBMMENU_CALLBACK bitmaps to
	MENU_GetBitmapItemSize();
	- Save the received bitmap size in the menu item structure as it will
	need to be sent in the WM_DRAWITEM message;
	-  Move sending WM_DRAWITEM message for HBMMENU_CALLBACK bitmaps to
	MENU_DrawBitmapItem();
	- This also means that HBMMENU_CALLBACK bitmaps are now supported in
	menu bars.

	* dlls/user/menu.c:
	user: Move drawing of pop menu arrows to a subroutine reduces nesting
	level of some large if statements in the drawing code. Some updates to
	the comments.

2006-02-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Add some tests for SetDefaultPrinterA/W.

	* dlls/winspool/info.c, dlls/winspool/winspool.drv.spec:
	winspool: Add documentation and a stub for SetDefaultPrinterA/W.

2006-02-20  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfolder.c:
	shell32: Avoid recursing SHELL32_GetItemAttributes() calls.

2006-02-20  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/Makefile.in, server/Makefile.in:
	configure: Use --rpath if supported when building binaries to point to
	the relative location of the wine libraries.

2006-02-20  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: Misc cleanups in undname.c.
	- remove unused argument from functions
	- print the pointer in the str_array_push TRACE to be able to distinguish
	the different arrays.
	- comment and white space cleanups

	* dlls/msvcrt/tests/cpp.c:
	msvcrt: Add some tests for __unDName().
	Add some tests for unDName() checking:
	- data type modifiers A,B,P,Q,R,S
	- literal strings
	- back references to names

	* dlls/msvcrt/undname.c:
	msvcrt: Use a separate stack for back references to names
	Use a separate array/stack for the back references to names as
	sym->stack is used to push temporary strings to it which breaks back
	referencing in some occasions (26 symbols in the mfc42 dll).  During
	this cleanup get_class() a little bit.

	* dlls/msvcrt/undname.c:
	msvcrt: Move code to parse a literal string out of get_class().
	unDName: Move the code to parse a literal string from get_class() to a
	separate function. Add some error handling to the new function.

	* dlls/msvcrt/undname.c:
	msvcrt: Wrap get_class() and get_class_string() for unDName.

	* dlls/msvcrt/tests/cpp.c:
	msvcrt: Fix 20 tests from demangle_test() on old Win versions.
	In test_demangle use a custom strcmp that treats multiple spaces as
	single space. __unDName() from older msvcrt (including W2K it seems)
	emit in some places 2 spaces instead of one. Fixes 20 failing tests on
	those old Windows versions.

2006-02-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/compobj.c:
	ole: Test the behaviour of CoCreateInstance with an uninitialized apartment.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Change the Apartment Model field to a boolean.
	Change the apartment model field to a boolean that just specifies
	whether the apartment is multi-threaded or not and fix up all the
	places where this is used.
	Fixes a bug where we would return an error if the previous apartment
	model passed into CoInitializeEx matches the new apartment model, but
	additional optimisation flags are specified.

2006-02-20  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

	* programs/wordpad/Ko.rc, programs/wordpad/rsrc.rc:
	wordpad: Add Korean translation.

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/path.c:
	dbghelp: Fix SymFindFileInPath to return files matching the requested
	criteria (it was mainly doing the opposite).

2006-02-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c:
	shdocvw: Change FIXMEs to TRACE in IDispatch's methods as they return
	E_NOTIMPL in Windows as well.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsio.c:
	mshtml: Create nsIChannel for protocols not handled by Gecko.

2006-02-20  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: Fix four todos for GetStandardColorSpaceProfile[AW].

	* dlls/mscms/tests/profile.c:
	mscms: Branching fixes for some test routines

2006-02-20  Mike McCormack <mike@codeweavers.com>

	* dlls/setupapi/misc.c, dlls/setupapi/setupapi.spec:
	setupapi: Add a stub implementation of CMP_WaitNoPendingInstallEvents.

2006-02-20  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/resources/user32_Bg.rc, dlls/user/resources/user32_Ca.rc,
	  dlls/user/resources/user32_Cs.rc, dlls/user/resources/user32_Da.rc,
	  dlls/user/resources/user32_De.rc, dlls/user/resources/user32_En.rc,
	  dlls/user/resources/user32_Eo.rc, dlls/user/resources/user32_Es.rc,
	  dlls/user/resources/user32_Fi.rc, dlls/user/resources/user32_Fr.rc,
	  dlls/user/resources/user32_Hu.rc, dlls/user/resources/user32_It.rc,
	  dlls/user/resources/user32_Ja.rc, dlls/user/resources/user32_Ko.rc,
	  dlls/user/resources/user32_Nl.rc, dlls/user/resources/user32_No.rc,
	  dlls/user/resources/user32_Pl.rc, dlls/user/resources/user32_Pt.rc,
	  dlls/user/resources/user32_Ru.rc, dlls/user/resources/user32_Si.rc,
	  dlls/user/resources/user32_Sk.rc, dlls/user/resources/user32_Sv.rc,
	  dlls/user/resources/user32_Tr.rc, dlls/user/resources/user32_Uk.rc,
	  dlls/user/resources/user32_Wa.rc, dlls/user/resources/user32_Zh.rc:
	user: Add the DS_NOIDLEMSG style to message boxes.

2006-02-20  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* programs/winhelp/winhelp.c:
	winhelp: Zero out WINHELP_WINDOW in WINHELP_CreateHelpWindow.

2006-02-20  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/basetexture.c, dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_main.c,
	  dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/resource.c,
	  dlls/d3d8/surface.c, dlls/d3d8/texture.c, dlls/d3d8/volume.c,
	  dlls/d3d8/volumetexture.c:
	d3d8: Move texturing code over to wined3d (based on Oliver Stieber's work).

2006-02-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c:
	winedbg: Fixed regression: stack info was no longer working.

2006-02-18  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Add ScriptItemize functionality.

2006-02-18  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/Makefile.in, programs/winebrowser/main.c:
	winebrowser: Handle file URLs.

2006-02-18  Juan Lang <juan_lang@yahoo.com>

	* dlls/wintrust/wintrust.spec, dlls/wintrust/wintrust_main.c,
	  include/wintrust.h:
	wintrust: Add some stubs.

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c, include/wincrypt.h:
	crypt32: Implement enhanced key usage.
	Implement CertGetEnhancedKeyUsage, CertSetEnhancedKeyUsage,
	CertAddEnhancedKeyUsageIdentifier, and
	CertRemoveEnhancedKeyUsageIdentifier.

2006-02-18  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Added usp10 tests.

2006-02-18  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Fix previous change to still build all the binaries on
	x86_64 in 32-bit mode.

2006-02-17  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/user/menu.c:
	user: Implement scrolling in popup menus.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/config.c, libs/wine/loader.c:
	libwine: Add the runtime library path to the front of the dll paths list.

	* dlls/dbghelp/elf_module.c:
	dbghelp: Use wine_dll_enum_load_path to search the dll load path.

2006-02-17  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	msvcrt: Correctly set EOF flag in fread().
	Setting the EOF flag only if _read() returns zero is not enough as we
	could also read something AND hit the end of file.
	_read() already sets another internal EOF flag, so just use this too.
	Removing todo_wine from the test case.

	* dlls/msvcrt/tests/file.c:
	msvcrt: Add test for fread/feof.
	When calling fread() with a large enough buffer to reach the end of
	the file a subsequent feof() should return true; (marked as todo_wine
	because it doesn't work atm).

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Remove bogus code.
	We can't just pop a exception record from the exception handler list
	which we haven't put there.

	* dlls/msvcrt/file.c:
	msvcrt: Fix use of uninitialized variable.

2006-02-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Add tests for EnumMonitors.

2006-02-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/cert.c, dlls/crypt32/store.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/cert.c, dlls/crypt32/tests/store.c:
	crypt32: Move certificate store functions to their own file.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, loader/Makefile.in:
	configure: Default to building wine-pthread on non-x86 platforms.

2006-02-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/dbghelp.h:
	dbghelp: Packing for minidump structures is 4 bytes.

2006-02-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/dbghelp/elf_module.c, dlls/msacm/wineacm.h,
	  dlls/wldap32/winldap_private.h:
	Fixed a couple of function prototypes.

	* libs/wine/Makefile.in, libs/wine/config.c:
	libwine: Set the default bindir and dlldir from argv0 if dladdr is not available.
	Added dependency on $(RELPATH).

	* libs/wine/Makefile.in, libs/wine/config.c:
	libwine: Compute relative paths for bin and dll directories at compile time.

	* Make.rules.in, tools/.gitignore, tools/Makefile.in, tools/relpath.c:
	tools: Added 'relpath' tool to compute relative Unix paths.

	* dlls/ntdll/server.c:
	ntdll: Remove no longer used oldcwd in start_server.

2006-02-17  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Use a single inotify watch, as it scales better with a large
	number of directories.

2006-02-17  Phil Krylov <phil@newstar.rinet.ru>

	* programs/wordpad/Ru.rc, programs/wordpad/rsrc.rc:
	wordpad: Russian translation.

2006-02-17  Hans Leidekker <hans@it.vu.nl>

	* programs/wordpad/Nl.rc, programs/wordpad/rsrc.rc:
	wordpad: Dutch localization.

2006-02-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/navigate.c:
	mshtml: Fix post data parsing.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/server.c, include/wine/library.h,
	  libs/wine/config.c, loader/glibc.c:
	libwine: Try the current load path in priority before the
	WINELOADER/WINESERVER environment variables in wine_exec_wine_binary.

	* libs/wine/config.c:
	libwine: Don't rely on argv[0] in wine_exec_wine_binary if we can get
	the directory from the library itself.
	Only try the hardcoded BINDIR if everything else failed.

	* libs/wine/config.c:
	libwine: Only use the library directory if it's an absolute path.

2006-02-16  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/Tr.rc, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.c:
	winecfg: Localize the app specific title.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: More encoding/decoding.
	Add support for encoding/decoding basic constraints and enhanced key
	usage, with tests.

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Simplify CertOpenSystemStore, fix CertDuplicateCertificateContext.
	- now that CertOpenStore is correct for system stores, simplify
	CertOpenSystemStore
	- correct CertDuplicateCertificateStore, with a test

2006-02-16  YunSong Hwang <hys545@dreamwiz.com>

	* programs/progman/Ko.rc, programs/progman/rsrc.rc:
	progman: Updated Korean translation.

2006-02-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/comment.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml3: Implement comment node.

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml3: Fix get_text on text nodes.

2006-02-16  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Implement EM_SCROLLCARET and EM_GETSCROLLPOS.

2006-02-16  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c:
	oleaut: Test some error conditions in ITypeInfo::GetIDsOfNames and ITypeInfo::Invoke.

2006-02-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Distinguish between registered and unregistered profile IDs.

2006-02-16  Robert Shearman <rob@codeweavers.com>

	* tools/winebuild/winebuild.man.in:
	winebuild: Correction for manpage.
	The behaviour for winebuild is to prefer main over WinMain, not the
	other way around.

2006-02-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Unaccess post data only if we've accessed it before.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/.gitignore, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/make_dlls, libs/wine/loader.c:
	libwine: New naming scheme for 16-bit builtin dlls.
	Stop using symlinks for 16-bit dlls to make sure they don't get loaded
	by mistake when looking for a 32-bit dll.

2006-02-16  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Remove/swap limits if min > max in MCM_SETRANGE.
	We should swap min & max only when both limits are being
	set. Otherwise limit that being set should invalidate other limit
	(remove it).

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Don't change month range in MCM_SETRANGE. Add tests for this.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/wininet/internet.c:
	wininet: Use CertNameToStr for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT
	and update comment.

	* dlls/crypt32/cert.c:
	crypt32: Fix system stores and a memory leak.
	- system stores open both HKLM and HKCU for "current user" locations
	- fix a memory leak in certificate properties

2006-02-16  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/wordpad/Fr.rc, programs/wordpad/rsrc.rc:
	wordpad: French localization.

2006-02-16  Alexandre Julliard <julliard@winehq.org>

	* .gitignore:
	Merge the contents of info/exclude into the top-level .gitignore.

	* server/debugger.c, server/process.c, server/process.h,
	  server/snapshot.c:
	server: Store the process exe module in the standard dll list.

	* dlls/d3d8/cubetexture.c:
	d3d8: Fixed compile with older GL versions.

2006-02-16  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Set the texture size for d3d8.

2006-02-16  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

2006-02-16  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Fr.rc:
	winecfg: French resource update.

2006-02-16  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/wordpad/De.rc, programs/wordpad/En.rc,
	  programs/wordpad/rsrc.rc:
	wordpad: Added German resource.

2006-02-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix parameter check for UrlUnescapeA.
	NULL pszUnescaped is okay if URL_UNESCAPE_INPLACE is set.
	Add a corresponding test for UrlUnescape{A,W}.

2006-02-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/str.c, include/wincrypt.h:
	crypt32: Partially implement CertGetNameString.

2006-02-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/winedbg.c:
	winedbg: A couple of fixes after running valgrind.

2006-02-16  Jeff Latimer <lats@yless4u.com.au>

	* dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c:
	usp10: Implement ScriptGetProperties.

2006-02-15  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.8.

----------------------------------------------------------------
2006-02-15  Emmanuel Maillard <mahanuu@opendarwin.org>

	* configure, configure.ac, libs/wine/Makefile.in, loader/main.c:
	loader: Reserve memory area on Darwin (based on Steve Zellers patch).

2006-02-15  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c, dlls/riched20/tests/editor.c:
	riched20: Extend EM_FINDTEXT conformance tests and fix 2 problems they expose.

2006-02-15  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.spec,
	  dlls/shdocvw/shdocvw_main.c:
	shdocvw: Implemented a couple of forwards to shlwapi.

2006-02-15  Jacek Caban <jacek@codeweavers.com>

	* programs/winecfg/libraries.c:
	winecfg: glut32.dll may be configured as native.

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IServiceProvider interface.

	* dlls/shdocvw/navigate.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Navigate2 rewrite.

	* dlls/shdocvw/navigate.c:
	shdocvw: Added beginning IHlinkFrame::Navigate implementation.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl, dlls/mshtml/persist.c:
	mshtml: Added hack to allow pass post data to IPersistMoniker::Load.

	* dlls/mshtml/htmldoc.c, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c:
	mshtml: Added ref counting to NSContainer.
	- Added ref counting to NSContainer.
	- Better destroying of NSContainer.

2006-02-15  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Rename a variable for clarity.

	* dlls/crypt32/str.c:
	crypt32: Output string type in trace.

2006-02-15  Mike McCormack <mike@codeweavers.com>

	* dlls/ole32/tests/storage32.c:
	ole32: Added a test showing OLE storage's IStorage/IStream refcounting
	behaviour.

	* include/winnt.h:
	include: Add WT_ defines for use with RegisterWaitForSingleObject.

2006-02-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

2006-02-14  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Support RTF text in WM_SETTEXT.

2006-02-14  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Added stub for ScriptGetCMap.

2006-02-14  Jeff Latimer <lats@yless4u.com.au>

	* configure, configure.ac, dlls/usp10/Makefile.in,
	  dlls/usp10/tests/.gitignore, dlls/usp10/tests/Makefile.in,
	  dlls/usp10/tests/usp10.c, dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Added some tests.

2006-02-14  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/secur32/schannel.c:
	secur32: Add InitializeSecurityContext stub for schannel.

2006-02-14  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d8/cubetexture.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c,
	  dlls/d3d8/resource.c, dlls/d3d8/surface.c, dlls/d3d8/texture.c:
	d3d8: Move d3d8 surface over to wined3d (based on the work of Oliver Stieber).

2006-02-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/monthcal.c, dlls/comctl32/tests/monthcal.c:
	comctl32: Fix invalid date/time check in MCM_SETRANGE: ignore time and fail on bad date.

2006-02-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	mscms: Move 4 test macros into a single one.

2006-02-14  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/winemp3/mpegl3.c:
	winemp3: Increase factor from 4 to 12 in MPEG3_StreamSize.
	- Increase size factor from 4 to 12 in MPEG_StreamSize, otherwise
	mpglib buffer queue grows.
	- Add TRACE of mpglib buffer queue for conversion.

2006-02-14  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/ctl3d/.gitignore, dlls/ctl3d/Makefile.in, dlls/ctl3d/ctl3d.c,
	  dlls/ctl3d/ctl3d.spec, dlls/ctl3d/ctl3d32.c, dlls/ctl3d/ctl3d32.spec,
	  dlls/ctl3d/ctl3dv2.spec, dlls/ctl3d32/.gitignore,
	  dlls/ctl3d32/Makefile.in, dlls/ctl3d32/ctl3d.c,
	  dlls/ctl3d32/ctl3d.spec, dlls/ctl3d32/ctl3d32.c,
	  dlls/ctl3d32/ctl3d32.spec, dlls/ctl3d32/ctl3dv2.spec:
	ctl3d32: Renamed ctl3d directory to ctl3d32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/olesvr/.gitignore, dlls/olesvr/Makefile.in,
	  dlls/olesvr/olesvr.spec, dlls/olesvr/olesvr32.spec,
	  dlls/olesvr/olesvr_main.c, dlls/olesvr32/.gitignore,
	  dlls/olesvr32/Makefile.in, dlls/olesvr32/olesvr.spec,
	  dlls/olesvr32/olesvr32.spec, dlls/olesvr32/olesvr_main.c:
	olesvr32: Renamed olesvr directory to olesvr32.

	* configure, configure.ac, dlls/.gitignore, dlls/Makefile.in,
	  dlls/olecli/.gitignore, dlls/olecli/Makefile.in,
	  dlls/olecli/olecli.spec, dlls/olecli/olecli16.c,
	  dlls/olecli/olecli32.spec, dlls/olecli/olecli_main.c,
	  dlls/olecli32/.gitignore, dlls/olecli32/Makefile.in,
	  dlls/olecli32/olecli.spec, dlls/olecli32/olecli16.c,
	  dlls/olecli32/olecli32.spec, dlls/olecli32/olecli_main.c:
	olecli32: Renamed olecli directory to olecli32.

2006-02-14  Detlef Riekenberg <wine.dev@web.de>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/sfc/.gitignore, dlls/sfc/Makefile.in, dlls/sfc/sfc.spec,
	  dlls/sfc/sfc_main.c:
	sfc: Add sfc.dll with a stub for SfcIsFileProtected.

	* include/Makefile.in, include/sfc.h:
	include: Add sfc.h.

2006-02-14  Krzysztof Foltman <wdev@foltman.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/wordpad/.gitignore, programs/wordpad/En.rc,
	  programs/wordpad/Makefile.in, programs/wordpad/resource.h,
	  programs/wordpad/rsrc.rc, programs/wordpad/wordpad.c:
	programs: Add an implementation of Wordpad.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/msc.c, dlls/dbghelp/pe_module.c, dlls/dbghelp/symbol.c:
	dbghelp: Always set the size to public symbols to 1 when we don't know the size
	so that they can only be search on their start address

	* programs/winedbg/debug.l:
	winedbg: Allow using MSVC mangled symbol names as identifiers.

2006-02-14  Mike Frysinger <vapier@gentoo.org>

	* Makefile.in, dlls/Makedll.rules.in, dlls/Makefile.in,
	  dlls/Makeimplib.rules.in, dlls/make_dlls, dlls/wineps/Makefile.in,
	  documentation/Makefile.in, fonts/Makefile.in, include/Makefile.in,
	  libs/Makelib.rules.in, loader/Makefile.in, programs/Makefile.in,
	  programs/Makeprog.rules.in, programs/avitools/Makefile.in,
	  programs/make_progs, programs/winedbg/Makefile.in,
	  programs/winemenubuilder/Makefile.in, server/Makefile.in,
	  tools/Makefile.in, tools/widl/Makefile.in, tools/winapi/Makefile.in,
	  tools/winebuild/Makefile.in, tools/winedump/Makefile.in,
	  tools/winegcc/Makefile.in, tools/wmc/Makefile.in,
	  tools/wrc/Makefile.in:
	Add support for 'make install DESTDIR'.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Makefile.in,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/Tr.rc,
	  programs/winecfg/driveui.c, programs/winecfg/main.c,
	  programs/winecfg/resource.h, programs/winecfg/theme.c,
	  programs/winecfg/winecfg.h:
	winecfg: Support for setting symlinks for 'Desktop' and 'My Stuff' shell folders.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/process.c, dlls/ntdll/signal_i386.c:
	A couple of new valgrind instrumentations for better support.

2006-02-14  Jeremy White <jwhite@codeweavers.com>

	* dlls/twain/dsm_ctrl.c:
	twain: Reconcile sane's long names to TWAIN's 32 byte limit.

	* dlls/twain/twain.h:
	twain: Make structures respect 2 byte packing requirements.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c, server/ptrace.c,
	  server/thread.h:
	server: When possible, use tgkill instead of tkill syscall on Linux.

2006-02-14  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Handle the INFINFO_REVERSE_DEFAULT_SEARCH search flag.

	* dlls/setupapi/query.c, dlls/setupapi/tests/query.c:
	setupapi: Handle the INFINFO_INF_NAME_IS_ABSOLUTE and
	INFINFO_DEFAULT_SEARCH search flags.

2006-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/winmm/driver.c:
	winmm: Protect drivers list by a critical section.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/wine/test.h:
	tests: Fixed test framework against environment modifications.

2006-02-14  Troy Rollo <wine@troy.rollo.name>

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix argument type of IsDlgButtonChecked.

	* dlls/user/scroll.c, include/winuser.h:
	user: Fix argument type for EnableScrollBar.

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix argument types for CheckRadioButton.

	* dlls/user/dialog.c, include/winuser.h:
	user: Fix return type and argument type for GetDlgItemText{A,W}.

2006-02-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c, dlls/msvideo/msvideo_private.h:
	msvfw32: Disable datarate, keyframe and quality controls to not
	confuse users by a not implemented functionality.
	Add support for About codec control.

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Initialize lpbiIn member of the COMPVARS structure.

2006-02-14  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add riched20 tests.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h, dlls/shell32/shellpath.c:
	shell32: Return a GUID pidl for CSIDL_PERSONAL in SHGetFolderLocation.
	The tests (shellpath.c/testPersonal) already show that it can be either
	PT_FOLDER or PT_GUID. It's PT_GUID on WinXP.

2006-02-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* loader/pthread.c:
	loader: Added missing attr destroy.

2006-02-14  Robert Shearman <rob@codeweavers.com>

	* documentation/.gitignore:
	Ignore documentation/html.

	* tools/c2man.pl:
	tools/c2man.pl: Generate correct html.

	* dlls/wininet/gopher.c, dlls/wininet/http.c:
	wininet: Documentation fixes.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Free connection point on destruction of the picture object.
	Handle failure of CreateConnectionPoint on construction.

	* dlls/oleaut32/typelib.c:
	oleaut32: Fix returning Typelib file name.
	We can't use GetModuleFileName on a resource-only module, so the best
	we can do is to copy the original name we used to find the type
	library.  Fix a couple of places where we were incorrectly using the
	file name, rather than the path.

	* dlls/oleaut32/olefont.c:
	oleaut32: Free the connection points on destruction of the font object.
	Free the connection points on destruction of the font object and cope
	with failure of CreateConnectionPoint on construction.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Don't try to release NULL COM objects in the typelib
	marshaler.

	* dlls/oleaut32/olepicture.c:
	oleaut32: Fix flag comparison in Picture Invoke.
	One or more invoke flags can be passed into IDispatch::Invoke, but we
	only care if INVOKEFLAG_PROPERTYGET is specified, and don't about any
	others.

2006-02-14  Alexandre Julliard <julliard@winehq.org>

	* server/queue.c:
	server: Try to update the input key state even when the message is
	dropped in queue_hardware_message. This should fix some problems with
	the Alt key getting "stuck" after Alt-Tab.

2006-02-14  Francois Gouget <fgouget@free.fr>

	* dlls/kernel/locale_rc.rc, dlls/oleaut32/hash.c, include/winnt.h,
	  tools/widl/hash.c, tools/wine.inf:
	include: Add missing LANG_xxx and SUBLANG_xxx constants.

2006-02-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/winecfg/De.rc:
	winecfg: Cleaned up various control positions on the German version of
	the audio tab.

	* dlls/shell32/regsvr.c:
	shell32: Register 'LocalizedString' values for shellfolder classes.

	* dlls/shell32/classes.c:
	shell32: Query for localized string in HCR_GetClassName.

	* dlls/advapi32/advapi32.spec, dlls/advapi32/registry.c, include/winreg.h:
	advapi32: Implemented RegLoadMUIString[AW].

2006-02-14  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/winsock/tests/sock.c:
	winsock/tests: select wakeup on closesocket.
	- Change select timeout from 2 seconds to 500 microseconds.
	- Add test to make sure select wakes up after a closesocket.
	- Add test to make sure listen fails without bind.

2006-02-14  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement getElementsByTagName.

2006-02-14  Hans Leidekker <hans@it.vu.nl>

	* dlls/msxml3/main.c, dlls/msxml3/msxml3.spec:
	msxml3: Implement DllUnregisterServer.

2006-02-13  Petr Tesarik <hat@tesarici.cz>

	* programs/winhelp/Cs.rc:
	winhelp: Czech language resources encoding fix.

	* programs/winemine/Cs.rc:
	winemine: Czech language resources encoding fix.

	* programs/winefile/Cs.rc:
	winefile: Czech language resources encoding fix.

	* programs/wineconsole/wineconsole_Cs.rc:
	wineconsole: Czech language resources encoding fix.

	* programs/winecfg/Cs.rc:
	winecfg: Czech language resources encoding fix.

	* programs/wcmd/Cs.rc:
	wcmd: Czech language resources encoding fix.

	* programs/view/Cs.rc:
	view: Czech language resources encoding fix.

	* programs/uninstaller/Cs.rc:
	uninstaller: Czech language resources encoding fix.

	* programs/start/Cs.rc:
	start.exe: Czech language resources encoding fix.

	* programs/regedit/Cs.rc:
	regedit: Czech language resources encoding fix.

	* programs/progman/Cs.rc:
	progman: Czech language resources encoding fix.

	* programs/notepad/Cs.rc:
	notepad: Czech language resources encoding fix.

	* programs/cmdlgtst/Cs.rc:
	cmdlgtst: Czech language resources encoding fix.

	* programs/clock/Cs.rc:
	clock: Czech language resources encoding fix.

	* dlls/winmm/winmm_Cs.rc:
	winmm: Czech language resources encoding fix.

	* dlls/wininet/wininet_Cs.rc:
	wininet: Czech language resources encoding fix.

	* dlls/user/resources/user32_Cs.rc:
	user32: Czech language resources encoding fix.

	* dlls/wineps/wps_Cs.rc:
	wineps: Czech language resources encoding fix.

	* dlls/shell32/shell32_Cs.rc:
	shell32: Czech language resources encoding fix.

	* dlls/setupapi/Cs.rc:
	setupapi: Czech language resources encoding fix.

	* dlls/serialui/Cs.rc:
	serialui: Czech language resources encoding fix.

	* dlls/oledlg/oledlg_Cs.rc:
	oledlg: Czech language resources encoding fix.

	* dlls/mpr/mpr_Cs.rc:
	mpr: Czech language resources encoding fix.

	* dlls/msrle32/msrle_Cs.rc:
	msrle32: Czech language resources encoding fix.

	* dlls/msacm/msacm_Cs.rc:
	msacm: Czech language resources encoding fix.

	* dlls/hhctrl.ocx/Cs.rc:
	hhctrl.ocx: Czech language resources encoding fix.

	* dlls/commdlg/cdlg_Cs.rc:
	commdlg: Czech language resources encoding fix.

	* dlls/comctl32/comctl_Cs.rc:
	comctl32: Czech language resources encoding fix.

	* dlls/avifil32/avifile_Cs.rc:
	avifil32: Czech language resources encoding fix.

2006-02-13  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/hlink.c,
	  dlls/mshtml/mshtml_private.h, dlls/mshtml/navigate.c,
	  dlls/mshtml/nsio.c:
	mshtml: Handle IHlinkFrame service.

2006-02-13  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c, dlls/wined3d/surface.c,
	  dlls/wined3d/wined3d_private.h:
	wined3d: Update the glOrtho between 2 rhw draws if the viewport was changed.

2006-02-13  Cyril Margorin <comargo@gmail.com>

	* dlls/x11drv/dib.c:
	x11drv: Fix X11DRV_DIB_SetImageBits and X11DRV_DIB_GetImageBits to
	check for passed image, and do not use shared memory extension for
	temporary created image.

	* dlls/x11drv/dib.c:
	x11drv: Fix X11DRV_GetDIBits to pass shared memory image to
	X11DRV_DIB_GetImageBits.

2006-02-13  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/exit.c:
	msvcrt: Fix a typo.

2006-02-13  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/psapi/psapi.spec:
	psapi: Fix output parameter of function GetModuleBaseName in spec
	file.

2006-02-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Don't keep a reference to the container, as it creates a
	circular reference.

2006-02-13  Francois Gouget <fgouget@free.fr>

	* dlls/wined3d/device.c:
	wined3d: Protect float.h inclusion.

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Add trailing '\n's to ok() calls.

	* include/d3dtypes.h:
	d3dtypes: Fix windows.h inclusion.

2006-02-13  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/file.c:
	kernel: Report a tape device as FILE_TYPE_CHAR.

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add a stub for CryptQueryObject.

	* dlls/netapi32/access.c:
	netapi32: Improve stub for NetUserModalsGet.
	Tell the caller this host is not part of a domain.

2006-02-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Fix typos in the control state handling.
	Fix typos in the control state handling, add state checks for IDOK
	and IDCANCEL control notification handlers.

2006-02-11  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/Makefile.in, libs/wine/config.c, libs/wine/loader.c:
	libwine: Use dladdr if supported to get the run-time path of libwine.so
	and define the default dll and bin directories relative to it.

	* configure, configure.ac, include/config.h.in:
	configure: Added check for dladdr in libdl.

	* aclocal.m4, configure, configure.ac:
	configure: Added a WINE_CHECK_LIB_FUNCS macro to check for functions
	when linking with specific libraries.

2006-02-11  Stefan Dösinger <stefandoesinger@gmx.at>

	* dlls/ddraw/d3d_private.h, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c:
	ddraw: Small function corrections.
	The pPlaneEquation parameter of IDirect3DDevice7::SetClipPlane is not const
	IDirect3DDevice2::NextViewport takes an IDirect3DDevice2 interface, not an
	IDirect3DDevice3, the same for IDirect3DDevice::NextViewport.

	* dlls/ddraw/vertexbuffer.c:
	ddraw: ProcessVertices correction.
	Use the texture index to get the texcoord size from the fvf, not the
	vertex index.

2006-02-11  Phil Krylov <phil@newstar.rinet.ru>

	* configure, configure.ac, dlls/ntdll/tape.c:
	ntdll: Fix tape.c compilation on Darwin.

2006-02-11  Andrey Turkin <pancha@mail.nnov.ru>

	* dlls/shell32/shlview.c:
	shell32: IShellView list's control id should be 1, not 2000.

	* dlls/commdlg/filedlgbrowser.c:
	commdlg: IShellBrowser sets IShellView window's control id to 5002.

2006-02-11  Troy Rollo <wine@troy.rollo.name>

	* dlls/ntdll/cdrom.c, include/Makefile.in, include/ddk/ntddcdvd.h:
	ntdll: Implement DVD_ReadStructure.

2006-02-11  Thomas Kho <tkho@ucla.edu>

	* dlls/riched20/editor.c:
	riched20: Fixed bounds error when finding text forward.

	* configure, configure.ac, dlls/riched20/Makefile.in,
	  dlls/riched20/tests/.gitignore, dlls/riched20/tests/Makefile.in,
	  dlls/riched20/tests/editor.c:
	riched20: Added tests for EM_FINDTEXT and EM_FINDTEXTEX messages.

2006-02-11  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlfolder.c, dlls/shell32/tests/shlfolder.c:
	shell32: SHELL32_GetItemAttributes()
	- correct documentation which incorrectly claimed not to set any
	attribute bits
	- retrieve file attributes using SHGetPathFromIDListW() when they are
	not already present in the internal PIDL structures
	- add test case to show the previously wrong folder attributes when
	using absolute PIDLs
	- fix some memory leaks in the tests

2006-02-11  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/wined3d/directx.c:
	wined3d: Make the returned driver version similar to windows.

	* dlls/wined3d/utils.c:
	wined3d: Extend debug_d3drenderstate with missing states.

2006-02-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvcrt/time.c:
	msvcrt: localtime should accept any positive time value.

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	Handle ICM_CONFIGURE request in ICCVID and MSVIDC32 codecs.

	* dlls/msvideo/msvideo_main.c, dlls/msvideo/msvideo_private.h:
	msvfw32: Call codec's Configure dialog if the codec supports it.
	Disable data rate and key frame fields if requested.

2006-02-11  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian translation.

2006-02-11  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/wined3d/device.c:
	wined3d: Prevent crash in setup_light.

2006-02-11  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* include/Makefile.in, include/dpnathlp.h:
	include: Add dpnathlp.h header.

2006-02-10  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/msvcrt/file.c:
	msvcrt: In _mktemp sixth generated charater always starts with 'a'.

2006-02-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/nodemap.c, dlls/msxml3/tests/domdoc.c:
	msxml: Add ISupportErrorInfo for named node maps.

2006-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/persist.c, dlls/mshtml/tests/htmldoc.c,
	  include/mshtmhst.idl:
	mshtml: Added more defines to mshtmlhst.idl.

2006-02-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c:
	ntdll: Added emulation of ATL thunks for platforms with NX support.

2006-02-10  Aric Stewart <aric@codeweavers.com>

	* dlls/ntdll/tests/change.c:
	ntdll: gcc 2.95 compile fixes.

2006-02-10  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/drive.c:
	kernel: Fix a GetDiskFreeSpaceExA test for cd/dvd drives.

2006-02-10  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/stateblock.c:
	wined3d: Release the vertex declaration during stateblock cleanup.

	* dlls/wined3d/surface.c, dlls/wined3d/volume.c:
	wined3d: Release the container during surface / volume cleanup.

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c,
	  dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Use an invisible window for tests.

2006-02-10  Robert Shearman <rob@codeweavers.com>

	* dlls/secur32/secur32.c:
	secur32: Improve tracing.
	Improve the tracing for functions that can be called by the app, but
	bypass the relay code.

	* tools/widl/write_msft.c:
	widl: Fix a typo when removing TYPEFLAG_FDUAL.

	* dlls/oleaut32/olefont.c, dlls/oleaut32/olepicture.c,
	  dlls/shdocvw/events.c:
	Return the correct error code from IConnectionPointContainer::FindConnectionPoint.

	* dlls/oleaut32/olepicture.c:
	oleaut: Partially implement Invoke on the standard picture implementation.

	* dlls/oleaut32/typelib.c:
	oleaut: Fix importing the IDispatch interface for TKIND_DISPATCH type infos.
	Fix importing the IDispatch interface for TKIND_DISPATCH type infos
	when the offset isn't specified. It should be fetched from the
	dispatch offset stored in the header, rather than using a hack that
	doesn't work.

	* dlls/oleaut32/tests/olefont.c:
	oleaut: Add tests for IFontEventsDisp.

	* dlls/oleaut32/olefont.c:
	oleaut: Implement IFontEventsDisp connection point for the standard
	font implementation.

	* include/olectl.h:
	include: Define DISPID_FONT_CHANGED.

2006-02-10  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Move break statement to the correct spot.

2006-02-10  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/tests/htmldoc.c:
	mshtml: Added test of IHlinkFrame service.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added nsIUploadStream implementation.

2006-02-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* programs/regsvr32/Makefile.in, programs/regsvr32/regsvr32.c:
	regsvr32: Call OleInitialize before registering a DLL.

2006-02-09  Alexandre Julliard <julliard@winehq.org>

	* programs/Makefile.in, programs/make_progs:
	programs: Don't install winetest.

2006-02-09  Jeremy White <jwhite@codeweavers.com>

	* dlls/kernel/change.c, dlls/kernel/tests/change.c:
	kernel: Fixed build with gcc 2.95.

2006-02-09  Mike McCormack <mike@codeweavers.com>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Fix the compile for missing EV_SYN define.

2006-02-09  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/gdi/pen.c:
	gdi: Show hatch brush FIXME only once.

2006-02-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c, dlls/mshtml/nsio.c,
	  dlls/mshtml/persist.c:
	mshtml: Get rid of HTMLDocument_OnLoad and move its job to AsyncOpen.

	* dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIChannel.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIURI interface.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Better ns*String handling.

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl, dlls/mshtml/nsio.c:
	mshtml: Added wrapper of nsIOService.

2006-02-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Better handling of errors when loading a builtin dll from an
	existing file.

2006-02-09  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c:
	setupapi: Error out if ReturnBuffer is NULL but ReturnBufferSize is not 0.

	* dlls/setupapi/query.c:
	setupapi: Convert InfSpec to unicode if SearchControl is not
	INFINFO_INF_SPEC_IS_HINF.

2006-02-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Make TLB_ReadTypeLib not rely on the signature of executables or dlls.
	Try loading the dll first and then fall back to the regular file case.
	Only call SearchPath for the regular file case since LoadLibraryEx
	will do this for us and it previously excluded builtin dlls and
	executables from having their type libraries opened.

	* dlls/oleaut32/typelib.c:
	oleaut: Move the call to SearchPath inside of TLB_ReadTypeLib.

	* dlls/oleaut32/typelib.c:
	oleaut: Revert incorrect patch changing the order of parameters passed
	into DispCallFunc. A test with native indeed shows that the parameter
	index increases from the leftmost parameter to the rightmost.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/widltypes.h,
	  tools/widl/write_msft.c:
	widl: Write out more TYPEFLAGs and add more type library-specific
	attributes to the parser.

	* tools/widl/write_msft.c:
	widl: Write out TYPEFLAG_FDUAL, TYPEFLAG_FDISPATCHABLE and
	TYPEFLAG_FOLEAUTOMATION typelib flags.

2006-02-09  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Fix up decoding.
	- don't use the no copy flag when decoding, the lifetime of the buffer
	to decode isn't guaranteed
	- remove some extraneous ternary comparisons
	- fix a comment

	* dlls/crypt32/encode.c:
	crypt32: Fix a fixme, and remove an old comment.

2006-02-09  Aric Stewart <aric@codeweavers.com>

	* dlls/advapi32/registry.c:
	advapi32: Fix for RegNotifyChangeKeyValue.
	Flip fAsync and fWatchSubTree into their proper places.

2006-02-09  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/tape.c:
	ntdll: Take into account that FreeBSD and others have MTSETBSIZ
	instead of MTSETBLK.

2006-02-09  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Swiss French keyboard layout to better match the X11 one.

2006-02-09  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/duplex.c:
	dsound: Fix duplex test.

2006-02-09  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	dinput: Dynamic handling of buttons of a device.

	* dlls/wined3d/utils.c:
	wined3d: Support for WINED3DFMT_A8B8G8R8.

	* dlls/wined3d/device.c:
	wined3d: Better warn/fixme for query handling.

2006-02-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/mapi32/sendmail.c:
	mapi32: Prevent freeing non-allocated memory.

2006-02-08  Francois Gouget <fgouget@free.fr>

	* include/winuser.h:
	winuser.h: Add missing *LayeredWindow*() prototypes.

2006-02-08  Alexandre Julliard <julliard@winehq.org>

	* include/wine/server_protocol.h, server/process.c, server/protocol.def,
	  server/trace.c:
	server: Remove the no longer needed exe_file parameter in the
	init_process_done request.

	* dlls/kernel/process.c, dlls/ntdll/loader.c, include/winternl.h:
	ntdll: Get rid of the main_file argument in LdrInitializeThunk.

	* dlls/kernel/process.c:
	kernel: Use a standard LoadLibrary call to load the main exe.

	* dlls/ntdll/loader.c:
	ntdll: Check for existing modref for the main exe before creating it
	in LdrInitializeThunk.

	* server/process.c:
	server: Allow the main exe to be registered as a normal dll before
	init_process_done is called.

	* server/change.c:
	server: Fixed handling of inotify record length.

2006-02-08  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: __unDNameEx is not a stub.

2006-02-08  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/navigate.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	shdocvw: Added IHlinkFrame stub implementation.

	* dlls/shdocvw/shdocvw_main.c:
	shdocvw: Includes clean up.

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/misc.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/webbrowser.c:
	shdocvw: Remove IQuickActivate interface implementation that is not
	implemented in Windows as well.

	* include/urlmon.idl:
	urlmon.idl: Added BINDINFOF declaration.

2006-02-08  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps/pen.c, dlls/x11drv/pen.c:
	Pens created without PS_GEOMETRIC style but with width > 1 unit are
	scalable.

	* dlls/gdi/path.c:
	gdi: Remove StrokePath workaround for a DC transformation change bug.

2006-02-08  Huw Davies <huw@codeweavers.com>

	* dlls/wineps/escape.c:
	wineps: Don't display the MFCOMMENT escape.

2006-02-07  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/tape.c:
	ntdll: Fix typo in HAVE_STRUCT_MTGET_MT_GSTAT ifdef.

	* dlls/shell32/shellole.c:
	shell32: Update DllGetClassObject documentation.

	* include/textserv.h:
	textserv.h: Add missing CreateTextServices() prototype.

	* dlls/ntdll/virtual.c:
	ntdll: Protect sys/stat.h inclusion.

	* tools/winapi/win32.api:
	winapi: Update win32.api to match the current sources.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Add a default handler for https to the registry.

	* dlls/kernel/locale.c:
	kernel32: Implement EnumUILanguages.

	* dlls/x11drv/dib_convert.c:
	x11drv: Copy the whole image at once if appropriate.

2006-02-07  Fatih Aşıcı <fasici@linux-sevenler.org>

	* dlls/x11drv/keyboard.c:
	x11drv: Fix Turkish keyboard layouts.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	ntdll: Support loading a builtin dll by specifying an explicit path to
	the .so file.

2006-02-07  Mike McCormack <mike@codeweavers.com>

	* programs/notepad/En.rc, programs/notepad/License_En.c,
	  programs/notepad/Makefile.in, programs/notepad/dialog.c,
	  programs/notepad/license.c, programs/notepad/license.h,
	  programs/notepad/notepad_res.h:
	notepad: Move license text to resources.

2006-02-07  Sergei Butakov <butsergej@yandex.ru>

	* dlls/ntdll/time.c:
	ntdll: Added Urals time.

2006-02-07  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Added CopyRects method (based on a patch by Oliver Stieber).

	* dlls/d3d8/device.c:
	d3d8: fbconfig fix.
	Right now the ActiveRender code in D3D8 requests a GLX_DEPTH_SIZE of
	32 in case the direct3d color format also has a depth of 32. As
	verified on various linux drivers (Ati fglrx, Ati (dri) and Nvidia)
	the color depth needs to be 24. This patch sets the depth to 24 and it
	fixes bugs in 3dmark2001 and other programs.

2006-02-07  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel32: More test cases for ReadDirectoryChangesW.

	* dlls/kernel/change.c, dlls/ntdll/directory.c,
	  include/wine/server_protocol.h, server/change.c, server/protocol.def,
	  server/trace.c:
	kernel32: ReadDirectoryChangesW fixes.
	ReadDirectoryChangesW remembers whether it's recording changes or not.
	Don't initialize overlapped->InternalHigh.
	The hEvent is cleared when ReadDirectoryChanges is called.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/ole32/rpc.c,
	  dlls/winecrt0/stub.c, dlls/winmm/driver.c, dlls/winmm/lolvldrv.c:
	Include wine/port.h in files that use exceptions.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Fix circular reference count in Typelib marshaler.
	The current method of handling typelib-marshaled interfaces that derive
	from IDispatch is to query for an IDispatch pointer from the proxy, but
	this causes a circular reference count.
	Fix the reference counting by loading using the IRpcProxyBuffer of
	IDispatch without an outer unknown, so that the lifetime is controlled
	by the typelib-marshaled interface's proxy. The IDispatch proxy now
	shares the same channel as the typelib-marshaled interface, so fix up
	the stub side to handle this.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Handle VT_INT in serialize_param and deserialize_param.

	* dlls/oleaut32/tmarshal.c:
	oleaut32: Release interfaces when told to.
	Make the VT_DISPATCH and VT_UNKNOWN cases of serialize_param match the
	TKIND_INTERFACE case below by releasing their respective interfaces as
	necessary.

	* dlls/ole32/compobj.c:
	ole32: Print an error message if the apartment isn't initialised in
	CoCreateInstance.

	* tools/widl/write_msft.c:
	widl: Fix some warnings caused by making attributes const.

	* dlls/msi/sql.y:
	msi: Fix bison warnings by providing precedence rules for expressions
	and by removing a redundant expression case.

	* dlls/rpcrt4/cproxy.c:
	rpcrt4: Don't call IUnknown_AddRef if there is no outer unknown in
	StdProxy_Construct as it will just crash anyway.

2006-02-07  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/query.c, dlls/setupapi/stubs.c,
	  dlls/setupapi/tests/query.c:
	setupapi: Add an initial implementation of SetupGetInfInformation.

	* dlls/setupapi/Makefile.in, dlls/setupapi/query.c, dlls/setupapi/stubs.c:
	setupapi: Implement SetupQueryInfFileInformation.

2006-02-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/dirid.c, dlls/setupapi/parser.c, dlls/setupapi/queue.c,
	  dlls/setupapi/setupapi_private.h:
	setupapi: Store the full name to the INF file in the inf_file structure
	(based on a patch by James Hawkins).

	* tools/widl/parser.y:
	widl: Remove '\n' from yyerror calls.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/widltypes.h:
	widl: Make 'attrs' field of type_t const.

	* tools/widl/parser.y, tools/widl/widltypes.h, tools/widl/write_msft.c:
	widl: Remove unused 'rname' field of type_t.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Merge marshall_arguments and unmarshall_arguments into one
	function to remove the large amount of duplicated code.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/proxy.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Yet more const attributes.

	* tools/widl/header.c, tools/widl/widltypes.h:
	widl: More const attributes.

2006-02-07  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: Fix proc format string for explicit binding handles.

2006-02-07  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Write out the correct FC type if the structure has pointers.

	* tools/widl/typegen.c:
	widl: Split pointer writing into a separate function.

	* tools/widl/parser.y:
	widl: Fix pointer detection for structures with embedded arrays.
	Pointers have priority over every other type, so move the detection to
	the top of get_struct_type.
	Fall through from the embedded array detection to the embedded
	structure handling code so that conformance, variance and pointer
	presence is inherited from the array's base type.

	* tools/widl/typegen.c:
	widl: Increment the type format string when writing the pointer
	layouts.
	Write out pointer layouts for structures.

	* tools/widl/widltypes.h:
	widl: Make all pointer fields of expr_t structure constant.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	Clearly indicate that ICCVID and MSVIDC32 do not support compression.

	* dlls/msvideo/msvideo_main.c:
	msvideo: Add a codec to the compressors list only if it supports
	specified input format.
	Return a compressor handle in COMPVARS structure.

2006-02-07  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/msvcrt/undname.c:
	msvcrt: Handle data types B,R,S in C++ symbol demangling.

2006-02-07  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for IDirect3DVertexDeclaration9_GetDeclaration.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Reorganise the vertexdeclaration tests.
	- Split the test for getting and setting vertexdeclaration into one
	for creating the declaration and one for the actual getting and
	setting.
	- Add traces for when creating the device or vertexdeclaration fails.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Always return the number of elements in the vertex
	declaration in IWineD3DVertexDeclarationImpl_GetDeclaration9.

	* dlls/wined3d/device.c:
	wined3d: Don't set the container to the device for standalone surfaces.

	* dlls/d3d9/volume.c, dlls/wined3d/volume.c:
	wined3d/d3d9: Cleanup GetContainer for volumes.

	* dlls/d3d9/surface.c, dlls/wined3d/surface.c:
	wined3d/d3d9: Cleanup GetContainer for surfaces.

2006-02-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/quartz/regsvr.c:
	quartz: Register some of the interfaces.

2006-02-06  Robert Millan <rmh@aybabtu.com>

	* configure, configure.ac, dlls/ntdll/file.c, include/config.h.in,
	  libs/port/fstatvfs.c, libs/port/statvfs.c, tools/winapi/winapi_check:
	configure: For sys/mount.h, sys/statfs.h and sys/vfs.h, always include
	them if present.

2006-02-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/Makefile.in, dlls/win32s/.gitignore, dlls/win32s/Makefile.in:
	w32skrnl: No need for an import library.

	* dlls/Makefile.in, dlls/rsabase/.gitignore, dlls/rsabase/Makefile.in:
	rsabase: No need for an import library.

2006-02-06  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Use struct mtget.mt_blkno on those systems providing that (and
	avoid using struct mtpos which may not be present on such systems).

2006-02-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wininet/tests/internet.c:
	wininet: Fix InternetQueryOption test to pass under Windows.

2006-02-06  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/winsock/tests/sock.c:
	winsock/tests: select() conformance test improvements.
	Add OK tests around more function calls.
	Add two more todo_wine tests that fail.

2006-02-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/monthcal.c:
	comctl32: Add month calendar tests.

2006-02-06  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/progress.c, dlls/crypt32/tests/str.c,
	  dlls/oleaut32/variant.h, dlls/user/tests/menu.c:
	Assorted spelling fixes.

	* dlls/secur32/tests/main.c, dlls/winspool/tests/info.c:
	Add trailing '\n's to ok() and trace() calls.

	* dlls/security/security.spec:
	security: Fix the UnsealMessage() forward.

2006-02-06  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c, dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Texture fixes.
	Set video memory capabilities, add some checks to SetTexture and
	update some comments.

2006-02-06  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c, dlls/oleaut32/typelib.c:
	oleaut32: Fixes and tests for CreateDispTypeInfo.
	CreateDispTypeInfo returns the typeinfo of a coclass which implements
	the described interface.

2006-02-06  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/wininet/tests/.gitignore, dlls/wininet/tests/Makefile.in,
	  dlls/wininet/tests/internet.c:
	wininet: Add tests for InternetQueryOption.

2006-02-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mapi32/Makefile.in, dlls/mapi32/mapi32.spec,
	  dlls/mapi32/mapi32_main.c, dlls/mapi32/sendmail.c, include/mapi.h,
	  include/mapicode.h:
	mapi32: Implementation for MAPISendMail.
	Implement MAPISendMail, stub MAPILogoff and make the stubs for
	MAPIInitialize, MAPILogon{,Ex} and MAPILogoff return success.

2006-02-06  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c, programs/wcmd/wcmd.h, programs/wcmd/wcmdmain.c:
	wcmd: CALL should search the current PATH.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/advpack/tests/files.c, dlls/cabinet/tests/extract.c,
	  dlls/comctl32/tests/comboex.c, dlls/gdi/region.c,
	  dlls/mshtml/nsembed.c, dlls/msvcrt/tests/cpp.c,
	  dlls/msvcrt/tests/dir.c, dlls/msvcrt/tests/string.c,
	  dlls/msvcrtd/debug.c, dlls/ntdll/loader.c, dlls/ntdll/tests/time.c,
	  dlls/odbc32/proxyodbc.c, dlls/quartz/tests/memallocator.c,
	  dlls/shdocvw/tests/shortcut.c, dlls/shlwapi/ordinal.c,
	  dlls/shlwapi/stopwatch.c, dlls/user/tests/menu.c,
	  dlls/user/tests/text.c, dlls/wininet/tests/http.c,
	  include/msvcrt/crtdbg.h, loader/kthread.c, loader/preloader.c,
	  programs/notepad/main.c:
	Fixes for missing prototypes warnings.

	* include/winbase.h, libs/unicode/cptable.c, tools/wmc/mcy.y:
	A few fixes for pointer qualifiers (const, volatile) warnings.

2006-02-06  Fatih Aşıcı <fasici@linux-sevenler.org>

	* programs/winhelp/Tr.rc, programs/winhelp/rsrc.rc:
	winhelp: Turkish translation.

	* programs/winemine/Tr.rc, programs/winemine/rsrc.rc:
	winemine: Turkish translation.

	* programs/winefile/Tr.rc, programs/winefile/rsrc.rc:
	winefile: Turkish translation.

	* programs/wineconsole/wineconsole_Tr.rc,
	  programs/wineconsole/wineconsole_res.rc:
	wineconsole: Turkish translation.

	* programs/winecfg/Tr.rc, programs/winecfg/winecfg.rc:
	winecfg: Turkish translation.

	* programs/wcmd/Tr.rc, programs/wcmd/wcmdrc.rc:
	wcmd: Turkish translation.

	* programs/view/Tr.rc, programs/view/viewrc.rc:
	view: Turkish translation.

	* programs/uninstaller/Tr.rc, programs/uninstaller/rsrc.rc:
	uninstaller: Turkish translation.

	* programs/taskmgr/Tr.rc, programs/taskmgr/taskmgr.rc:
	taskmgr: Turkish translation.

	* programs/start/Tr.rc, programs/start/rsrc.rc:
	start: Turkish translation.

	* programs/regedit/Tr.rc, programs/regedit/rsrc.rc:
	regedit: Turkish translation.

	* programs/progman/Tr.rc, programs/progman/rsrc.rc:
	progman: Turkish translation.

	* programs/notepad/Tr.rc, programs/notepad/rsrc.rc:
	notepad: Turkish translation.

	* programs/cmdlgtst/Tr.rc, programs/cmdlgtst/cmdlgr.rc:
	cmdlgtst: Turkish translation.

	* programs/clock/Tr.rc, programs/clock/rsrc.rc:
	clock: Turkish translation.

	* dlls/wldap32/wldap32.rc, dlls/wldap32/wldap32_Tr.rc:
	wldap32: Turkish translation.

	* dlls/winspool/Tr.rc, dlls/winspool/winspool.rc:
	winspool: Turkish translation.

	* dlls/winmm/winmm_Tr.rc, dlls/winmm/winmm_res.rc:
	winmm: Turkish translation.

	* dlls/wininet/rsrc.rc, dlls/wininet/wininet_Tr.rc:
	wininet: Turkish translation.

	* dlls/wineps/rsrc.rc, dlls/wineps/wps_Tr.rc:
	wineps: Turkish translation.

	* dlls/user/resources/user32.rc, dlls/user/resources/user32_Tr.rc:
	user: Turkish translation.

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Tr.rc:
	shlwapi: Turkish translation.

	* dlls/shell32/shell32_Tr.rc, dlls/shell32/shres.rc:
	shell32: Turkish translation.

	* dlls/shdocvw/Tr.rc, dlls/shdocvw/shdocvw.rc:
	shdocvw: Turkish translation.

	* dlls/setupapi/Tr.rc, dlls/setupapi/setupapi.rc:
	setupapi: Turkish translation.

	* dlls/serialui/Tr.rc, dlls/serialui/serialui_rc.rc:
	serialui: Turkish translation.

	* dlls/oledlg/oledlg_Tr.rc, dlls/oledlg/rsrc.rc:
	oledlg: Turkish translation.

	* dlls/oleaut32/oleaut32.rc, dlls/oleaut32/oleaut32_Tr.rc:
	oleaut32: Turkish translation.

	* dlls/msvideo/msvfw32_Tr.rc, dlls/msvideo/rsrc.rc:
	msvideo: Turkish translation.

	* dlls/msvidc32/msvidc32_Tr.rc, dlls/msvidc32/rsrc.rc:
	msvidc32: Turkish translation.

	* dlls/msrle32/msrle_Tr.rc, dlls/msrle32/rsrc.rc:
	msrle32: Turkish translation.

	* dlls/msi/msi.rc, dlls/msi/msi_Tr.rc:
	msi: Turkish translation.

	* dlls/mshtml/Tr.rc, dlls/mshtml/rsrc.rc:
	mshtml: Turkish translation.

	* dlls/msacm/msacm.rc, dlls/msacm/msacm_Tr.rc:
	msacm: Turkish translation.

	* dlls/mpr/mpr.rc, dlls/mpr/mpr_Tr.rc:
	mpr: Turkish translation.

	* dlls/iccvid/iccvid_Tr.rc, dlls/iccvid/rsrc.rc:
	iccvid: Turkish translation.

	* dlls/hhctrl.ocx/Tr.rc, dlls/hhctrl.ocx/hhctrl.rc:
	hhctrl.ocx: Turkish translation.

	* dlls/commdlg/cdlg_Tr.rc, dlls/commdlg/rsrc.rc:
	commdlg: Turkish translation.

	* dlls/comctl32/comctl_Tr.rc, dlls/comctl32/rsrc.rc:
	comctl32: Turkish translation.

	* dlls/avifil32/avifile_Tr.rc, dlls/avifil32/rsrc.rc:
	avifil32: Turkish translation.

2006-02-06  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/tests/change.c:
	ntdll: Add some more tests for NtNotifyChangeDirectoryFile.

	* dlls/kernel/change.c, dlls/ntdll/directory.c,
	  include/wine/server_protocol.h, server/change.c, server/protocol.def,
	  server/request.h, server/trace.c:
	server: Fill in NtNotifyChangeDirectoryFile's buffer with change data.

2006-02-06  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/kernel/tests/.gitignore, dlls/kernel/tests/Makefile.in,
	  dlls/kernel/tests/volume.c:
	kernel: Added a test for QueryDosDeviceA.

2006-02-06  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/clock/No.rc, programs/progman/No.rc, programs/winecfg/No.rc,
	  programs/winefile/No.rc:
	Norwegian Bokmål updates.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL for char transmission: IMMEDIATE_CHAR.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented COMM IOCTL for modem status: GET_MODEMSTATUS.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL for serial: SET_WAIT_MASK, GET_WAIT_MASK.

	* dlls/kernel/comm.c, dlls/ntdll/serial.c:
	ntdll: Implemented IOCTL purge for serial objects.

2006-02-06  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/basetexture.c, dlls/wined3d/cubetexture.c,
	  dlls/wined3d/device.c, dlls/wined3d/directx.c,
	  dlls/wined3d/indexbuffer.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/query.c, dlls/wined3d/resource.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/surface.c,
	  dlls/wined3d/swapchain.c, dlls/wined3d/texture.c,
	  dlls/wined3d/vertexbuffer.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/volume.c,
	  dlls/wined3d/volumetexture.c:
	wined3d: Update the QueryInterface functions of IWineD3DBase subclasses.

	* dlls/wined3d/stateblock.c:
	wined3d: Update refcounts when storing references in IWineD3DStateBlockImpl_Capture.
	Move TRACEs to the top of their code blocks.

	* dlls/wined3d/device.c:
	wined3d: Release the correct vertexdeclaration in
	IWineD3DDeviceImpl_SetVertexDeclaration.

	* dlls/wined3d/device.c:
	wined3d: Also update reference counts when we're recording a stateblock.

	* dlls/wined3d/device.c, dlls/wined3d/surface.c, dlls/wined3d/volume.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	wined3d: Fix SetContainer.
	Add/Release references to the container.
	Change the type of the container from IUnknown to IWineD3DBase.

	* dlls/wined3d/drawprim.c:
	wined3d: Downgrade a FIXME to a TRACE.

2006-02-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c,
	  programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	winedbg: Added support for function parameters passed in registers.
	Added correct stabs parsing for function parameters in registers.
	Added a couple of helper functions to make code smaller and more
	readable.

	* dlls/kernel/atom.c, dlls/kernel/tests/atom.c, dlls/ntdll/tests/atom.c:
	kernel: Fixed regression in atom handling.
	Added proper tests (local & global functions).

2006-02-06  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Don't use EM_STREAMIN for paste.

2006-02-06  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/commdlg/fontdlg.c:
	commdlg: Add font sizes 6 and 7 to font select dialog.

2006-02-06  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources.

2006-02-06  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2006-02-05  Gerald Pfeifer <gerald@pfeifer.com>

	* configure, configure.ac, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Use struct mtget.mt_blksiz on systems featuring this.
	Work around using struct mtget.mt_gstat on systems lacking this.

2006-02-05  Robert Millan <rmh@aybabtu.com>

	* configure, configure.ac, dlls/kernel/heap.c, dlls/ntdll/directory.c,
	  dlls/ntdll/file.c, dlls/ntdll/signal_i386.c, dlls/winsock/socket.c,
	  libs/wine/ldt.c, libs/wine/mmap.c, server/context_i386.c:
	Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
	that is used with FreeBSD.

2006-02-05  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editstr.h, dlls/riched20/writer.c:
	riched20: Separate stream state from editor state.
	Somewhat improves thread safety.

	* dlls/riched20/editor.h, dlls/riched20/writer.c:
	riched20: Add method to stream data based on a range.

	* dlls/riched20/editor.c:
	riched20: Don't use EM_STREAMOUT for copy/cut.

2006-02-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/trace.c:
	server: Remove no longer used create_flags from get_startup_info request.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel: Use a magic ConsoleHandle value instead of create flag to pass
	the CREATE_NEW_CONSOLE flag to the child.

	* dlls/kernel/kernel_main.c, dlls/kernel/process.c:
	kernel: Set the console flag in the parent for CREATE_NEW_PROCESS_GROUP.

	* server/change.c:
	server: Fixed compile without inotify.

2006-02-05  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winecfg/Ko.rc:
	winecfg: Updated the Korean translation.

2006-02-05  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, include/wine/wined3d_gl.h:
	wined3d: Use GL_EXTCALL to call OpenGL extension glPointParameterfvARB.

	* dlls/d3d8/d3dcore_gl.h, dlls/d3d8/device.c:
	d3d8: Use GL_EXTCALL to call OpenGL extension glPointParameterfvARB.

	* dlls/d3d8/directx.c:
	d3d8: Add detection for GL_ARB_point_parameters support.

2006-02-05  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Empty undo stack after EM_STREAMIN without SFF_SELECTION flag.

2006-02-05  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/commdlg/cdlg_De.rc:
	commdlg: Update German resource.

2006-02-05  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/tests/str.c:
	crypt32: Fix Mingw compile.

2006-02-04  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/d3d8/device.c:
	d3d8: Fixed point sprite scaling when size < 1.0f.

	* dlls/d3d8/device.c:
	d3d8: Fixed POINTSPRITEENABLE.

	* dlls/d3d8/device.c:
	d3d8: Fixed POINTSCALEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Fixed point sprite scaling when size < 1.0f.

2006-02-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loadorder.c:
	ntdll: Added a few helper function to simplify the loadorder code.
	Keep the application key open, it's valid for the lifetime of the
	process.

	* programs/winecfg/En.rc, programs/winecfg/libraries.c,
	  programs/winecfg/resource.h:
	winecfg: Display a warning when the user tries to change the load
	order of a system dll.

	* programs/winecfg/libraries.c:
	winecfg: Populate the dll combo box with the dlls found in the load path.

	* include/wine/library.h, libs/wine/loader.c, libs/wine/wine.def,
	  libs/wine/wine.map:
	libwine: Added wine_dll_enum_load_path function to allow querying the dll path.

2006-02-04  Kasper Sandberg <redeeman@metanurb.dk>

	* dlls/shell32/shell32_Da.rc, programs/clock/Da.rc,
	  programs/notepad/Da.rc, programs/progman/Da.rc,
	  programs/winhelp/Da.rc:
	Danish language update.

2006-02-04  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/list.c, dlls/riched20/paint.c,
	  dlls/riched20/para.c, dlls/riched20/reader.c, dlls/riched20/run.c,
	  dlls/riched20/writer.c:
	riched20: Initial support for simple tables.

	* dlls/riched20/editor.h, dlls/riched20/run.c, dlls/riched20/wrap.c:
	riched20: Removed an unused parameter.

	* dlls/riched20/caret.c:
	riched20: Simplified ME_InsertGraphicsFromCursor() function.

	* dlls/riched20/run.c:
	riched20: Fixed undo stack corruption.

2006-02-04  Mike McCormack <mike@codeweavers.com>

	* dlls/imm32/imm.c:
	imm32: Remove FIXME messages from some implemented functions.

	* programs/clock/En.rc, programs/clock/License_En.c,
	  programs/clock/Makefile.in, programs/clock/clock_res.h,
	  programs/clock/license.c, programs/clock/license.h,
	  programs/clock/main.c:
	Clock: Load license text from resources.

2006-02-04  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/msvideo_main.c:
	msvfw32: Do not overwrite fccType in the codec enumeration proc.

2006-02-04  Neil Skrypuch <ns03ja@brocku.ca>

	* programs/winecfg/drive.c:
	winecfg: Use already existing letter_to_index().

2006-02-03  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/wined3d/device.c:
	wined3d: Add a break which got lost in the POINTSCALEENABLE fix.

2006-02-03  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Add architecture for generating pointer layouts.

2006-02-03  Alexandre Julliard <julliard@winehq.org>

	* tools/wine.inf:
	wine.inf: Make FourCC codes uppercase again until we can figure out
	why lowercase doesn't work right.

2006-02-03  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/typegen.c:
	widl: The 'string' attribute can also be used with unsigned characters.

2006-02-03  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Restrict stubless FC types to the range of the type function table.

	* dlls/rpcrt4/ndr_midl.c:
	rpcrt4: Raise exceptions in NdrSendReceive if I_RpcSendReceive failed.

	* include/wine/rpcfc.h:
	include: Move all of the contiguous FC types together so we can see
	possible missing constants better.

	* include/rpcndr.h:
	include: Add function declarations for the Range type.

2006-02-03  Mike McCormack <mike@codeweavers.com>

	* include/winnt.h:
	ntdll: Add FILE_ACTION and FILE_NOTIFY_CHANGE_ defines for streams.

2006-02-03  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/device.c:
	wined3d: Fixed WINED3DRS_POINTSPRITEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Corrected implementation of WINED3DRS_POINTSCALEENABLE.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_EDGEANTIALIAS.

	* dlls/wined3d/device.c:
	wined3d: Implemented WINED3DRS_MULTISAMPLEANTIALIAS.

2006-02-03  Robert Millan <rmh@aybabtu.com>

	* dlls/ntdll/signal_i386.c, dlls/ntdll/signal_x86_64.c:
	ntdll: Rename i386 CPU trap codes to avoid collision with system headers.

2006-02-03  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	ole: Initialize a few more funcdesc members in CreateDispTypeInfo.

2006-02-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msrle32/msrle32.c, dlls/msvidc32/msvideo1.c,
	  dlls/msvideo/msvideo_main.c:
	Add a check for icinfo->fccType in DRV_OPEN message handler of builtin
	video codecs.

	* tools/wine.inf:
	wine.inf: Change fcc type of builtin video codecs in system.ini to be
	equal to ICTYPE_VIDEO.

	* dlls/commdlg/filedlg.c:
	Add support for CDM_HIDECONTROL message in the file open dialog.

2006-02-03  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/oid.c:
	crypt32: Add stub for CryptEnumOIDInfo.

2006-02-02  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.7.

----------------------------------------------------------------
2006-02-02  Phil Lodwick <Phil.Lodwick@efi.com>

	* dlls/winsock/tests/sock.c:
	winsock/tests: Add a todo_wine test for select.

2006-02-02  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool/tests: Filter more results.

2006-02-02  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/wined3d/directx.c:
	wined3d: Added support for ARB_POINT_PARAMETERS.

2006-02-02  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/gdi/freetype.c:
	gdi: Slant font automatically if no italic variant exists.

2006-02-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/Bg.rc, programs/winecfg/Cs.rc, programs/winecfg/De.rc,
	  programs/winecfg/En.rc, programs/winecfg/Es.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/It.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Pt.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/resource.h,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Remove color depth. It's source of problems for number of users.

2006-02-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shellpath.c:
	shell32: Create $HOME targeted symbolic links during SHELL_RegisterFolders.

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_Ko.rc, dlls/shell32/shell32_No.rc,
	  dlls/shell32/shell32_Pt.rc, dlls/shell32/shell32_Ru.rc:
	shell32: Move 'My Pictures', 'My Videos' and 'My Music' folders
	directly to %USERPROFILE% (instead of %USERPROFILE%\\My Documents), to
	allow for reasonable symbolic linking to $HOME based directories.

	* dlls/shell32/shellpath.c:
	shell32: Get rid of the magic MyDocuments->$HOME mapping code.

2006-02-02  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/opengl_ext.h, dlls/opengl32/wgl.c, dlls/x11drv/init.c,
	  dlls/x11drv/x11drv.h:
	opengl: Sync a dibsection to its pixmap before drawing to it via opengl.

2006-02-02  Alexandre Julliard <julliard@winehq.org>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c:
	widl: Some cosmetic fixes in generated code.

	* tools/widl/widl.c:
	widl: Make sure the token variables are always initialized properly.

2006-02-02  Johan Dahlin <jdahlin@async.com.br>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: RtlIpv4AddressToStringExW/RtlIpv4StringToAddressExW stubs.

2006-02-02  Tobias Loew <tobi@die-loews.de>

	* dlls/gdi/path.c:
	gdi: Extended pens do not work correct with StrokePath.

2006-02-02  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel32: FindFirstChangeNotification needs a static IO_STATUS_BLOCK.

2006-02-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Use realpath instead of canonicalize_file_name for portability
	reasons.

2006-02-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* tools/wine.inf:
	wine.inf: Add HKLM,%CurrentVersionNT%,"CurrentType".

2006-02-02  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/commdlg/filedlg.c:
	commdlg: File open dialog: Use the specified instance handle for
	custom dialog templates.

2006-02-02  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shlwapi/ordinal.c, dlls/shlwapi/shlwapi.spec:
	shlwapi: Added stub for ShellMessageBoxWrapW.

2006-02-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c:
	crypt32: Support external providers.
	- add support for external store providers
	- rewrite registry stores as a provider
	- fix a memory leak

2006-02-02  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/str.c, dlls/crypt32/tests/str.c:
	crypt32: Implement CertRDNValueToStrW and CertNameToStrW, with tests.

2006-02-02  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c:
	advapi32: Add stub for ObjectDeleteAuditAlarmW.

	* dlls/oleaut32/variant.c:
	oleaut32: Prevent freeing of random memory.
	Don't assign type to variant until we're sure we are assigning a
	value.

2006-02-02  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c:
	riched20: Handle context menu.

2006-02-01  Fatih Aşıcı <fasici@linux-sevenler.org>

	* programs/start/start.c:
	start.exe: build_args now returns the correct string when no parameter
	is passed.

	* dlls/x11drv/keyboard.c:
	x11drv: Added Turkish F keyboard layout.

2006-02-01  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/crypt32.spec, dlls/crypt32/str.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/str.c:
	crypt32: Implement CertRDNValueToStrA and CertNameToStrA, with tests.

2006-02-01  Kevin Koltzau <kevin@plop.org>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h:
	riched20: Implement EM_SETOLECALLBACK.

2006-02-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	wine.inf: Remove %1 from [http|htmlfile]\shell\open\command.

2006-02-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Empty string as environment is valid, with tests.

	* include/winspool.h:
	winspool.h: Add missing declarations.

2006-02-01  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/riched20/Makefile.in, dlls/riched20/editor.c,
	  dlls/riched20/txtsrv.c:
	riched20: Implement CreateTextServices.
	Implement a stub interface that CreateTextServices returns.

2006-02-01  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/style.c:
	riched20: Fixed font cache corruption.

2006-02-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/wineps/pen.c, dlls/x11drv/pen.c:
	Translate pen width from logical units only for geometric pens.

	* dlls/shell32/shlexec.c:
	shell32: execute_from_key should fallback to a DDE exec only if the
	command to execute from is not found in the registry.
	Pass already found executable name to dde_connect.

2006-02-01  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix a SEGV when using arrays declared using a pointer and
	attributes, instead of array indices (reported by Eric Kohl).

2006-01-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/tests/.gitignore:
	setupapi: Ignore ok file for new query test.

2006-01-31  Mike McCormack <mike@codeweavers.com>

	* programs/winefile/En.rc, programs/winefile/Makefile.in,
	  programs/winefile/license.c, programs/winefile/resource.h,
	  programs/winefile/winefile.c, programs/winefile/winefile.h:
	winefile: Move the license and warranty text into the resources.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Changes to output for better debugability.
	Write the offset and the absolute address for referenced types.
	Write the current offset out when writing a pointer type.

	* tools/widl/typegen.c:
	widl: Clean up conformant struct handling.
	Make the writing of conformant structures take advantage of the new
	type format string offset handling.

	* tools/widl/typegen.c:
	widl: Fix the writing of arrays with size specified in the array
	expression instead of the size_is expression.

	* tools/widl/typegen.c:
	widl: Improve the current type offset passing.
	Change the functions to take the current type offset and return the
	start of the type written.

	* tools/widl/typegen.c:
	widl: The stack/structure offset in correlation descriptors should be a short.

	* tools/widl/parser.y:
	widl: Do constant folding for the sizeof operator on simple types.

	* tools/widl/header.c, tools/widl/typegen.c:
	widl: Support client/server generation for explicit_handle interfaces
	(based on a patch by Eric Kohl).

	* tools/widl/typegen.c:
	widl: Implement constant conformance.

	* tools/widl/client.c, tools/widl/server.c:
	widl: Fix the type offset used in marshaling/unmarshaling.
	Make a copy of type_offset so that it only gets incremented once per
	function, instead of twice.

	* tools/widl/write_msft.c:
	widl: Implement the writing of defaultvalue constants for enum values.

	* include/winsvc.h:
	include: Add SC_ENUM_TYPE to winsvc.h.

	* dlls/stdole2.tlb/std_ole_v2.idl:
	stdole2.tlb: Remove hack due to unimplemented widl functionality.

2006-01-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Only append '/' to base path if not already present in
	UNIXFS_get_unix_path.

2006-01-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/change.c:
	kernel: Set the overlapped structure status in ReadDirectoryChanges.

2006-01-31  Gerald Pfeifer <gerald@pfeifer.com>

	* dlls/ntdll/tape.c:
	ntdll: tape.c portability fixes.
	Accept MTCOMP as an alias for MTCOMPRESSION on those systems, having
	the former, but not the latter.
	Only enable operations supported by the host OS in
	TAPE_CreatePartition() and TAPE_Prepare().

2006-01-31  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/run.c,
	  dlls/riched20/style.c:
	riched20: Added support for hidden text.

	* dlls/riched20/caret.c:
	riched20: Paint the selection while it's being extended by dragging.

2006-01-31  Tobias Loew <tobi@die-loews.de>

	* dlls/gdi/path.c:
	gdi: viewportExt changed after call to StrokePath.

2006-01-31  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/gdi/enhmetafile.c, dlls/gdi/mapping.c, dlls/gdi/tests/mapping.c:
	gdi: Fixes for the isotropic mapping mode.
	- Isotropic mapping mode: Adjust the viewport extension in
	SetWindowExtEx, handle negative extents.
	- Support the isotropic mapping mode in the enhanced metafile driver.
	- New tests.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Use a macro to write out FC types, along with the current offset
	which is useful for debugging.

	* tools/widl/typegen.c:
	widl: Pass the current type format string offset through all type
	writing functions.

	* tools/widl/typegen.c:
	widl: Eliminate redundant callback routines.
	Add a function for comparing expressions and use it to eliminate
	redundant callback functions.

	* include/wine/rpcfc.h:
	widl: Define a value for RPC_FC_WSTRING.

2006-01-31  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Default for PixelShaders is disabled.

2006-01-31  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/query.c:
	setupapi: Add tests for SetupGetInfInformation.

	* include/setupapi.h:
	setupapi: Add definitions for the SetupGetInfInformation search flags.

2006-01-31  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/tests/change.c:
	kernel: Add some test cases for ReadDirectoryChangesW.

2006-01-31  Juan Lang <juan@codeweavers.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Correct X509_NAME decoding, and more stringent tests.

	* include/wincrypt.h:
	wincrypt: Fix typo.

2006-01-31  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/comctl32/listview.c:
	comctl32: Restore listview font on CDRF_NEWFONT.

2006-01-31  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Dump the pointer for VT_ARRAY/VT_VECTOR typed variants.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Handle the RPC_FC_PROC_BYVAL flag correctly in stubless
	proxies and stubs.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Only attempt to marshal an object if it is non-NULL.

2006-01-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Only resolve the 'dosdevices' based symbol links in
	UNIXFS_get_unix_path, but leave all others alone.

2006-01-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/enhmfdrv/objects.c, dlls/gdi/gdiobj.c,
	  dlls/gdi/mfdrv/objects.c, dlls/gdi/pen.c, dlls/gdi/tests/gdiobj.c,
	  dlls/wineps/pen.c, dlls/x11drv/pen.c, include/gdi.h:
	gdi: Add support for creating extended pens.

2006-01-30  Jan Zerebecki <jan.wine@zerebecki.de>

	* dlls/d3d8/directx.c:
	d3d8: CreateDevice should use the root of the current window.

2006-01-30  Marcus Meissner <marcus@jet.franken.de>

	* dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Allocate space enough to handle all the possible ipv4 addresses.

2006-01-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/riched20/editor.c, include/textserv.h:
	riched20: Make CreateTextServices use ITextHost.

2006-01-30  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/message.c:
	user: Remove internal messages from the message queue before handling them.

2006-01-30  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/winecfg/Es.rc:
	winecfg: Spanish translation update.

2006-01-30  Mike McCormack <mike@codeweavers.com>

	* server/change.c:
	server: Initial inotify support.

	* dlls/kernel/tests/change.c:
	kernel: Add some more tests for FindFirstChangeNotification.

2006-01-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/comctl32/treeview.c, dlls/user/uitools.c:
	Fixed creation of PS_ALTERNATE pens.

2006-01-30  Tobias Loew <tobi@die-loews.de>

	* dlls/comctl32/tab.c:
	comctl32: Fix tab-control flickering.

2006-01-30  Maarten Lankhorst <m.b.lankhorst@gmail.com>

	* dlls/x11drv/xrender.c:
	x11drv: Fix AlphaBlend read boundaries.

2006-01-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msi.spec, include/msiquery.h:
	msi: Add an implementation of MsiGetDatabaseState.

2006-01-30  Juan Lang <juan@codeweavers.com>

	* include/wincrypt.h:
	wincrypt.h: Add more missing defines.

2006-01-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/hook.c:
	user: Remove duplicate code.

	* dlls/user/tests/msg.c:
	user/tests: Add test for low level mouse hooks.

2006-01-30  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	rpcrt4: Fill in the IRpcStubBuffer vtables for interfaces that don't
	already have them filled in.

	* dlls/oleaut32/typelib.c:
	oleaut: Fix the order of parameters passed into DispCallFunc.

2006-01-30  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/ntdll/tape.c:
	kernel: Remove bogus breaks in tape.c

2006-01-27  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/factory.c,
	  dlls/msxml3/node.c, dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c:
	msxml: Issue a fixme if the interface is not implemented.

2006-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/pen.c, dlls/gdi/tests/gdiobj.c:
	gdi: Add test case for creating pens, make it pass under Wine for
	cosmetic pens.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel: Partially implement ReadDirectoryChangesW using NtNotifyChangeDirectoryFile.

2006-01-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Reimplement interface enumeration.
	Implement interface enumeration based on if_nameindex, based on a
	suggestion by Michael Ost

2006-01-27  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Fix SPI_{G|S}ETFONTSMOOTHING with tests.

2006-01-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/lcformat.c, dlls/kernel/profile.c, dlls/ntdll/tests/path.c,
	  dlls/ntdll/tests/reg.c, libs/wine/debug.c:
	Fix a couple of bugs spotted by valgrind.

	* dlls/ntdll/signal_i386.c, server/console.c, server/fd.c,
	  server/request.c:
	Suppress some false-positives reported by valgrind.

	* programs/winedbg/break.c, programs/winedbg/dbg.y,
	  programs/winedbg/debug.l, programs/winedbg/debugger.h,
	  programs/winedbg/winedbg.c:
	winedbg: Hardware breakpoints
	- implemented hardware assisted breakpoints (new 'hbreak' command
	which behaves just as 'break' command)
	- small improvements to break handling (saving hit xpoint across
	exception handling)
	- fixed 'cont N' command for watchpoints

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/file.c, dlls/kernel/path.c, dlls/kernel/tests/file.c,
	  dlls/ntdll/file.c, dlls/ntdll/tests/change.c, server/fd.c:
	server: Make the FILE_SHARE_DELETE sharing checks depend on DELETE
	access instead of on the FILE_DELETE_ON_CLOSE flag (based on a patch
	by Mike McCormack).

	* dlls/shell32/shlfileop.c:
	shell32: Fixed a couple of FindFirstFile handle leaks.

	* dlls/oleaut32/tests/.gitignore:
	oleaut32: Ignore new test ok file.

2006-01-27  Huw Davies <huw@codeweavers.com>

	* dlls/user/tests/edit.c:
	user: Don't automatically add a bunch of styles in create_editcontrol.

2006-01-27  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/text.c, dlls/user/text.c:
	user: Fix DrawTextExA/W on empty strings.
	DrawTextExA/W should calculate a rectangle of zero height and width in
	some cases of null or empty supplied strings. With conformance tests.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c:
	kernel32: Implement FindFirstChangeNotification with NtNotifyChangeDirectoryFile.

2006-01-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut32.spec, dlls/oleaut32/tests/Makefile.in,
	  dlls/oleaut32/tests/usrmarshal.c, dlls/oleaut32/usrmarshal.c:
	ole: Test and implement LPSAFEARRAY marshaling.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Improve the typelib marshaler traces.
	Improve the typelib marshaler traces for lazy developers like me who
	don't want to grep for constants.

	* include/rpcndr.h:
	include: Add types and definitions for RPC user callback routines.

	* include/propidl.idl:
	include: Add new union cases for PROPVARIANT structure.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Implement callback conformance.

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/riched20/paint.c:
	riched20: Remove a couple of no longer used functions.

2006-01-27  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c, dlls/ntdll/directory.c, dlls/ntdll/tests/change.c,
	  include/wine/server_protocol.h, server/change.c, server/file.c,
	  server/file.h, server/protocol.def, server/request.h, server/trace.c:
	server: Fix the file notification interface to use directory handles.

2006-01-27  Alexandre Julliard <julliard@winehq.org>

	* server/hook.c:
	server: Fixed low-level hardware hooks.
	The hook thread field has been reused for win events, so it no longer
	works for low-level hardward hooks. Use the owner field instead.

2006-01-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/scroll.c:
	user: Postpone resetting SCROLL_TrackingWin untill all notifications are sent.

2006-01-27  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/wineoss/audio.c:
	wineoss: Proper support in OSS driver for audio when no mixer is present.
	Fixed a couple of potential fd leaks.

2006-01-27  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/tape.c:
	kernel: Implementation of tape functions.
	Implement CreateTapePartition, EraseTape, GetTapeParameters,
	GetTapePosition, GetTapeStatus, PrepareTape, SetTapeParameters,
	SetTapePosition and WriteTapemark.

2006-01-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IDispatch stub implementation.

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	shdocvw: Added WebBrowser's IOleCommandTarget stub implementation.

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Added client site's IOleCommandTarget stub implementation.

2006-01-26  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: EM_STREAMIN should send a EN_UPDATE notification.

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/paint.c:
	riched20: Selection painting fixes.

2006-01-26  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/ntdll/Makefile.in, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/tape.c, include/config.h.in:
	ntdll: Add implementation of tape IOCTLs.

	* include/Makefile.in, include/ddk/ntddtape.h, include/winbase.h,
	  include/winnt.h:
	include: Add some defines related to tape support.

2006-01-26  Mike McCormack <mike@codeweavers.com>

	* loader/preloader.c:
	preloader: Allow compiling the preloader with -fstack-protector.

2006-01-25  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	user: Don't drop owned windows in WIN_EnumChildWindows.
	Add a few tests for this.

2006-01-25  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c, server/file.c:
	server: Allow opening a directory with write access (based on a patch
	by Mike McCormack).

	* include/wtypes.idl:
	wtypes: Don't specify alignment for DOUBLE and DATE on MSVC.

	* tools/wine.inf:
	wine.inf: Don't overwrite registry keys that users may want to change.

	* dlls/kernel/dosmem.c, dlls/kernel/kernel_private.h:
	kernel: Handle a failure to load winedos a bit more gracefully.

	* dlls/x11drv/bitblt.c:
	x11drv: Always set GC function to GXcopy for the BitBlt DIB optimization.

2006-01-25  Mike Frysinger <vapier@gentoo.org>

	* tools/winegcc/winegcc.c:
	winegcc: Pass -m32/-m64 along to the linker.

2006-01-25  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/duplex.c:
	dsound: Duplex test fix.

2006-01-25  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	shdocvw: Added TranslateUrl implementation.

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h:
	shdocvw: Store IDocHostUIHandler interface in the WebBrowser object.

2006-01-25  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	static control: SS_CENTERIMAGE fixes.
	- Stretch bitmaps and icons to the whole control size if
	SS_CENTERIMAGE is absent
	- Draw the background of centered bitmaps and icons with the
	background brush (like Windows XP for applications with a manifest)

	* dlls/gdi/enhmfdrv/init.c:
	gdi: Fix the EMF bounding box calculation.

2006-01-25  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h:
	iphlpapi: Remove one IP address per interface restriction.
	- remove restriction of one IP address per interface
	- remove dead code, and make static functions that can be
	- update comments and copyright notice

2006-01-25  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/tests/change.c:
	kernel: Test moving a directory that has a change notification
	registered for itself.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* loader/pthread.c:
	loader: Detect pthread_get_stackaddr_np returning the top of the stack
	instead of the base.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c:
	msxml: Implement save.

2006-01-24  Mike McCormack <mike@codeweavers.com>

	* programs/progman/En.rc, programs/progman/License_En.c,
	  programs/progman/Makefile.in, programs/progman/license.c,
	  programs/progman/license.h, programs/progman/main.c,
	  programs/progman/progman.h:
	progman: Load license from resources.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/errno.c:
	msvcrt: Make error strings static.

2006-01-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/comboex.c, dlls/comctl32/tests/progress.c,
	  dlls/dbghelp/symbol.c, dlls/kernel/comm.c,
	  dlls/msacm/winemp3/common.c, dlls/msi/dialog.c, dlls/msi/helpers.c,
	  dlls/ntdll/atom.c, dlls/oleaut32/oleaut.c,
	  dlls/oleaut32/tests/typelib.c, dlls/riched20/caret.c,
	  dlls/riched20/editor.c, dlls/riched20/para.c,
	  dlls/secur32/negotiate.c, dlls/secur32/secur32.c,
	  dlls/secur32/secur32_priv.h, dlls/urlmon/umon.c,
	  dlls/user/tests/edit.c, dlls/winmm/mci.c,
	  programs/explorer/explorer.c, tools/wmc/mcl.c, tools/wrc/wrc.c:
	Make more arrays const.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/wineprefixcreate.in:
	wineprefixcreate: Only create links for files that don't exist.
	Make a copy instead of a link if the original file is writable.

	* server/serial.c:
	server: Use the new set_fd_user function in create_serial().

2006-01-24  Mike McCormack <mike@codeweavers.com>

	* server/fd.c, server/file.c, server/file.h:
	server: Modify open_fd to create an fd without a user.
	Create a set_fd_user function.
	Update create_file() to use the above functions.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Get rid of the default ignored symbols list.

	* dlls/msvcrt/msvcrt.spec, dlls/ntdll/ntdll.spec, dlls/ntdll/string.c:
	ntdll: memcpy should behave like memmove in ntdll too.

	* dlls/ntdll/ntdll.spec:
	ntdll: Mark all libc-style functions as private to make sure we link
	to the real libc functions instead.

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.h, dlls/user/combo.c,
	  dlls/winedos/int21.c, include/winternl.h, programs/winedbg/winedbg.c:
	Avoid importing _strlwr/_strupr from ntdll.

	* dlls/msvcrt/console.c, dlls/msvcrt/file.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/wcs.c:
	msvcrt: Use the msvcrt version of printf everywhere.

2006-01-24  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c, dlls/iphlpapi/ipstats.c,
	  dlls/iphlpapi/ipstats.h:
	iphlpapi: Clean up memory allocation.
	- pass heap to allocate from directly to helper functions, instead of
	unnecessarily copying returned data
	- use public types rather than internal ones
	- make sure GetBestRoute doesn't return bogus matches

2006-01-24  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate type format strings for conformant varying arrays.

	* tools/widl/parser.y:
	widl: Fix detection of varying arrays.
	Correctly identify structures containing varying arrays as conformant
	varying structures.

	* tools/widl/parser.y:
	widl: Fix detection of conformant varying structs.
	Rename has_conformant_array to has_conformance, add a new variable
	has_variance and map has_conformant_string to has_conformance and
	has_variance.
	A conformant varying struct should be returned if just variance is
	present and even if no pointers are present.

	* tools/widl/typegen.c:
	widl: Support generation of conformant structure type strings.

	* tools/widl/typegen.c:
	widl: Conformant arrays have a size of 0.
	Conformant arrays should cause a size of 0 to be returned from
	type_memsize.

	* tools/widl/typegen.c:
	widl: Support correlation descriptors in structures.

	* tools/widl/parser.y:
	widl: Error if an array is in the middle of a structure.
	Fix detection of conformant arrays and output an error if the array
	isn't at the end of the structure.

	* tools/widl/header.h, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Fix the detection of conformant and pointer structs.

	* tools/widl/typegen.c:
	widl: Simple structs and complex pointers.
	Write out type format string for simple structs and for pointers to
	non-simple types.

	* tools/widl/typegen.c:
	widl: Add framework for generating struct and union type format strings.

	* tools/widl/typegen.c:
	widl: Support different types of simple pointers.
	Support pointer types in unmarshall_arguments.

	* tools/widl/typegen.c:
	widl: Generate NdrNonConformatString* calls for non-conformant string types.

	* tools/widl/typegen.c:
	widl: Add functions for detecting array and string types.
	Add functions for detecting array and string types and use these in
	both writing type format strings and when marshalling and
	unmarshalling parameters.

	* tools/widl/typegen.c:
	widl: Support some more complicated conformance / variance expressions.

	* include/wine/rpcfc.h:
	widl: Added some more constants for conformance descriptors.

	* tools/widl/typegen.c:
	widl: Start implementing writing of conformance/variance descriptors.

	* include/wine/rpcfc.h, tools/widl/typegen.c:
	widl: Strings.
	Write out type format strings for string types.

	* tools/widl/typegen.c:
	widl: Arrays.
	Write out type format strings for arrays, except for the missing
	generic functionality of conformance and variance descriptors.

	* tools/widl/typegen.c:
	widl: Simplify write_typeformatstring_type.
	Simplify handling of types in write_typeformatstring_type by only
	writing non-pointer types out when ptr_level is 0. Add stubs for
	functions that will write out the type format string for strings and
	arrays.

	* tools/widl/typegen.c:
	widl: Don't use recursion for write_typeformatstring_type.
	Since a var_t can now be passed in, rename to
	write_typeformatstring_var. Simplifies the code.

	* tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Don't use recursion to implement write_procformatstring_type.
	Renamed to write_procformatstring_var now since we can pass a var_t in
	again. This results in simpler code.

2006-01-24  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel: Fail more gracefully when loading a builtin exe didn't work.

2006-01-24  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/listview.c:
	comctl32: Make listview use standard wine_dbg_sprintf and wine_dbgstr_xxx.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	gdi: Fixes to preempt freetype 2.2.0.

2006-01-24  Jacek Caban <jacek@codeweavers.com>

	* include/Makefile.in, include/mshtmcid.h, include/mshtml.idl:
	Added mshtmcid.h.

2006-01-24  Huw Davies <huw@codeweavers.com>

	* configure, configure.ac, dlls/gdi/freetype.c, include/config.h.in:
	gdi: Use correct include file for FT_Get_Module.

2006-01-23  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/user/user32.spec, dlls/user/win.c:
	user32: Added stub for UpdateLayeredWindow.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/errno.c, dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h:
	msvcrt: Properly implemented strerror and perror (based on a patch by
	Uwe Bonnes).

	* dlls/msvcrt/data.c, dlls/msvcrt/errno.c:
	msvcrt: Added _sys_errlist (based on a patch by Uwe Bonnes).

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/tests/headers.c,
	  include/msvcrt/errno.h:
	msvcrt: Added EILSEQ definition.

2006-01-23  Hans Leidekker <hans@it.vu.nl>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/time.c:
	msvcrt: Stub implementation for wcsftime.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* BUGS:
	Remove useless BUGS file.

2006-01-23  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/helpers.c, dlls/msi/package.c:
	msi: Move the firing of control events to MSI_ProcessMessage.
	Move the firing of control events from internal helper functions to
	MSI_ProcessMessage so that custom actions can all cause control events
	to be fired.
	Added the firing of progress events.

	* dlls/msi/action.c, dlls/msi/files.c:
	msi: Call ui_actiondata for more actions.

2006-01-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/advpack/tests/Makefile.in, dlls/advpack/tests/advpack.c:
	advpack/tests: Fixed failure when "ProgramFilesDir" is != "C:\Program Files".

2006-01-23  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winearts/Makefile.in, dlls/winmm/winearts/audio.c:
	winearts: Try to keep winecfg from crashing by recovering from an arts
	library crash.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/mmap.c, server/timer.c:
	Fixed a couple of warnings on MacOS.

	* dlls/dbghelp/stabs.c, programs/winedbg/be_alpha.c,
	  programs/winedbg/be_cpu.h, programs/winedbg/be_i386.c,
	  programs/winedbg/be_ppc.c, programs/winedbg/memory.c,
	  programs/winedbg/types.c:
	winedbg: Use Win32 types instead of long long.

	* server/trace.c, tools/make_requests:
	server: More generic mechanism for adding typecasts in server traces.
	Added casts for size_t values.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/ntdll.spec:
	ntdll: Forward ZwNotifyChangeDirectoryFile to NtNotifyChangeDirectoryFile.

2006-01-23  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/symbol.c:
	dbghelp: Return better values in module information.
	- 32/64: number of symbols is now correct
	- 64: the 64 bit extra fields are now initialized with some non null
	yet sensible value

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/module.c, dlls/dbghelp/path.c, dlls/dbghelp/pe_module.c,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c,
	  include/dbghelp.h:
	dbghelp: Brought dbghelp.h a bit closer to PSDK definitions.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: SymSetContext should return FALSE when setting twice the same
	frame context.

	* dlls/dbghelp/dbghelp.c:
	dbghelp: Live targets.
	In SymInitialize, now trying to check if the hProcess is a real live
	target or not. If we think it is, try to grasp ELF information from
	it.

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/module.c, include/dbghelp.h:
	dbghelp: Started implementation of the global callback mechanism.

	* dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Symbol info.
	- better coding for SYMBOL_INFO filling
	- some fixes on some fields (parameters)
	- now using the max size for symbol info

	* programs/winedbg/break.c, programs/winedbg/debugger.h,
	  programs/winedbg/expr.c, programs/winedbg/memory.c,
	  programs/winedbg/stack.c, programs/winedbg/types.c,
	  programs/winedbg/winedbg.c:
	winedbg: Added a more decent scheme for handling segmented addresses.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* libs/wine/ldt.c:
	libwine: Added LDT support for MacOS/x86.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Make GetMenuItemInfo tests pass under Wine.
	- Change menu item search algorithm to recurse into a submenu first.
	- Fallback to a found submenu if nothing else was found.

2006-01-23  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Support msidbControlAttributesSunken.

	* dlls/msi/dialog.c:
	msi: Only print fixme for progress attribute once.
	Since setting the Progress attribute is done quite frequently, don't
	flood the user with messages about it being unimplemented.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	crypt32: Add stub implementations of some crypto functions used by IE6 install.

2006-01-23  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/import.c:
	winebuild: Always import atof, the MS version is different.

2006-01-23  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/device.c:
	d3d8: For render states D3DRS_POINTSPRITEENABLE and
	D3DRS_MULTISAMPLEANTIALIAS, use GL_SUPPORT correctly.

	* dlls/d3d8/d3dcore_gl.h:
	d3d8: Add GL_ARB_multisample definitions.

	* dlls/d3d8/d3dcore_gl.h, dlls/d3d8/directx.c:
	d3d8: Add detection for GL_ARB_point_sprite support.

2006-01-23  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/scroll.c:
	user: Add missing WIN_ReleasePtr.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/avifil32/avifile_private.h, dlls/msvideo/msvideo_main.c,
	  include/vfw.h:
	ICCompressorChoose should initialize fccType and fccHandler fields
	for the full frames case as well.

2006-01-23  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/atom.c:
	kernel/tests: Integer atoms return different results on WinNT 3.51.

2006-01-23  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shell32.spec:
	shell32: Export DllGetClassObject by ordinal as grpconv.exe requires it.

2006-01-23  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Added DeleteSecurityContext.

2006-01-23  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Swiss German keyboard layout to better match the X11 one.

2006-01-23  James Hawkins <truiken@gmail.com>

	* dlls/shell32/shlfileop.c, dlls/shell32/tests/shlfileop.c:
	shell32: Reimplement a factored SHFileOperation.

2006-01-21  Marcus Meissner <meissner@suse.de>

	* tools/winebuild/build.h, tools/winebuild/relay.c,
	  tools/winebuild/spec16.c, tools/winebuild/spec32.c,
	  tools/winebuild/utils.c:
	winebuild: Output a .note.GNU-stack section to allow nonexecutable stack.

2006-01-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/gdi/metafile.c:
	gdi: Metafile records must be at least 3 words long.

2006-01-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/cppexcept.c:
	msvcrt: Preserve all registers in call_ebp_func.

2006-01-21  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Return FALSE if Mozilla ActiveX Control could not be found.

2006-01-21  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add a stub for RebootCheckOnInstall.

	* dlls/advpack/files.c:
	advpack: Fix the documentation for AddDelBackupEntry.

	* dlls/advpack/advpack.c:
	advpack: Complete the documentation for CloseINFEngine.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add a stub for SetPerUserSecValues.

	* dlls/advpack/files.c:
	advpack: Fix the documentation for FileSaveMarkNotExist.

	* dlls/advpack/files.c:
	advpack: Forward FileSaveMarkNotExist to AddDelBackupEntry.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add stubs for the user stub wrapper functions.

	* dlls/advpack/files.c:
	advpack: Implement DelNodeRunDLL32.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.c:
	advpack: Implement IsNTAdmin.

2006-01-20  Huw Davies <huw@codeweavers.com>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.c, dlls/shell32/shlfolder.c:
	shell: Fix incorrect usage of the return value of StrRetToStrNW.

2006-01-20  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/Makefile.in, dlls/wininet/internet.c,
	  dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	wininet: INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT work.
	Beginning of framework to implement handling of InternetQueryOption
	for INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT.

2006-01-20  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac:
	configure: Remove the -mpreferred-stack-boundary option, this breaks MacOS.

	* tools/winebuild/build.h, tools/winebuild/relay.c:
	winebuild: Moved offset definitions to relay.c since they are only
	needed there.
	Hardcoded a couple of TEB offsets to support cross-compilation.

2006-01-20  Huw Davies <huw@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/tests/compobj.c:
	ole: ProgIDFromCLSID sets progid to NULL on failure.

2006-01-20  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/x11drv/clipboard.c:
	x11drv: Prevent NULL dereference in SelectionRequest handling.

2006-01-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll.spec:
	ntdll: Add a stubbed NtSetSystemInformation.

2006-01-20  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, include/thread.h,
	  tools/winebuild/relay.c:
	ntdll: Move the %gs register to the ntdll_thread_regs structure.

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c:
	ntdll: Move the TEB register to the ntdll_thread_regs structure.

2006-01-20  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c, dlls/iphlpapi/ifenum.h,
	  dlls/iphlpapi/iphlpapi_main.c:
	iphlpapi: Remove redundant comments and fix typos.

2006-01-20  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/tests/resource.c:
	user/tests: Added \n to a few ok() calls.

2006-01-20  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c, dlls/ole32/tests/marshal.c:
	ole: Verify that the proxy is being used in the correct thread.

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/cpsf.c, dlls/rpcrt4/cpsf.h:
	rpc: Replace the hack that detected stubless proxies with the correct check.
	Pass in the ProxyInfo and Index to StdProxy_Construct instead of just
	the three members of the structure that were previously needed.
	Fix the detection of stubless proxies.

	* dlls/rpcrt4/ndr_marshall.c:
	rpc: Skip over the right number of bytes in new correlation descriptors.
	Skip over 6 bytes of the format descriptor if new correlation
	descriptors are being used, instead of 4.

	* dlls/ole32/tests/marshal.c:
	ole: Add a test for WM_QUIT behaviour during COM calls.

	* dlls/ole32/compobj.c:
	ole: Fix WM_QUIT Handling in CoWaitForMultipleHandles.
	When a WM_QUIT message in encountered in CoWaitForMultipleHandles then
	it should repost the WM_QUIT message and then switch to waiting
	without checking messages.

2006-01-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Fix a few TRACEs in pixelshader.c.

	* dlls/wined3d/device.c:
	wined3d: Return the correct pixelshader in
	IWineD3DDeviceImpl_GetPixelShader.

	* dlls/wined3d/drawprim.c:
	wined3d: A shader isn't guaranteed to have a vertex declaration, so
	add a NULL check for that.

2006-01-20  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	shdocvw: Added GetWindow implementation.

2006-01-19  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.6.

----------------------------------------------------------------
2006-01-19  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/Makefile.in, dlls/mscms/tests/profile.c:
	mscms: Check an appropriate registry key.

2006-01-19  Ken Thomases <ken@codeweavers.com>

	* dlls/user/win.c, dlls/user/winproc.c:
	user: Fixed the lifetime of MDICREATESTRUCT variables.

2006-01-19  Aric Stewart <aric@codeweavers.com>

	* dlls/shell32/shellpath.c:
	shell32: Update shellpaths My Pictures, My Video, My Music to be under
	$HOME, with a number of fallbacks.

2006-01-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d8/d3dcore_gl.h:
	d3d8: Added GL_ARB_point_sprite definition.

	* dlls/wined3d/directx.c:
	wined3d: Better version string parsing for VENDOR_NVIDIA in
	IWineD3DImpl_FillGLCaps.

2006-01-19  Mike McCormack <mike@codeweavers.com>

	* programs/winemine/dialog.c, programs/winemine/main.c:
	winmine: Use WIN32_LEAN_AND_MEAN.

2006-01-19  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/msxml_private.h,
	  dlls/msxml3/node.c, dlls/msxml3/text.c:
	msxml: Text node implementation.

2006-01-19  Jason Edmeades <us@edmeades.me.uk>

	* dlls/user/tests/menu.c:
	user: Tests for when the menu is incorrect because of duplication of a
	menu id and an hMenu.

2006-01-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Add support for another Canadian French keyboard flavour.

2006-01-19  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/directx.c:
	wined3d: In IWineD3DImpl_FillGLCaps use glGetString instead of
	glXGetClientString to retrieve the OpenGL vendor.

2006-01-19  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/instr.c:
	kernel: Remove calls to Nt[Get|Set]ThreadContext.
	It's done in exception handler now.

2006-01-19  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/Makefile.in, programs/winecfg/audio.c,
	  programs/winecfg/driveui.c, programs/winecfg/main.c,
	  programs/winecfg/properties.c, programs/winecfg/properties.h,
	  programs/winecfg/theme.c, programs/winecfg/winecfg.c,
	  programs/winecfg/x11drvdlg.c:
	winecfg: Tidy up included headers.
	Get rid of the barely used properties.c.

2006-01-18  Hans Leidekker <hans@it.vu.nl>

	* tools/winedump/output.c:
	winedump: Fix compilation of generated source.
	Include config.h in the .c file, not in the .h file.

2006-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/file.c:
	ntdll: Cleaned up the ioctl functions.
	Renamed function parameters to something usable.
	Fixed potential event leaks.

2006-01-18  Mike McCormack <mike@codeweavers.com>

	* programs/notepad/license.c, programs/regsvr32/regsvr32.c,
	  programs/winebrowser/main.c, programs/winhelp/callback.c,
	  programs/winhelp/macro.c:
	programs: Use WIN32_LEAN_AND_MEAN.

2006-01-18  Sasha Slijepcevic <sascha93101@yahoo.com>

	* dlls/msvcrt/file.c:
	msvcrt: In _tempnam, if TMP is set, it has a precedence over the
	parameter dir.

2006-01-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c:
	msxml: Implement get_nodeTypedValue.

2006-01-18  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/loader.c:
	ntdll: Loader optimization.
	Optimize for the case where a DLL with no path is requested and it is
	already loaded.

2006-01-18  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Add critical section names for debugging.

2006-01-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/metafile.c:
	gdi: Ignore a few more metafile escapes.

2006-01-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/dochost.c, dlls/shdocvw/events.c,
	  dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	shdocvw: Deactivate document in SetClientSite if ClientSite is NULL.
	Fix ref counting.

2006-01-18  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c, dlls/winspool/tests/info.c:
	winspool: Printing environment support for GetPrinterDriverDirectory.

2006-01-18  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: acmDriverAdd() support for ACM_DRIVERADDF_FUNCTION, implemented
	local drivers.

	* dlls/msacm/driver.c, dlls/msacm/stream.c:
	msacm: reroute all SendDriverMessage() calls to MSACM_Message.

	* dlls/msacm/driver.c:
	msacm: acmDriverMessage() with proper support for DRV_CONFIGURE.
	Allocate and supply a DRVCONFIGINFO structure for DRV_CONFIGURE when
	application does not supply one.

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: acmDriverAdd[AW] support for ACM_DRIVERADDF_NOTIFYHWND.
	Broadcast notifications are fleshed out and are now fully functional.

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	MSACM: acmDriverAddW skeleton, implementation of ACM_DRIVERADDF_NAME.
	- Rework acmDriverAddA to call acmDriverAddW.
	- Implement stub for acmDriverAddW with switch for the 3 known cases
	of driver add.
	- Implementation for case ACM_DRIVERADDF_NAME, which loads driver name
	& alias from registry (similar to msacm32 load).

	* dlls/msacm/driver.c, dlls/msacm/internal.c, dlls/msacm/wineacm.h:
	msacm: Implement acmDriverPriority with driver priority/enabled saving.
	Foundation for notification broadcasts with support for deferred
	notification.

	* dlls/msacm/internal.c:
	msacm: Implement honouring of driver priority and enabled status at
	load time.

2006-01-18  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut: Add missing SysFreeString to the Var{Mul,Add,Cmp} tests.

	* dlls/oleaut32/tests/vartest.c, dlls/oleaut32/tests/vartype.c:
	oleaut: Merge the VarCmp tests from vartype.c into vartest.c.

2006-01-18  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Clear the newly allocated memory used for complex arrays and structs.

	* dlls/rpcrt4/rpc_message.c:
	rpcrt4: Fix the sending of >5800 byte messages by only adding offset
	to the buffer after the first batch of data has been written to the
	pipe.

	* dlls/ole32/compobj.c:
	ole: Update the COM todo list.

	* dlls/ole32/ole2.c:
	ole: Re-post the quit message outside of the DoDragDrop message loop.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Reduce an ERR down to a WARN since a NULL interface pointer
	doesn't signify an error; it is just unusual.

	* programs/notepad/Zh.rc:
	notepad: Add a Font menu item for the Chinese locale.

2006-01-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/attribute.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c:
	msxml: Add attribute node implementation.

2006-01-17  Marcus Meissner <meissner@suse.de>

	* dlls/msvcrt/dir.c:
	msvcrt:	_makepath(): operate on target buffer directly.

2006-01-17  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Primary buffer size change tests.
	It looks like Windows doesn't change the primary buffer length when
	changing formats so make the tests fail now.
	This means the current ALSA implementation is broken when hardware
	acceleration is set to full and the primary buffer format is changed.

	* dlls/dsound/tests/.gitignore, dlls/dsound/tests/Makefile.in,
	  dlls/dsound/tests/duplex.c:
	dsound: Add full duplex tests.

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c:
	dsound: Add full duplex support.

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h:
	dsound: Convert IDirectSoundImpl from a COM class to a regular class
	and move most of the COM functions to the DirectSoundDevice class.

2006-01-17  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	static control: Immediately repaint the control.

	* dlls/user/static.c:
	static control: Separate WM_NCCREATE and WM_SETTEXT.
	- Separate WM_NCCREATE and WM_SETTEXT.
	- WM_SETTEXT and WM_SETFONT are ignored for static controls that don't
	display text.
	- WM_SETTEXT must not be used to change the icon/bitmap/metafile.
	- Immediately repaint the control on all occasions.

	* dlls/user/static.c:
	static control: Don't load OEM bitmaps.

	* dlls/user/static.c:
	static control: STN_ENABLE and STN_DISABLE notifications.

	* dlls/user/static.c:
	static control: Better STM_GETIMAGE.
	STM_GETIMAGE returns NULL if the given image type doesn't match the
	control's style.

	* dlls/user/static.c:
	static control: Support SS_REALSIZEIMAGE.
	- Support SS_REALSIZEIMAGE (this flag means "it's not necessary to
	load icons in the default icon size").
	- SS_ICON: Ability to display cursors.

	* dlls/user/static.c:
	static control: Support SS_REALSIZECONTROL.
	- Support SS_REALSIZECONTROL (this flag means "don't resize the
	control to the size of the bitmap/icon").
	- Always call GlobalUnlock16 after GlobalLock16.

	* dlls/user/static.c:
	static control: Background of enhanced metafiles.
	- Always paint the background of static controls displaying enhanced
	metafiles.
	- Also paint the background if there's no metafile to display.

	* dlls/user/static.c:
	static control: Support text style flags.
	- Support DT_END_ELLIPSIS, DT_PATH_ELLIPSIS and DT_WORD_ELLIPSIS.
	- Paint simple text without prefixes (SS_SIMPLE | SS_NOPREFIX) with
	the ExtTextOut function like the native control does.
	- Gray text color: Only for non-simple static controls.

2006-01-17  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/tests/msacm.c:
	msacm: Add parameter tests for ACM_METRIC_DRIVER_PRIORITY and
	ACM_METRIC_DRIVER_SUPPORT.
	Fix copy&paste mislabeling on acmDriverID test failure.

	* dlls/msacm/msacm32_main.c:
	msacm: Fix acmMetrics(ACM_METRIC_DRIVER_PRIORITY) return on error.

	* dlls/msacm/msacm32_main.c:
	msacm: Add support for ACM_METRIC_DRIVER_SUPPORT.

2006-01-17  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shell32_main.h, dlls/shell32/shfldr_unixfs.c:
	shell32: Support for CLSID_ShellFSFolder in unixfs.

2006-01-17  Vitaly Budovski <vbudovsk@cs.rmit.edu.au>

	* dlls/d3d8/device.c:
	d3d8: Render state additions.
	Implemented D3DRS_EDGEANTIALIAS.
	Implemented D3DRS_POINTSPRITEENABLE.
	Implemented D3DRS_MULTISAMPLEANTIALIAS.

2006-01-17  H. Verbeet <hverbeet@gmail.com>

	* include/wine/wined3d_interface.h:
	wined3d: Create a common WineD3D base class, IWineD3DBase.

2006-01-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/shlwapi/reg.c:
	shlwapi: Fixed use of wrong buffer in SHCopyKeyW.

2006-01-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Report a few more errors.
	Use Heap[Alloc|Free] instead of malloc|free.

2006-01-17  Robert Shearman <rob@codeweavers.com>

	* dlls/user/message.c, dlls/user/tests/msg.c,
	  include/wine/server_protocol.h, server/protocol.def, server/queue.c,
	  server/request.h, server/trace.c:
	user: Fix WM_QUIT message ordering from PostQuitMessage.
	Added a new server call as PostQuitMessage should set a flag in the
	message queue to return the WM_QUIT message when there are no other
	pending messages, rather than posting a message to the thread queue as
	it does at the moment.

2006-01-17  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/tests/.gitignore, dlls/ntdll/tests/Makefile.in,
	  dlls/ntdll/tests/change.c:
	ntdll: Add a test for NtNotifyChangeDirectoryFile.

	* server/fd.c:
	server: Make sure to release the fd we grabbed in all cases.

	* dlls/kernel/kernel32.spec, dlls/kernel/sync.c, include/winbase.h:
	kernel32: Create a stub implementation for PostQueuedCompletionStatus.

	* dlls/ntdll/reg.c:
	ntdll: Use FILE_OPEN instead of OPEN_EXISTING when calling NtCreateFile.

2006-01-16  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartest.c:
	oleaut32: Tests for the VarCmp reimplementation.

	* dlls/oleaut32/variant.c:
	oleaut32: Reimplement VarCmp().
	- Supports now all WinXP allowed combinations of input variants.
	- VT_RESERVED on input variants is handled now.
	- Removed complicated VT_DATE comparision; that's not how Windows does it.
	- Improved documentation.

	* dlls/oleaut32/varformat.c, dlls/oleaut32/variant.c,
	  dlls/oleaut32/variant.h:
	oleaut32: Define missing but useful VTBIT_* macros.

2006-01-16  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr_fs.c:
	shell: GetDetailsOf fix.
	Initialise hr and psd->str.uType before the call to
	IShellFolder_GetDisplayNameOf so that whatever it returns is
	preserved.

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c:
	shell: Convert the filesystem shell folder to Unicode.

	* dlls/shell32/cpanelfolder.c, dlls/shell32/shfldr.h,
	  dlls/shell32/shfldr_desktop.c, dlls/shell32/shfldr_fs.c,
	  dlls/shell32/shfldr_mycomp.c, dlls/shell32/shlfolder.c:
	shell: Convert SHELL32_GetDisplayNameOfChild to unicode.

2006-01-16  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c:
	msacm: Fix incorrect linked list traversing leading to memory/driver
	instance leak.

2006-01-16  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* programs/regsvr32/regsvr32.c:
	regsvr32 understands '-' and '/' for arguments.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/change.c, dlls/kernel/file16.c:
	kernel32: Move FileCDR16 in with the other 16bit file functions.

	* include/winbase.h:
	kernel32: Declare BindIoCompletionCallback().

2006-01-16  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Handle a non-byref variant being passed for a byref param in
	ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut: Only allocate memory once for each array needed for the
	arguments in ITypeInfo::Invoke.

	* dlls/oleaut32/typelib.c:
	oleaut: Simplify missing argument handling in ITypeInfo::Invoke.
	Simplify missing argument handling by pre-allocating an array of the
	maximum number of missing arguments there could be.

2006-01-16  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: Fix for get_nodeValue on attributes.

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement setAttribute.

2006-01-16  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Collect some data during profile enumeration.

2006-01-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/virtual.c:
	kernel: Documentation cleanups.

2006-01-16  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c:
	user: Avoid buffer overflow in sysparams.c.
	Increase buffer size to 12 for getting and setting integer parameters
	from/to the registry.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* programs/control/control.c, programs/eject/eject.c,
	  programs/expand/expand.c, programs/hh/main.c,
	  programs/msiexec/msiexec.c, programs/progman/dialog.c,
	  programs/progman/group.c, programs/progman/grpfile.c,
	  programs/progman/program.c, programs/progman/string.c,
	  programs/wcmd/builtins.c, programs/wcmd/directory.c,
	  programs/winecfg/appdefaults.c, programs/winecfg/libraries.c,
	  programs/winecfg/properties.c, programs/winepath/winepath.c:
	programs: Use WIN32_LEAN_AND_MEAN in some more places.

	* programs/wineboot/wineboot.c:
	wineboot: Use WIN32_LEAN_AND_MEAN.
	Use HeapAlloc/HeapFree instead of malloc/free.

	* include/winbase.h:
	kernel32: Define SCS_64BIT_BINARY.

	* dlls/ntdll/exception.c:
	ntdll: Use the NTAPI definition of EXCEPTION_ACCESS_VIOLATION.

	* dlls/ntdll/directory.c, dlls/ntdll/ntdll.spec:
	ntdll: Add a stub implementation of NtNotifyChangeDirectoryFile.

2006-01-16  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c, dlls/dsound/dsound_private.h:
	dsound: Make dumpCooperativeLevel global.
	Remove extern from some function prototypes.

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Make some capture functions global.

2006-01-16  Mike McCormack <mike@codeweavers.com>

	* tools/make_ctests.c:
	make_ctests: Declare WIN32_LEAN_AND_MEAN when compiling testlist.c.

	* include/winnt.h:
	kernel32: Add FILE_NOTIFY_INFORMATION.

	* dlls/msi/action.c:
	msi: Eliminate a fixed length buffer.

2006-01-16  Hans Leidekker <hans@it.vu.nl>

	* dlls/gdi/font.c:
	gdi: better implementation for GetCharABCWidthsFloat{A,W}.

2006-01-16  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/ddraw/ddraw_main.c, dlls/ddraw/ddraw_private.h:
	ddraw: Better simulate what 'GetVerticalBlankStatus' does on real hardware.

2006-01-16  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	unixfs: Fix SetNameOf.
	Ensure that pidls passed to SHNotify are absolute SetNameOf should
	fail on absolute path names.
	Some tests to show this.

2006-01-14  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut: Add const attribute to iterators in get functions.

	* dlls/oleaut32/typelib.c:
	oleaut: Initialise more fields in CreateDispTypeInfo.
	Don't leave some of the fields of the TLBFuncDesc structure
	uninitialised in CreateDispTypeInfo.

	* dlls/oleaut32/tmarshal.c:
	oleaut: Support VT_CY in the typelib marshaller.

	* dlls/ole32/rpc.c:
	ole: Optimisation for COM Calls.
	Add an optimisation to yield and try to allow the RPC to run before
	waiting for messages and RPCs to arrive.

2006-01-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.spec:
	msvcrt: Forward functions to ntdll instead of libc where possible.

	* dlls/msvcrt/math.c, dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/string.c:
	msvcrt: Added wrappers for a few functions instead of linking them
	directly to libc.

	* dlls/msvcrt/math.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Set errno in the standard math functions too, not only in the
	_CI* variants.

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Make snprintf and snwprintf use the msvcrt version of printf.
	Remove todos from tests that succeed now.

	* dlls/msvcrt/misc.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/tests/headers.c, dlls/msvcrt/thread.c:
	msvcrt: Reimplement rand() and srand() to use per-thread data for the
	random seed.

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec, dlls/msvcrt/string.c,
	  dlls/msvcrt/wcs.c:
	msvcrt: Make strtok and wcstok thread-safe by using the per-thread data.

	* configure, configure.ac, dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h,
	  dlls/msvcrt/msvcrt.spec, dlls/msvcrt/time.c, include/config.h.in:
	msvcrt: Implemented asctime, ctime and strftime instead of using the libc ones.
	Make the code thread-safe by using asctime_r if available.

2006-01-14  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	unixfs: Fix ParseDisplayName.
	Build an absolute pidl to query attributes in
	UnixFolder::ParseDisplayName.

2006-01-14  James Hawkins <truiken@gmail.com>

	* dlls/advpack/files.c:
	advpack: Remove stub status from implemented functions.

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	advpack: Add stubs for CloseINFEngine, OpenINFEngine, and
	TranslateInfStringEx.

	* dlls/advpack/advpack.spec, dlls/advpack/files.c, include/advpub.h:
	advpack: Add a stub for AddDelBackupEntry.

2006-01-14  Alexandre Julliard <julliard@winehq.org>

	* include/wine/port.h, loader/kthread.c:
	Get rid of the no longer needed DECL_GLOBAL_CONSTRUCTOR macro.

	* dlls/kernel/tests/file.c:
	kernel: Make sure the file contains data for the ReadFile test.

	* dlls/rpcrt4/ndr_stubless.c:
	rpcrt4: Fixed asm syntax for rep; movsl.

2006-01-14  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h:
	dsound: Rename some functions, make some functions global, and move
	some code around.

	* dlls/dsound/dsound_private.h, dlls/dsound/primary.c:
	dsound: Add DSOUND_PrimarySetFormat and use it to set primary format.

2006-01-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shell32_main.c:
	shell32: Fix cut & paste error.

2006-01-14  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add cabinet tests.

2006-01-14  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/element.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement getAttribute.

2006-01-14  Aric Stewart <aric@codeweavers.com>

	* programs/explorer/explorer.c:
	explorer: Handle /select arguments correctly with the new winefile
	modifications.

2006-01-14  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/oleobj.c:
	mshtml: Better handling of IDocHostUIHandler in SetClientSite.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/kernel/krnl386.exe.spec,
	  dlls/kernel/ne_module.c:
	kernel: Reimplemented the MapHInst functions in assembly.

	* dlls/kernel/kernel32.spec, dlls/kernel/selector.c:
	kernel: Reimplemented the SMap/SUnmap functions in assembly.

2006-01-13  David Moore <davidm@sjsoft.com>

	* dlls/gdi/freetype.c:
	gdi: Fix display of fonts using Symbol codepages and assorted other
	codepages.

2006-01-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/files.c:
	advpack: Move file related functions to files.c.

	* dlls/advpack/Makefile.in, dlls/advpack/advpack.spec,
	  dlls/advpack/files.c, include/advpub.h:
	advpack: Add stubs for the file save/restore functions.

	* dlls/advpack/advpack.c:
	advpack: Only output a FIXME if flags are set.

2006-01-13  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/profile.c, dlls/mscms/tests/profile.c:
	mscms: Fix some wine_todo for GetStandardColorSpaceProfile().

	* dlls/mscms/tests/profile.c:
	mscms: Make two checks more strict in the case of success.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, include/winternl.h,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Add debug registers to the context of all exceptions.
	Maintain a local cache of the debug registers to avoid server calls
	where possible.

2006-01-13  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/files.c:
	advpack: Add initial tests for AdvInstallFile.

	* dlls/advpack/advpack.c:
	advpack: Implement AdvInstallFile.

2006-01-13  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h:
	riched20: Select word on double click.

	* dlls/riched20/editor.c:
	riched20: TODO list update.

	* dlls/riched20/caret.c, dlls/riched20/paint.c:
	riched20: Fixed some selection painting bugs.

2006-01-13  Jeremy White <jwhite@codeweavers.com>

	* dlls/msi/package.c:
	msi: gcc 2.95 compatibility fix.

	* dlls/crypt32/tests/encode.c:
	crypt32: Preserve gcc 2.95 compatibility.

2006-01-13  Alex Villacís Lasso <a_villacis@palosanto.com>

	* include/msacm.h:
	msacm: Add definition for ACM_DRIVERADDF_NAME.

2006-01-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Handle NULL lpBuffersIn in HttpSendRequestExW.

2006-01-13  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Make enumerating more verbose.

2006-01-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Round PE header size to a page boundary for size checks.

2006-01-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/comm.c, dlls/ntdll/Makefile.in, dlls/ntdll/file.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/serial.c, include/Makefile.in,
	  include/ddk/ntddser.h:
	ntdll: Created infrastructure to support IOCTL for serial devices.
	- created infrastructure in ntdll to support IOCTL for serial devices
	- implemented IOCTLs in ntdll for serial break support
	- implemented the kernel32 equivalent on top of those IOCTLs

2006-01-12  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/nt.c, include/winternl.h:
	ntdll: NtQueryInformationToken change parameters according to PSDK.
	Check for NULL pointer.

2006-01-12  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/shlexec.c:
	shell32: Fix directory execution.
	Only use the Folder class handler if we're actually executing a
	folder.

2006-01-12  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Add documentation for ExecuteCab.

	* dlls/advpack/advpack.spec, dlls/advpack/reg.c, include/advpub.h:
	advpack: Add stubs for the remaining registry functions.

	* dlls/cabinet/Makefile.in, dlls/cabinet/cabextract.c,
	  dlls/cabinet/cabinet.h, dlls/cabinet/fdi.c:
	cabinet: Move the remaining cabextract.c functions to fdi.c.

2006-01-12  Stefan Brüns <stefan.bruens@rwth-aachen.de>

	* dlls/commdlg/filedlg.c, dlls/commdlg/filedlgbrowser.c:
	commdlg: Makes return value of FILEDLG95_SendFileOK dependent of
	return value, not of DWL_MSGRESULT.

2006-01-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Skip tests if NtCurrentTeb doesn't exist.

2006-01-12  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/debughlp.c:
	shell32: MSVC compatibility fix in dump_pidl_hex().

2006-01-12  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel32: Fix GlobalReAlloc for size = 0.
	GlobalReAlloc should return NULL if the requested size is 0, the block
	is moveable and it is locked, but otherwise it should return the
	original memory block.

2006-01-12  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/string.c:
	riched20: Initial support for word break callback procedures.

	* dlls/riched20/paint.c:
	riched20: Removed a useless check in painting code.

2006-01-12  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/font.c:
	gdi: If the last param of GetKerningPairs is NULL then return the
	number of pairs.

2006-01-12  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shlview.c:
	shell: Fix view window Z order.
	After creating the Shell View window we should call SetWindowPos to
	move the window on top of other child windows in the parent window.
	Also delay the showing of the window so that we can do more
	initialisation after window creation without it causing visual
	artifacts.

	* dlls/oleaut32/typelib.c:
	oleaut: Support conversion of VT_SAFEARRAY into VT_ARRAY|type.
	Typelib variant types that cannot be converted should return
	DISP_E_BADVARTYPE.
	Don't call DispCallFunc if conversion of one of the arguments failed.

	* dlls/ole32/rpc.c:
	ole: Fix crash in RpcChannelBuffer_SendReceive.
	Initialise apt to NULL since ipid_to_apt_stubbuffer no longer does
	this for us.

	* dlls/ole32/tests/marshal.c:
	ole: Use strict prototypes for some test functions.

2006-01-12  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Null ID can make GetStandardColorSpaceProfile*() succeed.

2006-01-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: UrlCanonicalize: fix URL_DONT_SIMPLIFY.
	- URL_DONT_SIMPLIFY should change '/' <-> '\'
	- Better '/' / '\' handling

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: Implement createNode, appendChild and insertAfter.

2006-01-11  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	winecfg: Simplify code a bit.
	Enable apply button when needed and don't enable when nothing
	changed.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/.gitignore, dlls/msi/Makefile.in, dlls/msi/dialog.c,
	  dlls/msi/msi.rc:
	msi: Make the MSI SelectionTree control do something useful.

2006-01-11  Alexandre Julliard <julliard@winehq.org>

	* server/mapping.c:
	server: Don't round up the header size for image mappings.

	* dlls/ntdll/virtual.c:
	ntdll: Round up the mapping size in map_file_into_view when setting
	the protection bytes.

2006-01-11  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/tests/main.c:
	crypt32: Fix a test that fails on Windows.

2006-01-11  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/internet.c, dlls/urlmon/urlmon_main.c:
	urlmon: Reimplement CoInternetCombineUrl to use pluggable protocol.

	* dlls/urlmon/umon.c:
	urlmon: Use CoInternetCombineUrl in URLMonikerImpl_Construct.

2006-01-11  Aric Stewart <aric@codeweavers.com>

	* dlls/msvcrt/tests/dir.c:
	msvcrt: Modify dir test to create its own directory to ensure the
	directory exists for the test. Using the temp dir as the root.

2006-01-11  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/list.c:
	riched20: Added \n to trace output.

2006-01-11  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/typelib.c:
	ole: ITypeInfo::Invoke stack overwrite fix.
	Have enough stack space up to even VT_VARIANTs, fixes a stack
	corruption.

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c:
	msxml: Fix for selectNodes when the node has no children.

2006-01-11  James Hawkins <truiken@gmail.com>

	* dlls/cabinet/cabextract.c:
	cabinet: Remove no longer used code from cabextract.c.

2006-01-11  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/context_i386.c,
	  server/protocol.def, server/thread.c, server/trace.c:
	ntdll: Handle NtSetContextThread on the client side (as far as
	possible) when setting the context of the current thread.

2006-01-11  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/classes.c, dlls/shell32/folders.c,
	  dlls/shell32/iconcache.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shell32_main.h:
	shell32: Fix folder icon index when read from registry.
	Change "DWORD dwNr" into "int icon_idx" at several places.

2006-01-11  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Ensure that copy_format() will not write past end of
	referenced WAVEFORMATPCMEX structure.

2006-01-11  Aric Stewart <aric@codeweavers.com>

	* programs/winefile/winefile.c:
	winefile: Highlight the file specified on the command line instead of
	filtering based on it. To be integrated with explorer to allow for
	that functionality.

2006-01-11  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/thread.c, dlls/ntdll/thread.c:
	ntdll: Implemented ntdll.NtSetInformationThread(ThreadAffinityMask).
	Reimplemented kernel32.SetThreadAffinityMask on top of it.

2006-01-11  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/files.c:
	advpack: Implement ExtractFiles.

	* dlls/cabinet/fdi.c:
	cabinet: Add documentation for FDITruncateCabinet.

2006-01-11  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c:
	dsound: Add primary buffer change tests.
	Add tests to figure out whether Windows can change the primary buffer
	capabilities after setting the buffer format. Based on a patch by Alex
	Villacís Lasso.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Remove the font when setting a control's text.

2006-01-11  Rob Shearman <rob@codeweavers.com>

	* dlls/comctl32/tests/progress.c:
	comctl32: Test the painting behaviour of the progress bar control.
	Test the painting behaviour of the progress bar control when the
	PBM_SETPOS message is sent to it, with respect to whether the
	background is erased and what part of the control is redrawn.

2006-01-11  Mike McCormack <mike@codeweavers.com>

	* dlls/comctl32/progress.c:
	comctl32: Invalidate the entire progress bar any time it changes.

2006-01-11  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Set the last error code to an unusual value.

2006-01-11  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/commdlg/printdlg.c:
	commdlg: If provided use and update hDevMode in the PAGESETUPDLG struct.
	Update the dmDefaultSourcea return value inside hDevMode.

2006-01-11  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c:
	opengl: Use indirect contexts if the surface is a pixmap.

2006-01-11  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Improve traces.
	Report the EnumResourceNamesW() and failure to find an icon
	separately so traces are less misleading.

2006-01-11  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/oleobj.c:
	ole: Implement IEnumSTATDATA for the Ole Advise Holder.
	Implement IEnumSTATDATA for the Ole Advise Holder and use it to
	implement the Send* functions.

	* dlls/ole32/marshal.c:
	ole: Initialise hrref so as not to display garbage in the trace.

	* dlls/ole32/defaulthandler.c:
	ole: Remove some duplicated code.

2006-01-10  Rein Klazes <wijn@wanadoo.nl>

	* dlls/hhctrl.ocx/hhctrl.c:
	hhctrl.ocx: Report commands in HtmlHelp that are not handled at all.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/editstr.h, dlls/riched20/paint.c, dlls/riched20/wrap.c:
	riched20: Reduced screen flicker by using proper update region invalidation.

2006-01-10  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/virtual.c:
	kernel: Remove no longer used debug channel.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h,
	  dlls/ole32/marshal.c:
	ole: Defer apartment window creation until the first object is marshalled.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Add an accessor function for an apartment's window.

	* dlls/ole32/rpc.c:
	ole: Report and clean up after PostMessage failures.

	* dlls/ole32/compobj_private.h, dlls/ole32/rpc.c,
	  dlls/ole32/stubmanager.c:
	ole: Pass a channel into IRpcStubBuffer::Invoke.
	Create a server channel and store this in the ifstub.
	Rename ipid_to_apt_and_stubbuffer to ipid_get_dispatch_params and make
	the function return an HRESULT.
	Return the channel for the ifstub in ipid_get_dispatch_params.

	* dlls/ole32/rpc.c:
	ole: Reduce the access rights required by start_local_service.

	* dlls/ole32/rpc.c:
	ole: Return the last error if we couldn't open the requested service.
	Fix the ok/failed message.

2006-01-10  James Hawkins <truiken@gmail.com>

	* dlls/advpack/tests/.gitignore, dlls/advpack/tests/Makefile.in,
	  dlls/advpack/tests/files.c:
	advpack: Add initial tests for ExtractFiles.
	- Use FCI to create a test cabinet file.
	- Add initial tests for ExtractFiles.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_misc.h, dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Remove the unused RPCRT4_GetPSFactory function.

	* dlls/rpcrt4/ndr_ole.c:
	rpcrt4: Don't release the interface pointer on failure.
	Don't release the interface pointer on failure since we are not the
	ones that allocated it. It is the caller's responsability to call
	NdrInterfacePointerFree, where the freeing is supposed to happen.

	* dlls/kernel/heap.c:
	kernel32: Return an error when unlocking a global with a zero lock count.
	Rename GLOBAL_LOCK_MAX to the public GMEM_LOCKCOUNT.

2006-01-10  Saulius Krasuckas <saulius.krasuckas@gmail.com>

	* dlls/mscms/tests/profile.c:
	mscms: Enumerate registered standard colorspace profiles.

2006-01-10  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	msxml: It's valid to release an empty document.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/header.c:
	comctl32: Fix emitting of NM_CUSTOMDRAW header notifications.
	Emit NM_CUSTOMDRAW header notifications for all headers, not only
	ownerdrawn. Allow to change item text and background colors in an
	application's NM_CUSTOMDRAW handler.

	* dlls/riched20/string.c:
	riched20: Allow NUL characters.

2006-01-10  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/atom.c, dlls/kernel/atom16.c, dlls/kernel/environ.c,
	  dlls/kernel/file16.c, dlls/kernel/module.c, dlls/kernel/oldconfig.c,
	  dlls/kernel/profile.c, dlls/kernel/task.c, dlls/kernel/toolhelp16.c:
	kernel: Remove wine/server.h include from files where it is no longer needed.

2006-01-10  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/exception.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	ntdll: NtRaiseException doesn't need to be a register function.
	Moved common code between NtRaiseException and RtlRaiseException to a
	separate raise_exception function.

	* dlls/kernel/except.c:
	kernel: Don't send a debugger event in UnhandledExceptionFilter,
	leave that to the standard ntdll exception handling.

	* dlls/kernel/kernel32.spec, dlls/kernel/thunk.c:
	kernel: Implement FT_Exit directly in assembly to avoid the overhead
	of register functions.

2006-01-10  James Hawkins <truiken@gmail.com>

	* configure, configure.ac, dlls/cabinet/Makefile.in,
	  dlls/cabinet/tests/.gitignore, dlls/cabinet/tests/Makefile.in,
	  dlls/cabinet/tests/extract.c:
	cabinet: Add initial tests for Extract.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Implement Extract on top of FDI.

2006-01-10  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winedos/int21.c:
	winedos: Open files with write access on read only media.
	If the CreateFile in INT21_CreateFile fails with ERROR_WRITE_PROTECT,
	retry without write access.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.h, dlls/riched20/para.c,
	  dlls/riched20/run.c:
	riched20: Speed up text insertion.
	Optimized reading large texts into RichEdit to be an O(n) order
	algorythm instead of O(n^2) by removing extraneous conversions of
	character offsets to run offsets.

2006-01-10  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/service.c:
	advapi32: If we can't connect to a service's pipe, name the service in
	the error message.

	* dlls/msi/select.c:
	msi: Count the number of columns requested and allocate that many,
	as columns may be select more than once in from a table.

	* dlls/msi/action.c:
	msi: Don't crash if there's no script present when we try execute one.

	* dlls/msi/msiquery.c, include/msiquery.h:
	msi: Fixed the prototype of MsiDatabaseIsTablePersistent.
	Implemented MsiDatabaseIsTablePersistentA via the W function.

2006-01-10  Troy Rollo <wine@troy.rollo.name>

	* dlls/user/menu.c, dlls/user/user16.c, include/wine/winuser16.h,
	  include/winuser.h:
	user: Fix return type of EnableMenuItem.

	* dlls/shell32/shfldr_unixfs.c:
	shell32: Fix bug in renaming files in the file dialogs when UNIX paths
	are being used.

	* include/psapi.h:
	Fix GetModuleFileNameEx definition.

2006-01-10  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	user: Improve the ownerdraw support of the static control.

	* dlls/user/cursoricon.c, dlls/user/tests/resource.c:
	user: The LoadImage resource string may be a numeric string.

2006-01-10  Kaj Kaloinen <kkaloine@gmail.com>

	* dlls/shlwapi/shlwapi.rc, dlls/shlwapi/shlwapi_Fi.rc:
	shlwapi: Add Finnish translation.

2006-01-10  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/status.c:
	comctl32: Call UpdateWindow() after changing statusbar text.

2006-01-09  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	advpack: Add documentation for ExtractFiles.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Clean up the documentation for Extract.

	* dlls/cabinet/cabinet.h:
	cabinet: Add the two flags used by Extract to cabinet.h.

	* dlls/cabinet/cabinet.h:
	cabinet: Define the flags member of the EXTRACTdest structure.

	* dlls/cabinet/cabinet_main.c:
	cabinet: Fix the second parameter name of Extract.

	* dlls/cabinet/fdi.c:
	cabinet: Store the cab file handle before extracting files so we can
	close the cab file even if no files are extracted.

2006-01-09  Saulius Krasuckas <saulius.krasuckas@gmail.org>

	* include/icm.h:
	include: Add missing color space constants.

2006-01-09  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/comctl32/rebar.c:
	comctl32: Fix rebar autosize behaviour.
	Allow autoresizing rebar by PostMessage(hwndRebar, WM_SIZE, 0, 0) like
	native does, taking as few rows as possible and using the parent
	window client area size for the other dimension (width for horizontal
	rebars or height for vertical ones).

	* dlls/user/combo.c:
	user: Fix dropdown combo creation when there is no space for an edit control.

2006-01-09  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/rpc.c:
	ole: Join the MTA if necessary when executing an RPC call.
	Join the MTA if necessary when executing an RPC call to ensure that it
	is executing with a valid apartment and won't fail for certain COM
	calls.

	* dlls/ole32/rpc.c:
	ole: Prefer services over servers.
	Attempt to start as a local service before attempting to start as a
	local server for the CLSCTX_LOCAL_SERVER case.

	* dlls/ole32/tests/compobj.c:
	ole: Add some tests for CLSIDFromString.

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole16.c:
	ole: Remove __CLSIDFromStringA.
	Move the ANSI implementation of CLSIDFromString to ole16.c and change
	CLSIDFromString to only deal with Unicode strings.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Improve ReadVariance.
	Extend ReadVariance to read the offset as well as the actual count,
	since these always come in pairs.
	Handle the variance not being present in ReadVariance and always call
	it from the unmarshalling functions to simplify the code there and
	also to fix a bug where the format pointer wasn't advanced properly
	for complex arrays (introduced in the previous patch when implementing
	variance).

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Validate complex array format string.
	Verify that the format string being passed into the complex array
	functions is a complex array one.

2006-01-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Fix ref counting.

	* dlls/urlmon/binding.c:
	urlmon: Pass FORMATETC to OnDataAvailable.

	* dlls/urlmon/binding.c:
	urlmon: Added implementation of protocol stream.

2006-01-09  Robert Shearman <rob@codeweavers.com>

	* dlls/crypt32/main.c, dlls/rsaenh/rsaenh.c:
	Call DisableThreadLibraryCalls for DLLs that don't need thread
	creation/destruction notifications.

2006-01-09  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/shell32/shell32_Ko.rc:
	shell32: Update the Korean translation.

2006-01-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/shell32/shell32_No.rc:
	shell32: Updated Norwegian Bokmål resources.

2006-01-09  Hans Leidekker <hans@it.vu.nl>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec:
	usp10: Improve stubs.
	Improve stubs for ScriptGetProperties and ScriptItemize.
	Add stub for ScriptFreeCache.

2006-01-09  Mike McCormack <mike@codeweavers.com>

	* dlls/kernel/heap.c, dlls/kernel/tests/heap.c:
	kernel: Trying to lock an empty global memory block gives an ERROR_DISCARDED.

	* dlls/user/combo.c:
	user32: Update the list of things to fix in the Combo control.

2006-01-09  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Prevent a crash in GetMenuStringA caused by calling strlenW on
	a NULL pointer, with a test.

2006-01-09  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c:
	riched20: Fixed calculation of left indent and first indent paragraph
	properties.

	* dlls/riched20/string.c:
	riched20: Simplified logic in ME_StrRelPos().

2006-01-06  Aric Stewart <aric@codeweavers.com>

	* dlls/msvcrt/tests/.gitignore, dlls/msvcrt/tests/Makefile.in,
	  dlls/msvcrt/tests/dir.c:
	msvcrt: Add a regression test for _fullpath.

	* dlls/msvcrt/dir.c:
	msvcrt: Reworked _fullpath.
	Investigation with native msvcrt revealed that it is a wrapper for
	GetFullPathName and the current implementation was crashing with older
	mozilla installs if the path passed in was uninitialized.

2006-01-06  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/stg_bigblockfile.c:
	ole: Remove a no longer needed smbfs hack.

2006-01-06  Raimonds Praude <raimonds.praude@sets.lv>

	* dlls/user/combo.c:
	user32: Limit text in the edit field of a combo box.

2006-01-06  Marcus Meissner <marcus@jet.franken.de>

	* dlls/gdi/metafile.c:
	gdi: Filter GETSCALINGFACTOR and SETABORTDOC proc in metafile
	Escapes.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	ole: Remove the no longer used _copy_arg function.

	* dlls/oleaut32/typelib.c:
	ole: ITypeInfo::Invoke rewrite.
	Re-implement ITypeInfo::Invoke on top of DispCallFunc and
	VariantChangeType instead of _invoke and _copy_arg.

	* dlls/ole32/antimoniker.c, dlls/ole32/compositemoniker.c,
	  dlls/ole32/ole2.c, dlls/ole32/storage32.c:
	ole: Remove "stub" from TRACEs of functions that aren't stubs.

2006-01-06  Hans Leidekker <hans@it.vu.nl>

	* dlls/mscms/profile.c:
	mscms: Silence a potentially noisy fixme.

	* dlls/kernel/time.c:
	kernel: Documentation cleanups.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Compute variance for complex arrays

	* dlls/rpcrt4/cstub.c:
	rpcrt4: Call NdrStubCall2 when dealing with a pure interpreted stub
	that has no dispatch table.

2006-01-06  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/static.c:
	Static control: Support enhanced metafiles.

2006-01-06  Hans Leidekker <hans@it.vu.nl>

	* LICENSE, include/wine/wine_common_ver.rc:
	Update copyright info for the new year.

	* documentation/PACKAGING:
	documentation: Suggest installing OpenLDAP development libraries to packagers.

2006-01-06  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate static sizing information for fixed size structs.
	Don't generate FC_*_BASETYPE proc and type format strings for
	non-basetype fields/params.

2006-01-06  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c:
	comctl32: Reduce memory usage of the syslink control.

	* dlls/comctl32/syslink.c:
	comctl32: Some painting fixes for the syslink control.

2006-01-06  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/urlmon/umstream.c:
	urlmon: Fix a LARGE_INTEGER truncation.

2006-01-06  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/mixer.c,
	  dlls/dsound/primary.c, dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Refactor playback.
	Replace references of IDirectSoundImpl with DirectSoundDevice to
	remove one level of indirection and remove the problem of a three
	object circular reference.

2006-01-06  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Unload riched20 after its window is destroyed.

	* dlls/msi/dialog.c:
	msi: Make radio buttons grey out correctly when disabled.

	* dlls/msi/helpers.c:
	msi: Clean trailing and leading spaces from path segments.

2006-01-06  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* tools/winapi/msvcmaker:
	winapi: msvcmaker adaption to new directory structure.
	Fix some issues with MSVC project file generation after recent
	directory restructuring.

	* tools/winapi/config.pm:
	winapi: Add the loader directory to the paths to exclude.
	There is nothing in there anymore that would need to be done for
	winapi tools.

	* tools/winapi/winapi_extract, tools/winapi/winapi_fixup:
	winapi: Cleanup some unused use clauses.

2006-01-06  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/commdlg/cdlg_Ko.rc:
	commdlg: Updated Korean translation.

	* programs/winecfg/Ko.rc:
	winecfg: Updated Korean translation.

2006-01-06  Mike McCormack <mike@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Output a FIXME message only once.

2006-01-06  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/ds3d.c, dlls/dsound/tests/ds3d8.c,
	  dlls/dsound/tests/dsound.c, dlls/dsound/tests/dsound8.c,
	  dlls/dsound/tests/dsound_test.h:
	dsound: Fix double free bug in tests.
	Fix double free in tests.  Only happens in interactive mode when
	testing duplicated 3D buffers.

2006-01-06  Anssi Hannula <anssi.hannula@gmail.com>

	* dlls/shell32/shell32_Fi.rc:
	shell32: Spelling fixes for the Finnish resource.

2006-01-06  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/ole32/storage32.c:
	ole: Fix SmallBlocksToBigBlocks loop.
	Stop copying data when read returns 0 bytes

2006-01-05  Robert Shearman <rob@codeweavers.com>

	* configure, configure.ac, dlls/Makefile.in, dlls/security/.gitignore,
	  dlls/security/Makefile.in, dlls/security/security.spec:
	Added implementation of security.dll.

2006-01-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/utility.c:
	wininet: lpvStatusInfo in INTERNET_STATUS_NAME_RESOLVED,
	INTERNET_STATUS_CONNECTING_TO_SERVER and
	INTERNET_STATUS_CONNECTED_TO_SERVER should be strings, not
	sockaddr_in.

2006-01-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added assembly routines to save/restore registers for setjmp/longjmp
	to avoid the overhead of a full-blown register function.
	Some tracing improvements.

	* dlls/msvcrt/cppexcept.c, dlls/msvcrt/msvcrt.spec:
	msvcrt: Added some assembly glue for the asm bits of __CxxFrameHandler
	to avoid having to save/restore the whole context on every call.

2006-01-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c:
	urlmon: Added implementation of QueryService and stub implementation
	of IHttpNegotiate2 interface.

	* dlls/urlmon/binding.c:
	urlmon: Query service provider for IInternetProtocol.

2006-01-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winspool/winspool.drv.spec:
	winspool: Added ordinal exported functions of winspool.drv.

2006-01-05  Dan Kegel <dank@kegel.com>

	* dlls/oleaut32/typelib.c:
	oleaut32: Allow _invoke to handle up to 23 parameters.

2006-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, dlls/dbghelp/stack.c,
	  dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: StackWalk (32 and 64 bit version).
	- enhance implementation of StackWalk (32 and 64 bit version) by
	making use of module information and calling for FPO
	- FPO part is still non functional
	- implemented SymGetModuleBase64
	- stubbed SymFunctionTableAccess64

2006-01-05  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Capture refactoring.
	Move initialization code from DirectSoundCapture to
	DirectSoundCaptureDevice.
	Make DirectSoundCaptureBuffer directly reference
	DirectSoundCaptureDevice rather than DirectSoundCapture to eliminate
	one level of indirection.
	Rename DSOUND_CreateDirectSoundCaptureBuffer to
	IDirectSoundCaptureBufferImpl_Create to be consistent.

2006-01-05  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/ppl.l, programs/winedbg/debug.l, programs/winhelp/macro.lex.l,
	  tools/widl/parser.l, tools/wrc/parser.l:
	Remove YY_NO defines that cause warnings.

2006-01-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/symbol.c:
	dbghelp: Removed no longer needed 'stub' in TRACEs.

2006-01-05  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cproxy.c, dlls/rpcrt4/ndr_misc.h,
	  dlls/rpcrt4/ndr_stubless.c, dlls/rpcrt4/rpcrt4.spec:
	rpcrt4: Implement NdrClientCall2 and NdrServerCall2.

	* dlls/oleaut32/typelib.c:
	ole: Store the result from _invoke in a VARIANTARG structure.

	* programs/regedit/childwnd.c:
	regedit: Initialise nFocusPanel.

	* dlls/kernel/oldconfig.c:
	kernel32: Check for the correct error return value from open.

2006-01-05  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/url.c:
	urlmon: Code clean up.

	* dlls/urlmon/binding.c:
	urlmon: Added GetBindInfoString implementation.

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.5.

----------------------------------------------------------------
2006-01-04  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/stream.c:
	msacm: Initialize some ACMSTREAMHEADER fields for the sake of native codecs.
	Initialize cb[Src|Dst]LengthUsed to 0 before calling into codec,
	required by (some?) native codecs.

2006-01-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	wine.inf: Add a few keys to HKLM\Hardware.

2006-01-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: Map wildcards for socket type and protocol in getaddrinfo().

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Set refcount to -1 on implicitly loaded dlls to avoid unloading them
	(suggested by Michael Ost).

2006-01-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/shlwapi/shlwapi.spec:
	shlwapi: Print PathCombine* strings arguments in relay debugging.

2006-01-04  Alexandre Julliard <julliard@winehq.org>

	* include/wine/pthread.h:
	Avoid DECLSPEC_NORETURN on function pointers for MSVC compatibility.

2006-01-04  Mike McCormack <mike@codeweavers.com>

	* programs/msiexec/msiexec.c:
	msiexec: Ignore the TRANSFORMS variable.
	Ignore the TRANSFORMS variable when building a list of transforms for
	advertising.  The variable is used to apply transforms when installing.

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c:
	msi: Apply any MSI transforms specified by the TRANSFORMS property.

	* dlls/msi/msi.spec, dlls/msi/msiquery.c:
	msi: Add a stub for MsiGetLastErrorRecord.

	* dlls/msi/dialog.c:
	msi: Fixes for the MaskedEdit control.
	Allow MaskedEdit masks that aren't enclosed with <>.
	Allow the MaskedEdit's edit controls to scroll a bit in case things
	don't line up.

2006-01-04  Robert Reif <reif@earthlink.net>

	* dlls/dsound/capture.c, dlls/dsound/dsound_private.h:
	dsound: Capture cleanup.
	Move code and function prototypes around to eliminate forward
	declarations.  No code is changed.

2006-01-04  Hans Leidekker <hans@it.vu.nl>

	* tools/winapi/winapi_global.pm:
	winapi: Remove some exceptions now that DLL separation is complete.

	* DEVELOPERS-HINTS:
	Subdirectory tools/winapi_check no longer exists.

2006-01-04  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/shell32/shell32_Bg.rc, dlls/shell32/shell32_De.rc,
	  dlls/shell32/shell32_En.rc, dlls/shell32/shell32_Es.rc,
	  dlls/shell32/shell32_Fi.rc, dlls/shell32/shell32_Fr.rc,
	  dlls/shell32/shell32_No.rc, dlls/shell32/shell32_Pt.rc,
	  dlls/shell32/shellpath.c:
	shell32: Create Local AppData for user profile.
	Move history and internet tmp files to Local Settings.

	* dlls/shell32/shell32_Ru.rc:
	shell32: Update Russian resources.

2006-01-04  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c:
	user32: Menu tracing improvements.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	ntdll: Check file size when mapping image sections to avoid SIGBUS errors.

2006-01-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msi/custom.c:
	msi: Report the commandline that failed to start in ERR()s.

2006-01-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/atom.c, dlls/kernel/tests/atom.c:
	kernel32: Implemented atoms query function on top of ntdll ones.

	* dlls/ntdll/atom.c, dlls/ntdll/tests/atom.c,
	  include/wine/server_protocol.h, server/atom.c, server/protocol.def,
	  server/trace.c:
	ntdll: Correct implementation for atom query functions.

2006-01-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advpack/advpack.c:
	advpack: Make DoInfInstall return an HRESULT.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/dsound/buffer.c, dlls/dsound/capture.c, dlls/dsound/dsound.c,
	  dlls/dsound/dsound_private.h, dlls/dsound/primary.c,
	  dlls/dsound/propset.c, dlls/dsound/sound3d.c:
	dsound: Remove WINAPI from internal functions.

2006-01-03  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advpack/advpack.c:
	advpack: Fix LaunchInfSection[Ex] documentation.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/wpp.c, tools/widl/widl.c, tools/wrc/wrc.c:
	Support building flex files without debug support.

2006-01-03  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* include/wine/pthread.h, include/winternl.h:
	include: Fix DECLSPEC_NORETURN for compilation with MS C compiler.

2006-01-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	shell32/unixfs: Added unicode support in folder and file pidls.

	* dlls/shell32/pidl.c, dlls/shell32/pidl.h:
	shell32: Helper function for unicode support in folder and file pidls.

2006-01-03  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	user32: Separate menu bitmaps and strings.
	Store bitmaps and bitmaps always in separate fields in the internal
	menu structure.  Get rid of a lot of assumptions in the code that the
	menu can have strings only when it is not some other type and that
	bitmaps come in two flavors.
	Add a lot of conformance tests, including some submitted by Jason
	Edmeades.

2006-01-03  Steven Edwards <winehacker@gmail.com>

	* dlls/gdi/Makefile.in, dlls/gdi/gdi_private.h, dlls/gdi/metafile.c,
	  dlls/gdi/metafile16.c, dlls/gdi/mfdrv/init.c:
	gdi: Win16/32 split of most of the metafile support.

	* dlls/gdi/gdi_private.h, include/wingdi.h:
	gdi: Move EMRSETTEXTJUSTIFICATION structure to the private gdi header.

2006-01-03  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/msacm32_main.c:
	msacm32: Implement ACM_METRIC_DRIVER_PRIORITY in acmMetrics.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/kernel/module.c:
	kernel: DelayLoadFailureHook crash fix.

2006-01-03  Alexandre Julliard <julliard@winehq.org>

	* libs/wpp/Makefile.in, libs/wpp/ppl.l, programs/winedbg/debug.l,
	  programs/winhelp/macro.lex.l, tools/widl/Makefile.in,
	  tools/widl/parser.l, tools/wrc/Makefile.in, tools/wrc/parser.l:
	Added some flex options to avoid compiler warnings.
	Moved options from the Makefile into the source.

2006-01-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	msi: Subclass the Richedit control.
	Send a "DoAction" control event when the user scrolls the text.

	* dlls/msi/install.c:
	MSI: Improve the MsiGetMode stub a little.

	* dlls/msi/dialog.c, dlls/msi/events.c, dlls/msi/msipriv.h:
	msi: Implement the Reset control event.

	* dlls/oleaut32/typelib.c:
	oleaut32: Allow _invoke to handle up to 17 parameters.

2006-01-03  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound.c:
	dsound Add uninitialized check.

2006-01-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/listview.c:
	comctl32: Listview - allow selection toggle with ctrl+space.

2006-01-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: AF_UNSPEC mapping.
	Also map AF_UNSPEC sockaddrs in the sockaddr handlers.
	Zero initialize the sockaddr in ws_sockaddr_alloc().

2006-01-03  Francois Gouget <fgouget@free.fr>

	* dlls/ddraw/tests/dsurface.c, dlls/user/edit.c:
	Assorted spelling fixes

	* dlls/shell32/tests/shlfileop.c, dlls/wined3d/stateblock.c:
	Add trailing '\n's to ok() calls.
	Remove spaces before '\n' in traces.

	* tools/winapi/win32.api:
	winapi: Update win32.api to match the current sources.

	* dlls/msi/msi.c, dlls/wldap32/page.c:
	Small documentation tweaks to avoid winapi_check warnings.

2006-01-03  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	winemenubuilder: Improve traces.
	Add some traces to make it easier to debug icon generation problems.

2006-01-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/bitmap.c:
	gdi: Add a test which shows that GDI does not support compressed DIB sections.

2006-01-03  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/gdi/dib.c:
	gdi32: Disallow creation of compressed DIB sections.

2006-01-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/hglobalstream.c:
	ole: Check the return value of IStream_SetSize in IStream_Read.
	Check the return value of IStream_SetSize in IStream_Read, since
	otherwise execution could continue on and cause heap corruption.

	* dlls/ole32/stg_stream.c:
	ole: Fix mis-handling of return value in StgStreamImpl_Read.
	BlockChainStream_ReadAt returns a BOOL, not an HRESULT so change
	StgStreamImpl_Read to handle this, by returning STG_E_READFAULT on
	failure.

	* dlls/rpcrt4/ndr_marshall.c:
	rpcrt4: Implement callback conformance.

	* dlls/rpcrt4/rpc_server.c:
	rpcrt4: Fix race condition in RpcServerListen.
	The DontWait parameter is used for forcing the function not to wait
	for the server to finish.

2006-01-03  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/comctl32undoc.c:
	comctrl32: ReAlloc should be able to move memory blocks if necessary.

2006-01-03  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/tests/main.c:
	secur32: Rewrote NTLM tests in a more flexible way.

2006-01-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/snapshot.c:
	server: Fix va_list compile error.

	* dlls/gdi/driver.c, dlls/user/tests/monitor.c:
	gdi: Device name returned from EnumDisplayDevices is valid for CreateDC.

	* dlls/advapi32/service.c:
	advapi32: Don't allocate memory for empty argument string and pass
	NULL instead.

2005-12-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/control.c, dlls/wldap32/misc.c,
	  dlls/wldap32/page.c, dlls/wldap32/parse.c, dlls/wldap32/search.c,
	  dlls/wldap32/winldap_private.h:
	wldap32: Implement some page handling functions.
	Implement ldap_create_page_control{A,W} and
	ldap_parse_page_control{A,W}.
	Move the page handling functions into their own file.

	* dlls/wldap32/extended.c:
	wldap32: Document the functions that handle extended operations.

	* dlls/wldap32/init.c:
	wldap32: Document the init functions.
	Fix two bugs.

2005-12-31  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/x11drvdlg.c:
	winecfg: Default for DXGrab is NO.

2005-12-31  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Fix a mess with the Bulgarian resource file and translate the
	untranslated strings.

2005-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/tests/protocol.c:
	urlmon: Added http protocol tests (currently failing in Wine).

2005-12-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/tests/exception.c:
	ntdll/tests: Try to fail more gracefully on win9x.
	Link to NtCurrentTeb dynamically.

2005-12-31  Dan Kegel <dank@kegel.com>

	* dlls/commdlg/colordlg.c:
	commdlg: Let the color picker respond properly to keystrokes.

2005-12-31  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/urlcache.c:
	wininet: Handle the cache being full better in CommitUrlCacheEntryInternal.
	Move the freeing of allocation blocks for an entry into
	URLCache_DeleteEntry.
	Call URLCache_DeleteEntry to rollback from failure in
	CommitUrlCacheEntryInternal.

	* dlls/wininet/urlcache.c:
	wininet: Create new hash tables for URL cache on demand.

	* dlls/wininet/urlcache.c:
	wininet: Move URL cache hash table creation to a separate function.

2005-12-31  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/umon.c:
	urlmon: Removed not used code.

2005-12-31  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Output sizing information for arrays in the generated marshaling code.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/proxy.c:
	widl: Export the bracket adding functionality of do_write_expr outside
	of header.c.

2005-12-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	msi: Change some FIXME messages to comments.

	* dlls/msi/package.c:
	msi: Define the property "Intel" if we're running on an Intel processor.

	* dlls/msi/action.c:
	msi: Add stub actions for CCPSearch and RMCCPSearch.

	* dlls/riched20/reader.c:
	riched20: Add newlines to ERR macro output.

2005-12-31  Robert Reif <reif@earthlink.net>

	* dlls/comctl32/ipaddress.c:
	comctl32: Create ipaddress in enabled state.

2005-12-31  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, dlls/wined3d/surface.c:
	wined3d: Added support for WINED3DFMT_X4R4G4B4.

2005-12-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/value.c:
	wldap32: Document the value handling functions.

	* dlls/wldap32/wldap32.h:
	wldap32: Copy embedded berval structures too.

2005-12-31  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-31  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/propsheet.c:
	comctl32: Fix error handling in PSM_ADDPAGE in case of memory
	allocation failure.

2005-12-26  Yuval Fledel <yuvalfl@gmail.com>

	* programs/winetest/Makefile.in:
	winetest: Only include d3d9 if it is being built.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/sec_mgr.c, dlls/urlmon/tests/misc.c:
	urlmon: Added GetSecurityId implementation.

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c, dlls/urlmon/umon.c:
	urlmon: Use pluggable protocol for file protocol.

2005-12-26  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Fix merge conflict.

	* tools/widl/typegen.c:
	widl: Follow type references in procformat and typeformat string generation.

	* tools/widl/typegen.c:
	widl: Handle marshaling and unmarshaling structures.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c:
	widl: Out parameters.
	Marshall and unmarshall out parameters for servers and clients
	respectively.
	Write out array components for declared local variables in generated
	server code.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Remove some duplication.
	Remove some duplicated code by calling an improved
	get_required_buffer_size.
	Add some more newlines in the generated code to separate separate
	stages.
	Calculate the buffer size of [out] arguments in generated server code.
	Fix the direction passed into unmarshall_arguments.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Pass a state into marshall_arguments and unmarshall_arguments to
	decide which parameters should be considered based on their direction.

	* tools/widl/typegen.c:
	widl: Generate marshaling and unmarshaling statements for arrays.

	* tools/widl/typegen.c:
	widl: Treat variables with array indices the same as pointers.

	* tools/widl/typegen.c:
	widl: Advance the type format string whilst marshaling and
	unmarshaling arguments.

	* tools/widl/typegen.c:
	widl: Convert the main while loops in marshall_arguments and
	unmarshall_arguments into for loops.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Add support for marshalling and unmarshalling conformant strings.

	* tools/widl/header.c, tools/widl/header.h, tools/widl/parser.y,
	  tools/widl/proxy.c, tools/widl/write_msft.c:
	widl: Add some const attributes.

	* tools/widl/typegen.c:
	widl: Prepare marshall and unmarshall code generation functions for
	accepting pointers.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Fix SEGVs with client and server code generation when an
	interface has no methods.

	* tools/widl/typegen.c:
	widl: Generate correct proc format strings for [out] and [in, out] parameters.

	* tools/widl/parser.y:
	widl: Use the same precendence rule for the conditional operator as in wpp.
	Fixes several shift/reduce warnings.

	* tools/widl/typegen.c:
	widl: Better array support.
	Treat variables with array indices the same as pointers when writing
	out the proc & type format strings.
	Fix a typo when writing out the proc format string where a non-return
	type was written out for a return type and vice-versa.

	* tools/widl/typegen.c:
	widl: Support non-basic variables in proc format strings.

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Add helper functions that return the size of procformat and
	typeformat strings for variables.

	* dlls/oleaut32/typelib.c:
	oleaut: Small re-organisation of ITypeInfo::Invoke.
	Only output the one function in the trace for ITypeInfo::Invoke.
	Process the return value on output in ITypeInfo::Invoke, but only copy
	it to pVarResult if pVarResult is not NULL.

	* dlls/oleaut32/typelib.c:
	oleaut32: Convert some tabs to spaces and some other formatting changes.

	* dlls/oleaut32/typelib.c:
	oleaut32: Initialize member IDs to MEMBERID_NIL inITypeInfo::GetIDsOfNames.
	Better tracing.

	* dlls/oleaut32/typelib.c:
	ole: Improve typelib traces.
	Move the debug channel check from dump_TLBFuncDesc[One] to its callers
	for more flexibility in which channel controls the output.

2005-12-26  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	msvcrt: More printf tests for I64 integer size support.

	* dlls/msvcrt/wcs.c:
	msvcrt: pf_integer_conv for I64.
	- Add pf_integer_conv and pf_is_integer_format.
	- Update pf_fill to handle printing the sign for signed integers.
	- Handle I64 integer sizes using pf_integer_conv and pf_output_format_A.

	* dlls/msvcrt/wcs.c:
	msvcrt: Do not treat %ll as an IntegerDouble in printf.

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Parse I, I32, and I64 integer size flags in printf.

2005-12-26  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec:
	urlmon: Implement BindAsyncMoniker function.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: URL with two slashes is valid.

2005-12-26  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmål resources.

2005-12-26  Jacek Caban <jacek@codeweavers.com>

	* dlls/shlwapi/tests/path.c, dlls/shlwapi/url.c:
	shlwapi: Fix UrlCanonicalize.
	- Added support for URL_FILE_USE_PATHURL.
	- Fix handling of '/' and '\'.

2005-12-26  Rolf Kalbermatter <rolf.kalbermatter@citeng.com>

	* dlls/msrle32/msrle32.c:
	msrle32: Spelling fix.

2005-12-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Internal search routines can now be case sensitive/insensitive.
	- Now handling option SYMOPT_CASE_INSENSITIVE for symbol search.
	- Quick implementation of SymSearch on top of SymEnumSymbols (should
	be the other way around).

2005-12-26  Maxime Bellengé <maxime.bellenge@wanadoo.fr>

	* dlls/msvcrt/main.c:
	msvcrt: Prevent a crash if TlsGetValue returns NULL in DLL_THREAD_DETACH.

2005-12-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/tests/propvariant.c:
	Fix detection of V1a prop variant library in test suite.

2005-12-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/keyboard.c:
	x11drv: Update Canadian keyboard layout to better match the X11 one

2005-12-26  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Clean up the SHFileOperation tests.
	- Make sure to create all the files used by the new tests.
	- Add a couple more SHFileOperation tests.
	- Fix some of the old tests.

2005-12-26  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Use hourglass cursor when opening audio drivers.
	Misbehaving drivers can take a while to open so change to the hour
	glass cursor when opening them.

2005-12-26  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	atl: Implement AtlComPtrAssign.
	According to MSDN AtlModuleInit should initialize the modules critical
	sections.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.4.

----------------------------------------------------------------
2005-12-22  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32: Added some test to document native ITEMIDLIST format.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c:
	user/tests: Remove todo_wine from a few tests that (usually) succeed.

2005-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mciavi32/mciavi.c, dlls/mciavi32/private_mciavi.h:
	mciavi32: Rewrite asynchronous MCI_PLAY command handling.
	Rewrite asynchronous MCI_PLAY command handling in MCIAVI driver, make
	it more responsive to commands in the MCI_MODE_PLAY state by checking
	hStopEvent even if the time frame between frames has expired.

2005-12-22  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/ole32/stg_stream.c, dlls/ole32/storage32.c, dlls/ole32/storage32.h,
	  include/winerror.h:
	ole32: Return error instead of asserting if storage file is corrupt.

2005-12-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	user32/tests: Add a PeekMessage test.

2005-12-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/console.c:
	kernel/tests: Check that we successfully open the console.

2005-12-22  Alexandre Julliard <julliard@winehq.org>

	* server/console.c:
	server: Fixed console access rights handling.

2005-12-22  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c, dlls/opengl32/wgl_ext.h:
	opengl: Fix last wgl regression.
	Fix wgl regression: test glx server version and extensions to use (and
	not use glXQueryDrawable on older glx implementations).

2005-12-22  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_MOVE command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_COPY command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_RENAME command.

	* dlls/shell32/tests/shlfileop.c:
	shell32: Add tests for SHFileOperation's FO_DELETE command.

2005-12-22  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/x11drvdlg.c:
	winecfg: Add unmanaged windows configuration.

2005-12-22  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/module.c:
	dbghelp: Correct handling for all module names.

2005-12-21  Bill Medland <billmedland@mercuryspeed.com>

	* dlls/msi/format.c, dlls/msi/tests/format.c:
	msi: Prevent array underflow in MsiFormat when measuring with zero-length buffer.

2005-12-21  James Hawkins <truiken@gmail.com>

	* dlls/shell32/tests/shlfileop.c:
	shell32: Remove the '.\\' prefix from filenames, because it hides a
	bug in SHFileOperation.

2005-12-21  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ddraw/surface_main.c, dlls/ddraw/tests/dsurface.c:
	ddraw: Fix DirectDrawSurface::QueryInterface crash.

2005-12-21  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/winspool.rc, include/wine/wine_common_ver.rc:
	winspool: Add version resource.

2005-12-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/time.c:
	msvcrt: Return a per-thread buffer in localtime and gmtime.

2005-12-21  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/shader.c:
	d3d9: Add traces for when shader support is missing in the shader test.

2005-12-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/kernel/process.c:
	kernel: Some documentation improvements.

2005-12-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/main.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/msvcrt.spec,
	  dlls/msvcrt/time.c:
	msvcrt: Implemented wctime(), wasctime().
	Free thread data in DLL_THREAD_DETACH.

2005-12-21  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Select an audio driver on fresh install.

2005-12-21  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Test only one invalid GetStandardColorSpaceProfile() param in a
	single check.

2005-12-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/mciwnd.c:
	msvideo: Handle ESC key press in the MCIWND class as an alias to stop command.

2005-12-21  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Fix printf sign flags.
	Fix the printf sign flags so that '+' doesn't always override ' '
	space alone.  If they both appear, continue parsing and let '+' take
	precedence.

2005-12-21  Alexandre Julliard <julliard@winehq.org>

	* server/context_alpha.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c:
	server: Set the context flags in get_thread_context to indicate which
	parts of the returned context are valid.

2005-12-21  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/wldap32/misc.c, dlls/wldap32/parse.c,
	  include/config.h.in:
	wldap32: Added configure checks for some potentially missing functions.

2005-12-20  Bill Medland <billmedland@mercuryspeed.com>

	* dlls/msi/dialog.c:
	msi: Use a default dialog font if nothing is specified.

2005-12-20  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests: Fixed a test failing on WinXP.

2005-12-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/wdbgexts.h:
	dbghelp: Added a few extensions to make windbg happy.

2005-12-20  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Ignore PadZero when LeftAlign is true in printf conversions.

2005-12-20  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/msacm/driver.c, dlls/msacm/tests/msacm.c:
	msacm: Preserve value of cbStruct in acmDriverDetails.
	Ensure that the cbStruct member of the ACMDRIVERDETAILS[AW] struct is
	filled with a valid value before returning.
	Fill the cbStruct member of the ACMDRIVERDETAILS[AW] before sending a
	ACMDM_DRIVER_DETAILS message to an installed codec that might be a
	native library: native ACM codecs expect cbStruct to be valid before
	filling the rest of the struct with any data.

2005-12-20  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/exception.c:
	ntdll: Made DBG_EXCEPTION_HANDLED a synonym of DBG_CONTINUE for exception handlers.

2005-12-20  Paul Vriens <paul.vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Dutch resources update.

2005-12-20  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c, include/wine/wined3d_interface.h:
	wined3d: Cleanup shader constants code a little bit.
	Improved bounds checking.

2005-12-19  Jesse Allen <the3dfxdude@gmail.com>

	* dlls/msvcrt/tests/printf.c, dlls/msvcrt/wcs.c:
	msvcrt: Require exact uppercase and lowercase format in printf routines.

2005-12-19  Bill Medland <billmedland@mercuryspeed.com>

	* programs/winemenubuilder/winemenubuilder.c, tools/wineshelllink:
	winemenubuilder: Provide depth to the menus created.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c:
	kernel32: Check for tabs too when extracting the program name
	(reported by Vitaliy Margolen).

2005-12-19  Hans Leidekker <hans@it.vu.nl>

	* tools/widl/client.c, tools/widl/proxy.c, tools/widl/server.c,
	  tools/widl/typegen.c:
	widl: Avoid lvalue casts in generated code.

2005-12-19  Kai Blin <kai.blin@gmail.com>

	* dlls/secur32/ntlm.c:
	secur32: Adding AcceptSecurityContext to the NTLM security provider.

2005-12-19  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	winspool: Filter additional failures.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winhelp/winhelp.c:
	winhelp: Handle '> ' on command lines.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/dwarf.c,
	  dlls/dbghelp/msc.c, dlls/dbghelp/stabs.c, dlls/dbghelp/type.c:
	dbghelp: First stab at supporting calling convention in function signature.

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/symbol.c:
	dbghelp: Return proper size for local & parameters in SYMBOL_INFO.

2005-12-19  Jonathan Ernst <jonathan@ernstfamily.ch>

	* programs/winecfg/Fr.rc:
	winecfg: Updated French resources.

2005-12-19  Aric Stewart <aric@codeweavers.com>

	* dlls/user/Makefile.in, dlls/user/edit.c:
	user: Make the edit control IME aware and implement inline editing.
	Makes for a significantly better user experience for CJK users.

2005-12-19  Magnus Olsen <magnus@itkonsult-olsen.com>

	* dlls/msi/format.c:
	msi: Fixed deformat_environment to not cut off string.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/taskmgr/dbgchnl.c:
	taskmgr: Fix viewing of debug channels.
	Various internal cleanups.

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	dbghelp: Implemented SymMatchString.

2005-12-19  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/winproc.c:
	user: Fix LB_GETTEXT unmapping for A<->W.

2005-12-19  Thomas Weidenmueller <w3seek@reactos.com>

	* dlls/setupapi/misc.c:
	setupapi: Fix comparing the group SIDs in IsUserAdmin.

2005-12-19  Huw Davies <huw@codeweavers.com>

	* dlls/opengl32/wgl.c, dlls/x11drv/init.c, dlls/x11drv/opengl.c:
	opengl: Add support for rendering on bitmaps.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ole32/rpc.c:
	ole32: Revert exception handler change.
	The handler does the opposite of normal page fault handlers.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/win.c:
	user: Fix hrgn leaks in win.c test.

2005-12-19  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tests/.gitignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/tooltips.c, dlls/comctl32/tooltips.c:
	comctl32: Add a test for the initial tooltip window style settings,
	make it pass under Wine.

2005-12-19  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c:
	wcmd: Increase maximum length of commands.
	Increase maximum length of commands to 8192 bytes as on Windows XP.
	Add needed braces to a multi line "if" statement.

2005-12-19  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec:
	dbghelp: New stubs (needed for windbg startup).

	* dlls/dbghelp/elf_module.c:
	dbghelp: Fixed loading .so modules from a living target.

	* dlls/dbghelp/stack.c:
	dbghelp: Fixed missing parameters info in StackWalk64.

2005-12-19  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/d3d9/tests/stateblock.c:
	d3d9: Don't crash on NULL device_ptr.

2005-12-19  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/signal_i386.c, tools/winebuild/relay.c:
	ntdll: Make __wine_call_from_32_restore_regs take a context pointer.
	Changed exception raise functions to call it explicitly.

2005-12-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added handling of BINDF_FROMURLMON in file protocol.

	* dlls/mshtml/tests/protocol.c, include/urlmon.idl:
	Fix typo in urlmon.idl.

2005-12-19  Lauri Tulmin <tulmin@gmail.com>

	* dlls/user/edit.c, dlls/user/tests/edit.c:
	user32: Don't truncate text when creating edit control.

2005-12-19  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/win.c, dlls/x11drv/scroll.c:
	x11drv: Do not use the scroll rectangle for clipping in ScrollDC.
	With a conformance test.

2005-12-19  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	urlmon: Added some tests and fixes of file protocol.

2005-12-19  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmaal resources.

2005-12-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/relay.c,
	  tools/winebuild/build.h, tools/winebuild/import.c,
	  tools/winebuild/spec32.c, tools/winebuild/utils.c:
	ntdll: New implementation of relay thunks.
	New implementation of relay thunks that doesn't require modifying code
	on the fly, so that the thunks can be put in the text section.
	Some performance improvements.

2005-12-17  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/thread.c, dlls/ntdll/virtual.c:
	ntdll: Don't use a real guard page at the bottom of the stack.
	A no-access page is enough, we can't properly raise an overflow
	exception anyway.

2005-12-17  Robert Reif <reif@earthlink.net>

	* programs/winecfg/.gitignore, programs/winecfg/Bg.rc,
	  programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Es.rc, programs/winecfg/Fi.rc,
	  programs/winecfg/Fr.rc, programs/winecfg/Ja.rc,
	  programs/winecfg/Ko.rc, programs/winecfg/Makefile.in,
	  programs/winecfg/Nl.rc, programs/winecfg/No.rc,
	  programs/winecfg/Ru.rc, programs/winecfg/audio.c,
	  programs/winecfg/main.c, programs/winecfg/resource.h,
	  programs/winecfg/winecfg.c, programs/winecfg/winecfg.h,
	  programs/winecfg/winecfg.rc:
	winecfg: Use sound tree view for driver selection.
	- Move driver selection and configuration into tree view.
	- Only show loadable drivers.

	* dlls/winmm/wineoss/midi.c:
	wineoss: Shorten MIDI names.
	Shorten MIDI names to fit into 32 byte array without overflow.

2005-12-17  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/tests/cert.c:
	crypt32: Implement more implicit properties, with tests.

2005-12-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: Forward StackWalk64 to dbghelp.StackWalk64.

2005-12-17  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c, dlls/x11drv/scroll.c:
	x11drv: ScrollDC should not clip output if a clipping rect is not specified.
	Add a ScrollDC test with NULL clipping rect.
	Add another set of ScrollDC tests written by Rein Klazes.

2005-12-16  Huw Davies <huw@codeweavers.com>

	* dlls/x11drv/opengl.c:
	x11drv: Get the visual for the GLXPixmap from the current pixel format.

2005-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/dbghelp/msc.c,
	  dlls/ddraw/main.c, dlls/kernel/atom.c, dlls/kernel/computername.c,
	  dlls/kernel/file.c, dlls/kernel/heap.c, dlls/kernel/ne_module.c,
	  dlls/kernel/resource.c, dlls/kernel/string.c, dlls/kernel/virtual.c,
	  dlls/msvcrt/cpp.c, dlls/ntdll/debugtools.c, dlls/ntdll/loader.c,
	  dlls/ntdll/relay.c, dlls/ntdll/resource.c, dlls/ntdll/sec.c,
	  dlls/ole32/rpc.c, dlls/user/cursoricon.c, dlls/user/lstr.c,
	  dlls/winmm/driver.c, dlls/winmm/lolvldrv.c:
	Take advantage of the __EXCEPT_PAGE_FAULT macro.

	* dlls/ntdll/exception.c, include/wine/exception.h:
	Exception handling: Added a magic __EXCEPT_PAGE_FAULT macro to make it
	easier to handle the common case of trapping page faults.

	* dlls/kernel/heap.c, dlls/kernel/ne_module.c, dlls/kernel/resource.c,
	  dlls/ntdll/resource.c, dlls/ole32/rpc.c, dlls/user/lstr.c:
	We no longer need to handle EXCEPTION_PRIV_INSTRUCTION on page faults.

	* dlls/ntdll/signal_i386.c, dlls/ntdll/tests/.gitignore,
	  dlls/ntdll/tests/Makefile.in, dlls/ntdll/tests/exception.c:
	ntdll: More compatible exception information for protection faults.
	Added a bunch of test cases.

2005-12-16  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Vertex declaration cleanup.
	Clean up constants and the wine declaration when the vertex
	declaration is destroyed.

	* dlls/wined3d/device.c:
	wined3d: Allow NULL multi sample quality.
	Allow MultiSampleQuality to be passed as NULL, this is a
	requirement for DirectX 8 and lower.

2005-12-16  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/kernel32.spec, dlls/msvcrt/msvcrt.spec,
	  dlls/ntdll/ntdll.spec:
	Add -register hint in ntdll, kernel and msvcrt spec files.

	* tools/winebuild/parser.c, tools/winebuild/winebuild.man.in:
	winebuild: Allow -register flag for Win32 too.
	This way it can be used as hint for the relay code.

2005-12-16  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Implement CRLDistPoints encoding/decoding.
	- rewrite sequence decoding to support context-specific tags, and
	eliminate duplicated code
	- implement encoding and decoding of CRLDistPoints

2005-12-16  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shell32/shellpath.c, include/shlobj.h:
	shell32: Fix return value of PathProcessCommand.

2005-12-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/urlmon/binding.c, dlls/urlmon/tests/url.c:
	urlmon: Fix BindToStorage test.

	* include/mshtmdid.h, include/mshtml.idl:
	Added some declarations to mshtml.idl.

	* tools/widl/parser.l, tools/widl/parser.y, tools/widl/widltypes.h:
	widl: Added bindable and displaybind attributes handling.

2005-12-16  Milko Krachounov <milko@3mhz.net>

	* programs/winecfg/Bg.rc:
	winecfg: Update Bulgarian resource.

2005-12-16  José Manuel Ferrer Ortiz <jmfo1982@yahoo.es>

	* programs/uninstaller/Es.rc:
	uninstaller: Spanish translations update.

	* programs/winecfg/Es.rc, programs/winecfg/winecfg.rc:
	winecfg: Spanish translations update.

2005-12-16  Ragnvald "Despair" Maartmann-Moe IV <despair@adelphia.net>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Fix matrix copy/paste bug.

2005-12-16  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	wined3d: Vertex declaration recording state.
	Stop SetVertexDeclaration from reference counting if a stateblock is
	being recorded.

2005-12-16  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user32: Implement saving and fix reading of nonclient metrics.
	With conformance tests.

2005-12-16  Tomas Carnecky <tom@dbservice.com>

	* dlls/x11drv/opengl.c:
	x11drv: Allow users to preload an OpenGL library.

2005-12-16  Ivan Leo Puoti <ivanleo@gmail.com>

	* include/ddk/wdm.h:
	Add some structs/prototypes to wdm.h.

2005-12-15  James Hawkins <truiken@gmail.com>

	* dlls/setupapi/setupapi.spec, dlls/setupapi/stubs.c, include/setupapi.h:
	setupapi: Added stubs for SetupGetInfInformation and
	SetupQueryInfFileInformation.

2005-12-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtl.c:
	ntdll: Reimplemented _chkstk and _alloca_probe directly in assembly.

2005-12-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Fix handling Gecko strings.

	* dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl:
	mshtml: Set Gecko's profile.
	Make sure that Gecko components are registered.

2005-12-15  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c:
	wined3d: Internal reference counting.
	Change most references to resources parent into references to the
	resource, so that external reference counts match DirectX but object
	aren't released if they are still referenced by the stateblock.

2005-12-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/mscms/tests/profile.c:
	mscms: Add another possible error.

	* dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Don't treat missing d3d9.dll as a failure.

2005-12-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c:
	iccvid: Add support for ICM_DECOMPRESS_END message.

2005-12-14  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	user: Read/save minimized metrics from/to registry.

2005-12-14  Alexandre Julliard <julliard@winehq.org>

	* loader/preloader.c:
	preloader: Reserve some space for the shared user data.

	* dlls/ntdll/virtual.c:
	ntdll: Fixes in virtual memory protection flags.
	Tweak reporting of virtual protection flags and address space limit to
	yield results closer to what Windows does.

2005-12-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/vertexdeclaration.c:
	d3d9: Add a test for Get/SetVertexDeclaration refcounts.

	* dlls/wined3d/vertexdeclaration.c:
	wined3d: Return the correct parent in IWineD3DVertexDeclarationImpl_GetParent.

	* dlls/d3d9/vertexshader.c:
	d3d9: Check for a NULL shader in IDirect3DDevice9Impl_GetVertexShader
	before getting the parent.

2005-12-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/pipe.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, include/winioctl.h,
	  server/named_pipe.c, server/protocol.def, server/trace.c:
	ntdll: Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
	Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
	Modify WaitNamedPipeW to use NtFsControlFile.
	Replace struct overlapped with event.

2005-12-14  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/Ko.rc:
	winecfg: Update Korean translation.

2005-12-14  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/d3d9/tests/shader.c, dlls/d3d9/tests/stateblock.c:
	d3d9: Don't treat missing d3d9.dll as a failure.

2005-12-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Return the correct vertex declaration.
	In IWineD3DDeviceImpl_GetVertexDeclaration, return the vertex
	declaration in This->stateblock instead of the one in
	This->updateStateBlock.

2005-12-14  Ulrich Czekalla <ulrich.czekalla@utoronto.ca>

	* dlls/riched20/editor.c:
	riched20: Reset selection when text is reset.

2005-12-14  Aric Stewart <aric@codeweavers.com>

	* dlls/user/clipboard.c:
	user: GetClipboardFormatNameA fix.
	In the W->A translation make sure we have characters to translate
	before doing the WideCharToMultiByte with -1.

2005-12-13  Saulius Krasuckas <saulius2@ar.fi.lt>

	* dlls/mscms/tests/profile.c:
	mscms: Move repetitive code to helper macros.

2005-12-13  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/scroll.c:
	x11drv: ScrollDC fix.
	There is no need to offset the source rectangle in the reverse
	direction before scrolling.

2005-12-13  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/tests/http.c:
	wininet: HTTP headers reworking.
	Redo how headers are handled, eliminating the concept of Standard
	Headers and allow all headers to be added multiple times.
	Allow querying of headers with an index to get the multiple headers.
	Respect response vs request headers in HttpQueryInfo.
	Add a number of tests to extensively test header adding and replacing.

2005-12-13  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/bitmap.c:
	gdi: Added support for doing GetBitmapBits on a DIB section.
	Simply copy the DIB bits in that case.

	* dlls/x11drv/dib.c:
	x11drv: Clipping fix with DIB section copy.
	Use the GC of the destination device in X11DRV_DIB_CopyDIBSection so
	that the clipping region is taken into account.

2005-12-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/shader.c:
	d3d9: Add a test for Get/SetVertexShader and Get/SetPixelShader refcounts.

2005-12-13  Alexandre Julliard <julliard@winehq.org>

	* server/mailslot.c, server/named_pipe.c:
	server: Added get_file_info implementation for named pipe and mailslot devices.

	* server/mailslot.c, server/named_pipe.c:
	server: Fixed refcounting in get_fd requests for named pipe and mailslot devices.

2005-12-13  Robert Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c,
	  tools/widl/typegen.h:
	widl: Start generating type format strings.
	Based on a patch by Eric Kohl.

2005-12-13  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/server.c:
	widl: Server stubs in generated code are void functions.

2005-12-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winecfg/audio.c:
	winecfg: Simplified module handling code.

2005-12-13  Marcus Meissner <marcus@jet.franken.de>

	* dlls/wininet/http.c:
	wininet: Reinitialise NETCON on redirect.

2005-12-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/iphlpapi/ifenum.c:
	iphlpapi: Fix a couple of file descriptor leaks.

2005-12-13  Eric Pouech <eric.pouech@wanadoo.fr>

	* tools/winedump/le.c, tools/winedump/ne.c:
	winedump: Const correctness fixes.

2005-12-13  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/encode.c, dlls/crypt32/tests/encode.c:
	crypt32: Decode cleanups.
	- implement a helper to decode sequences of like types
	- use helper functions wherever applicable when decoding
	- correct "expected" vs. "got" usage in tests
	- fix a few other small bugs

2005-12-13  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: Don't change the shader's refcount in SetVertexShader and
	SetPixelShader.

2005-12-13  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/cubetexture.c:
	wined3d: Cube texture named constants.
	Update cubetexture so that names constants instead of numeric
	constants are used for the facetype and also add some additional
	checks where facetype is passed as a parameter to the function.

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/shell32/tests/shlfolder.c:
	shell32/tests/shlfolder.c: ILFindLastID has to be called by ordinal.

	* dlls/mscms/tests/profile.c:
	mscms: Add another possible error.

2005-12-12  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/process.c, dlls/ntdll/signal_i386.c, dlls/ntdll/thread.c,
	  dlls/ntdll/virtual.c:
	TEB.StackLimit should not include the guard page.

	* dlls/kernel/kernel_private.h, dlls/kernel/process.c,
	  dlls/kernel/thread.c:
	kernel: Moved main stack initialization to process.c.

	* server/fd.c:
	server: Don't enable polling on regular files in add_queue.

	* dlls/kernel/comm.c, dlls/kernel/sync.c, dlls/ntdll/directory.c,
	  dlls/ntdll/file.c, dlls/ntdll/server.c, dlls/ntdll/virtual.c,
	  dlls/winedos/int13.c, dlls/winsock/socket.c:
	Pass specific access rights to wine_server_handle_to_fd.

	* dlls/kernel/tests/sync.c, dlls/ntdll/server.c, server/directory.c,
	  server/fd.c, server/file.c, server/file.h, server/mailslot.c,
	  server/mapping.c, server/named_pipe.c, server/object.c,
	  server/process.c, server/registry.c, server/serial.c, server/sock.c:
	server: Added access rights mapping to file objects.

	* server/process.c, server/thread.c:
	server: Added access rights mapping to process and thread objects.

	* server/registry.c:
	server: Added access rights mapping to registry key objects.

	* server/symlink.c:
	server: Added access rights mapping to symlink objects.

	* server/token.c:
	server: Added access rights mapping to token objects.

	* server/event.c, server/mutex.c, server/semaphore.c, server/timer.c:
	server: Added access rights mapping to synchronization objects.

	* server/atom.c, server/change.c, server/clipboard.c, server/console.c,
	  server/debugger.c, server/directory.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c, server/queue.c,
	  server/registry.c, server/request.c, server/semaphore.c,
	  server/serial.c, server/signal.c, server/snapshot.c, server/sock.c,
	  server/symlink.c, server/thread.c, server/timer.c, server/token.c,
	  server/winstation.c:
	server: Added infrastructure for access rights mapping.

	* server/mailslot.c:
	server: Allow the mailslot device to be opened as a file object.

	* server/named_pipe.c:
	server: Allow the named pipe device to be opened as a file object.

	* dlls/kernel/file.c, dlls/ntdll/directory.c, dlls/ntdll/file.c,
	  include/wine/server_protocol.h, server/fd.c, server/file.h,
	  server/protocol.def, server/request.h, server/trace.c:
	server: Support for opening devices.
	Added support for opening devices directly with the server when they
	don't correspond to a Unix file.

	* server/mapping.c, server/trace.c:
	server: Use a better error code for a zero-size mapped file.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/dosmem.c, dlls/kernel/kernel32.spec,
	  dlls/kernel/kernel_private.h, dlls/winedos/int31.c:
	kernel32: Get rid of DOSMEM_AllocSelector.

2005-12-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/Makefile.in, dlls/winspool/tests/info.c:
	winspool: Added tests for OpenPrinter.

2005-12-12  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	shell32: Fix drag-scrolling in the shellview object.

	* dlls/ole32/ole2.c:
	ole32: Periodically call IDropTarger::DragOver during Drag&Drop.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/msvcrt.h, dlls/ntdll/relay.c, dlls/ole32/ole16.c:
	Functions with no paramters must be (void).

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Generate FC_ERROR_STATUS_T proc format.
	- Include the header file for the functions implemented in typegen.c.
	- Generate proc format for FC_ERROR_STATUS_T type.

	* tools/widl/client.c, tools/widl/header.c, tools/widl/header.h,
	  tools/widl/server.c:
	widl: Support explicit binding handles.

	* tools/widl/server.c:
	widl: Zero initialize parameters in the generated server code.
	Zero initialize parameters in the generated code. Based on a patch by
	Eric Kohl.

	* tools/widl/client.c:
	widl: Calculate the size of buffer required.
	- Calculate the size of buffer required.
	- Fix a typo.
	- Set the buffer start and buffer end markers.

	* tools/widl/server.c:
	widl: Don't cast buffer pointers to long in generated server code.

2005-12-12  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Support multiple interfaces per file.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/header.c, tools/widl/parser.y, tools/widl/typegen.c:
	widl: Don't treat FC_SMALL as FC_SHORT.
	FC_SMALL is its own type and is the same size as FC_CHAR, not
	FC_SHORT.

	* tools/widl/header.c:
	widl: Use WCHAR instead of wchar_t.
	Output IDL wchar_t types as WCHAR to avoid conflicts with the
	generally incompatible Unix wchar_t.

2005-12-12  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Added documentation for OpenPrinter.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/commdlg/finddlg32.c, dlls/ole32/ole16.c, dlls/user/cursoricon.c:
	Const correctness fixes.

2005-12-12  Marcus Meissner <marcus@jet.franken.de>

	* include/ws2tcpip.h:
	winsock: getaddrinfo return codes
	Adjust return code EAI_NODATA to WSAHOST_NOT_FOUND, like windows does
	it.

	* dlls/winsock/socket.c:
	winsock: getaddrinfo - return code mapping.
	convert_eai_u2w should map from unix to windows, not the other way
	round (spotted by Dominic Wise).

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* include/urlmon.idl:
	urlmon.idl: Add some BINDSTATUS values.

2005-12-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/comctl32/treeview.c:
	comctl32: Fixed (harmless) typo.

	* dlls/commdlg/fontdlg.c, dlls/winaspi/aspi.c:
	Removed some dead-code.

	* dlls/ddraw/tests/ddrawmodes.c, dlls/setupapi/queue.c:
	Made some functions static.

	* dlls/iccvid/iccvid.c, dlls/msvidc32/msvideo1.c:
	vidc: Return error codes when a message isn't supported.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/safearray.c, dlls/oleaut32/tests/safearray.c:
	OLE: Fix SafeArrayCopy for NULL pvData.
	It is allowed to copy a SAFEARRAY with a NULL pvData, as long as
	cbElements is non-zero. Add a test for this and fix the safe array
	code.

	* dlls/ole32/errorinfo.c:
	CreateErrorInfo trace fix.
	CreateErrorInfo isn't a stub so don't print this in the trace
	message.

	* dlls/oleaut32/typelib.c:
	OLE: Add const to several typelib functions.
	Add const attributes to parameters for several functions and fix up
	some formatting.

	* dlls/oleaut32/oleaut.c:
	OleTranslateColor trace fix.
	OleTranslateColor isn't a stub so don't print ":stub" in the trace
	message.

2005-12-12  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/htmldoc.c, dlls/mshtml/htmldoc3.c,
	  dlls/mshtml/mshtml_private.h:
	mshtml: Added IHTMLDocument3 stub implementation.

2005-12-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	winetest: Add d3d9 tests.

2005-12-12  Robert Shearman <rob@codeweavers.com>

	* tools/widl/client.c, tools/widl/server.c, tools/widl/typegen.c:
	widl: Don't output __RPC_FAR in generated code.

2005-12-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* programs/winecfg/Nl.rc:
	winecfg: Update Dutch resources for the Audio tab.

2005-12-12  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmdid.h, include/mshtml.idl:
	Added declaration of IHTMLDocument3 and more DISPIDs.

2005-12-12  Filip Navara <xnavara@volny.cz>

	* dlls/kernel/module.c:
	kernel: Fix the Mach-O binary magic.

2005-12-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/winedos/dosmem.c:
	winedos: Implement MCB.

2005-12-12  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/urlmon/umstream.c:
	urlmon: Correctly fix IStream::Read.
	Don't dereference a possible NULL pointer.

2005-12-09  H. Verbeet <hverbeet@gmail.com>

	* configure, configure.ac, dlls/d3d9/Makefile.in,
	  dlls/d3d9/tests/.gitignore, dlls/d3d9/tests/Makefile.in,
	  dlls/d3d9/tests/stateblock.c:
	d3d9: Add a test for BeginStateBlock and EndStateBlock.

2005-12-09  Markus Amsler <markus.amsler@oribi.org>

	* include/mmsystem.h:
	Remove unneeded ; from DECL_WINELIB_TYPE_AW in mmsystem.h.

2005-12-09  Kai Blin <blin@gmx.net>

	* dlls/secur32/ntlm.c:
	secur32: Fix conversion of password in NTLM AcquireCredentialsHandleA.

2005-12-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/change.c, dlls/ntdll/reg.c, include/wine/server_protocol.h,
	  server/change.c, server/protocol.def, server/registry.c,
	  server/trace.c:
	server: Added object attributes to a few more requests.

	* server/atom.c, server/console.c, server/debugger.c, server/directory.c,
	  server/event.c, server/file.c, server/handle.c, server/handle.h,
	  server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/process.c, server/semaphore.c,
	  server/snapshot.c, server/sock.c, server/symlink.c, server/thread.c,
	  server/timer.c, server/token.c, server/winstation.c:
	server: Make alloc_handle use attributes instead of inherit flag.

	* dlls/kernel/console.c, dlls/ntdll/server.c, dlls/ntdll/thread.c,
	  dlls/x11drv/x11drv_main.c, include/wine/server.h,
	  programs/wineconsole/curses.c:
	Make wine_server_fd_to_handle use attributes instead of inherit flag.

	* programs/wineconsole/wineconsole.c:
	wineconsole: Remove some unnecessary typecasts.

	* dlls/ntdll/om.c, include/wine/server_protocol.h, server/handle.c,
	  server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in dup_handle request.

	* dlls/ntdll/nt.c, include/wine/server_protocol.h, server/protocol.def,
	  server/token.c, server/trace.c:
	server: Use attributes instead of inherit flag in token requests.
	Also use the specified access rights in the open_token request.

	* dlls/kernel/process.c, dlls/ntdll/process.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/process.c,
	  server/protocol.def, server/thread.c, server/trace.c:
	server: Use attributes instead of inherit flag in process and thread requests.

	* dlls/kernel/toolhelp.c, dlls/ntdll/nt.c, include/wine/server_protocol.h,
	  server/protocol.def, server/snapshot.c, server/trace.c:
	server: Use attributes instead of inherit flag in snapshot requests.

	* dlls/kernel/console.c, include/wine/server_protocol.h,
	  programs/wineconsole/wineconsole.c, server/console.c,
	  server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in console requests.

	* dlls/ntdll/file.c, dlls/ntdll/server.c, include/wine/server_protocol.h,
	  server/file.c, server/protocol.def, server/trace.c:
	server: Use attributes instead of inherit flag in file requests.

	* dlls/winsock/socket.c, include/wine/server_protocol.h,
	  server/protocol.def, server/sock.c, server/trace.c:
	server: Use attributes instead of inherit flag in socket requests.

2005-12-09  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/mpr/mpr_main.c, dlls/shlwapi/regstream.c, dlls/user/mouse16.c:
	Add some missing includes which contain used prototypes.

2005-12-09  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/Makefile.in, dlls/mshtml/mshtml_private.h,
	  dlls/mshtml/nsembed.c, dlls/mshtml/nsiface.idl,
	  dlls/mshtml/nsservice.c:
	mshtml: Added PromptService implementation.

	* dlls/mshtml/nsembed.c:
	mshtml: Added nsIURIContentListener to QueryInterface.
	Always release nsIWebBrowserSetup.

	* dlls/mshtml/mshtml_private.h, dlls/mshtml/nsembed.c,
	  dlls/mshtml/nsiface.idl:
	mshtml: Added nsIEmbeddingSiteWindow implementation.

2005-12-09  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/vertexshader.c, dlls/wined3d/device.c,
	  dlls/wined3d/drawprim.c, dlls/wined3d/vertexdeclaration.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h, include/wine/wined3d_types.h:
	wined3d: Vertex shader 8 support.
	Start to add support for DirectX 8 vertex shaders, constants and
	registers are now correctly assigned and loaded allowing support for
	most basic d3d8 shaders.

2005-12-09  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/urlmon/umstream.c:
	urlmon: Fix call to ReadFile.
	The BytesRead parameter passed to ReadFile may never be NULL.

2005-12-09  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Update win16.api and win32.api.

	* tools/sfnt2fnt.c:
	sfnt2fnt: Don't print two newlines after error messages.

	* tools/widl/header.c:
	widl: Issue correct C++ headers.

2005-12-09  Thomas Weidenmueller <w3seek@reactos.com>

	* dlls/quartz/filesource.c, dlls/quartz/filtermapper.c:
	quartz: Fix incorrect usages of the HRESULT_FROM_WIN32 macro.

2005-12-09  Alexander N. Sørnes <alex@thehandofagony.com>

	* programs/winecfg/No.rc:
	winecfg: Updated Norwegian Bokmaal resources.

2005-12-08  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.3.

----------------------------------------------------------------
2005-12-08  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dib.c:
	gdi: Fix 24bpp -> 32bpp copy.

2005-12-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/advapi32/registry.c, dlls/advapi32/tests/registry.c:
	advapi32: RegCreateKeyEx fix.
	On Win9x,ME RegCreateKeyEx ignores the backslash character if the
	subkey begins with one. With a regression test.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/parser.y:
	widl: Formatting cleanups.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/typegen.c:
	widl: Marshal and unmarshal basic types.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* tools/widl/Makefile.in, tools/widl/client.c, tools/widl/server.c,
	  tools/widl/typegen.c, tools/widl/typegen.h:
	widl: Add a type generator framework.
	Add a framework for writing the strings for marshaling and
	unmarshaling parameters and make the client and server use it.

2005-12-08  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Write out argument lists in the server.
	- Add framework for updating proc offsets.
	- Write out argument lists in the server.

2005-12-08  Eric Kohl <eric.kohl@t-online.de>

	* tools/widl/client.c, tools/widl/server.c:
	widl: Rename some variables.

2005-12-08  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/winecfg/De.rc:
	winecfg: Update German resource.

2005-12-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c:
	opengl: render_texture
	- better render_texture emulation (using pbuffers)
	- support GLX_ATI_render_texture for render_texture

2005-12-08  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: Handle HTTP_QUERY_CUSTOM.
	In HttpQueryInfo if dwInfoLevel includes HTTP_QUERY_CUSTOM then
	lpBuffer is In/Out because the header we are querying is there.
	Additionally standard headers can be queried in this manner as well
	(such as Set-Cookie).

2005-12-08  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wineoss/audio.c, dlls/winmm/wineoss/midi.c,
	  dlls/winmm/wineoss/mixer.c, dlls/winmm/wineoss/mmaux.c,
	  dlls/winmm/wineoss/oss.c, dlls/winmm/wineoss/oss.h:
	wineoss: Fix device probing.
	- Fix device probing at driver load time.
	- Fix memory leaks at driver exit time.

2005-12-08  Raphael Junqueira <fenix@club-internet.fr>

	* include/Makefile.in, include/dpaddr.h, include/dplay8.h,
	  include/dplobby8.h:
	dplay: dx8/dx9 support (missing includes).
	- add directx9 support for dplay8.h and dpaddr.h
	- new file dplobby8.h

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* dlls/commdlg/printdlg.c:
	comdlg32: Don't worry if an HGLOBAL passed to printdlg is already locked.

2005-12-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winealsa/audio.c:
	winealsa: Fixed returned string in capabilities.

2005-12-08  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winenas/audio.c:
	winenas: fix crash.
	- return correct MM error code when no connection to server has been
	opened
	- don't close the AU driver if it hasn't been opened

2005-12-08  H. Verbeet <hverbeet@gmail.com>

	* include/d3d8.h, include/d3d9.h:
	d3d8/d3d9: Define D3D_SDK_VERSION.

2005-12-08  Robert Shearman <rob@codeweavers.com>

	* programs/notepad/dialog.c, programs/notepad/main.c,
	  programs/notepad/main.h:
	notepad: Remember options selected in the print setup dialog.

2005-12-08  Mike McCormack <mike@codeweavers.com>

	* programs/winecfg/audio.c:
	winecfg: Fix compilation on gcc 2.95 (no nameless unions).

2005-12-08  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	wininet: A->W bugfix.
	When converting SendRequestExA -> W we need to set the lpcszHeader
	parameter to NULL if the original one is NULL.

2005-12-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/reg.c, include/winternl.h:
	ntdll: Check for failure to get the user path in RtlOpenCurrentUser.
	Fixed the return value type.

2005-12-07  Jacek Caban <jacek@codeweavers.com>

	* dlls/mshtml/nsembed.c:
	mshtml: Added config key to specify Gecko path.

2005-12-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/audio.c:
	winecfg: Added support for auto detecting all drivers by attempting to
	open them.

2005-12-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/dpnhpast/main.c, dlls/mapi32/imalloc.c, dlls/msisys/msisys.c,
	  dlls/netapi32/browsr.c, dlls/rsaenh/rsaenh.c,
	  dlls/wintrust/wintrust_main.c:
	Add a few missing #includes.

2005-12-07  Kai Blin <blin@gmx.net>

	* dlls/secur32/ntlm.c:
	secur32: Implement InitializeSecurityContext(A|W) for the NTLM
	security provider.

2005-12-07  Robert Reif <reif@earthlink.net>

	* programs/winecfg/En.rc, programs/winecfg/audio.c,
	  programs/winecfg/resource.h:
	winecfg: Show all sound card drivers and their devices.

2005-12-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/fnt2fon.c, tools/sfnt2fnt.c:
	Add an error() function to fnt2fon and sfnt2fnt.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Implement undocumented behaviour in DispCallFunc.
	Fix DispCallFunc to work with MSDN-undocumented behaviour used by
	Office 2003 and document the function.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Implement ITypeInfo_AddressOfMember.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/typelib.h:
	OLE: Fix brokenness in typelib marshaller caused by dispinterface retval fix.
	Fix more fallout from dispinterface retval patch: make typelib
	marshaler use the internal function description so that it calls
	dispinterface functions with the correct number of parameters again.
	Also fixes some memory leaks caused by the fact that a corresponding
	ReleaseXDesc function has to be called for each GetXDesc.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/typelib.c:
	OLE: Add tests for the typelib version of ITypeComp_Bind.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, include/oleauto.h:
	OLE: Update the type of the oVft parameter for DispCallFunc.

2005-12-06  Kai Blin <blin@gmx.net>

	* dlls/secur32/Makefile.in, dlls/secur32/ntlm.c:
	secur32: Implementing AcquireCredentialsHandle(A|W) for the NTLM
	security provider.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* tools/c2man.pl:
	c2man: Remove HTML warnings.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winejack/audio.c, dlls/winmm/winejack/jack.c:
	winejack: Fix driver load and initialization.
	Move wave in/out initialization from wave out to driver.
	Add index number to device names.
	Fix memset bug where only first wave in caps was zeroed.

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mciwave/mciwave.c:
	mciwave: save/record.
	- fix for playback after a sound has been recorded
	- shall fix also opening the mci device without name
	- bug reported (and fix tested) by Peter Astrand

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stack.c:
	dbghelp: Final touch on StackWalk64 so that it works.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Document the monitor functions.

2005-12-06  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Sort entries in win16.api and win32.api

2005-12-06  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/opengl.c:
	x11drv: Add more useful traces on SetPixelFormat (and no more FIXME).

2005-12-06  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/init.c, dlls/x11drv/x11drv.h:
	x11drv: cleanup not longer used data on X11DRV_PDEVICE.

2005-12-06  Louis Lenders <xerox_xerox2000@yahoo.co.uk>

	* dlls/gdi/font.c, dlls/gdi/gdi32.spec:
	gdi: Added stub for AddFontMemResourceEx.

2005-12-06  Alexandre Julliard <julliard@winehq.org>

	* include/mlang.idl:
	mlang: Properly declare the interface uuids.

2005-12-06  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/mlang/mlang.c, dlls/mlang/tests/mlang.c, include/mlang.idl:
	mlang: Implement IEnumRfc1766 interface.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winejack/jack.c:
	winmm: Allow sound card driver to be opened more than once.
	TRACE cleanups.

2005-12-06  Robert Reif <reif@earthlink.net>

	* dlls/winmm/winealsa/alsa.c, dlls/winmm/winearts/arts.c,
	  dlls/winmm/wineaudioio/audioio.c, dlls/winmm/wineesd/esound.c,
	  dlls/winmm/winenas/nas.c, dlls/winmm/wineoss/oss.c:
	winmm: Allow sound card drivers to be opened more than once.

2005-12-06  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win32.api:
	Update win32.api to current git.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	OLE: Fix a typo where brackets were missing.

2005-12-06  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: ITypeInfo_Invoke parameter naming change.
	Rename the dwFlags parameter of ITypeInfo_Invoke since it is not a
	DWORD, but an unsigned short.

2005-12-06  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	shdocvw: Added get_Document implementation.

2005-12-06  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/expr.c:
	winedbg: Fixed broken code about type management for binary operator.

2005-12-06  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	winspool: Add documentation for the port functions.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c:
	kernel: Added a basic test for exception handling in threads.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/cursoricon.c:
	user: Fixed copy/paste bug in CURSORICON_GetResIconEntry.

2005-12-05  Rein Klazes <wijn@wanadoo.nl>

	* dlls/ddraw/Makefile.in, dlls/ddraw/main.c:
	ddraw: Catch access violations when calling DirectDrawEnumerateProc.

2005-12-05  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/devenum/createdevenum.c:
	devenum: Don't leak key handle creating a category registry key.

2005-12-05  Christian Gmeiner <christian.gmeiner@students.fh-vorarlberg.ac.at>

	* dlls/msi/msi.c:
	msi: Implemented DllCanUnloadNow.

2005-12-05  Wojciech Migda <migda@chemia.uj.edu.pl>

	* dlls/imagehlp/imagehlp.spec:
	imagehlp: fixed typo in SymSetOptions entry.

2005-12-05  Huw Davies <huw@codeweavers.com>

	* dlls/msi/msi.spec:
	msi: Fix MsiProvideQualifiedComponentW spec file entry.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/main.c, server/object.h:
	server: Remove sync_namespace.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/mailslot.c, server/named_pipe.c,
	  server/object.h:
	server: Let the directory code handle device names.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c, include/wine/server_protocol.h, server/directory.c,
	  server/mailslot.c, server/object.h, server/protocol.def,
	  server/trace.c:
	Move mailslot devices into directory name space.

2005-12-05  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/tests/pipe.c, dlls/ntdll/file.c,
	  dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/directory.c, server/named_pipe.c, server/object.h,
	  server/protocol.def, server/trace.c:
	Move named pipe objects into directory name space.
	Change tests accordingly.
	Add small test for WaitNamedPipe.

2005-12-05  Alexandre Julliard <julliard@winehq.org>

	* server/directory.c, server/event.c, server/mapping.c, server/mutex.c,
	  server/object.h, server/semaphore.c, server/symlink.c,
	  server/timer.c:
	server: Move handle allocation out of open_object_dir.

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/stack.c, include/dbghelp.h:
	dbghelp: Implemented StackWalk64.

2005-12-05  Francois Gouget <fgouget@free.fr>

	* dlls/msvidc32/msvideo1.c:
	msvidc32: Add a comment for DllMain() to stop winapi_check from
	complaining about it.

2005-12-05  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

2005-12-05  Pavel Roskin <proski@gnu.org>

	* programs/notepad/Ru.rc:
	notepad: Russian translation for "Font..." menu item.

2005-12-05  Cihan Altinay <cihan@uq.edu.au>

	* dlls/riched20/editor.c:
	riched20: register ListBox & ComboBox classes
	Partially implement REExtendedRegisterClass() to register missing
	window classes so that applications relying on them don't get
	confused.

2005-12-05  YunSong Hwang <hys545@dreamwiz.com>

	* programs/winefile/Ko.rc:
	winefile: Fix an incorrect translation.

2005-12-05  Alexander N. Sørnes <alex@thehandofagony.com>

	* dlls/commdlg/cdlg_No.rc, dlls/iccvid/iccvid_No.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_No.rc, dlls/msvidc32/rsrc.rc,
	  dlls/msvideo/msvfw32_No.rc, dlls/msvideo/rsrc.rc,
	  programs/notepad/No.rc, programs/regedit/No.rc,
	  programs/winecfg/No.rc:
	Update Norwegian Bokmaal resources.

2005-12-05  Patrick Ammann <pammann@aro.ch>

	* dlls/wininet/netconnection.c:
	wininet: compilation fix
	- make netconnection.c compile when HAVE_OPENSSL_SSL_H or
	HAVE_OPENSSL_ERR_H are not defined.

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/driver.c, dlls/winmm/winemm.h:
	winmm: driver unloading.
	- properly handle drivers unloading when no session instance of the
	driver has been created

2005-12-05  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/symbol.c, dlls/dbghelp/type.c, programs/winedbg/expr.c,
	  programs/winedbg/symbol.c:
	dbghelp,winedbg: SYMBOL_INFO fix.
	- native dbghelp returns in SYMBOL_INFO.TypeIndex the index of the
	type of the symbol (we were returning the symbol index instead)
	- fixed winedbg accordingly

2005-12-05  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/vartype.c:
	Fix VarBstrCmp for NULL input BSTRs (MSDN is wrong).

2005-12-05  Milko Krachounov <milko@3mhz.net>

	* dlls/commdlg/cdlg_Bg.rc, programs/regedit/Bg.rc:
	Update the Bulgarian resources for commdlg and regedit.

2005-12-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	winsock: Rewrote mappers to use sizeof() based loops.
	Added IPPROTO_IP and AF_UNSPEC to the mappers.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Support HREFTYPEs For ITypeInfos
	Add support for reading the hreftype of a typeinfo, return it to the
	application in ITypeComp_Bind for the DESKIND_APPOBJECT case and
	support referencing it in ITypeInfo_GetRefTypeInfo.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix function name loading
	Correctly get the name of the second function of a propget/propput
	pair in MSFT typelibs when the name offset is set to -1.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix invoking dispinterface functions
	Fix invoking dispinterface functions by using the internal
	representation of the function, not the one returned to applications.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c:
	wined3d: Set pixel shader version correctly in IWineD3DPixelShaderImpl_SetFunction.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	wined3d: Return the correct parent in IWineD3DPixelShaderImpl_GetParent.
	Remove an unnecessary cast.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: Move the dispinterface return value handling to functions that
	return the FUNCDESC to the user.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/netconnection.c:
	wininet: Correctly set the last error when a called Unix network
	function fails.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: simplify some code.

2005-12-03  H. Verbeet <hverbeet@gmail.com>

	* dlls/wined3d/device.c:
	wined3d: return D3DERR_INVALIDCALL when calling BeginStateBlock and
	already recording.

2005-12-03  Pavel Roskin <proski at gnu.org>

	* programs/wineconsole/wineconsole.c:
	Fixed regression in wineconsole creation (curses backend).

2005-12-03  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_check:
	winapi_check: fully descend in included files to check for prototype.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	OLE: fix handling of INVOKE_PROPERTYGET flag in ITypeComp_fnBind.
	The INVOKE_PROPERTYGET flag shouldn't affect binding to variables; it
	should just affect which of a pair of [propget] and [propput]
	functions should be returned.

2005-12-03  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.c,
	  dlls/wininet/internet.h:
	wininet: global function/data cleanup
	Make some functions and a structure static since they are only used in
	one file.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c:
	winedbg: fixed regression (and simplified code!) for arguments
	printing in backtrace.

2005-12-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	winedbg: fixed regression in 'info local' command.

2005-12-03  Aric Stewart <aric@codeweavers.com>

	* programs/wcmd/builtins.c:
	wcmd: mkdir recursive create
	In at least both win2k and winxp mkdir from the command prompt can
	recursively create full directory paths. This implements that
	functionality.

2005-12-03  Aric Cyr <aric.cyr@gmail.com>

	* dlls/opengl32/wgl.c, dlls/opengl32/wgl.h, dlls/opengl32/wgl_ext.c,
	  include/wingdi.h:
	Move standard WGL function declarations to wingdi.h.
	dlls/opengl32/wgl.h is now empty and no longer needed.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/ole32/usrmarshal.c, dlls/wined3d/surface.c, dlls/winspool/info.c,
	  tools/winapi/msvcmaker, tools/winapi/winapi_check_options.pm,
	  tools/winapi/winapi_extract, tools/winebuild/utils.c:
	Assorted spelling fixes.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/virtual.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/mapping.c,
	  server/protocol.def, server/trace.c:
	Move mapping (section) objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/ntdll/sync.c, include/wine/server_protocol.h,
	  server/protocol.def, server/timer.c, server/trace.c:
	Move timer objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/ntdll/sync.c, include/wine/server_protocol.h,
	  server/protocol.def, server/semaphore.c, server/trace.c:
	Move semaphore objects into directory name space.

2005-12-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/kernel_private.h, dlls/kernel/sync.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/console.c, server/event.c, server/mutex.c,
	  server/named_pipe.c, server/object.h, server/process.c,
	  server/protocol.def, server/trace.c:
	Move event and mutex objects into directory name space.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Sync the WebBrowser's window size with document's window.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* tools/winapi/win32.api:
	Update win32.api to match the current sources.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/objbase.h, tools/widl/header.c:
	Use the typedef'd declaration of IRpcStubBuffer and IRpcChannelBuffer
	in RPC _Stubs.
	Add IRpcStubBuffer and IRpcChannelBuffer declarations to objbase.h.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/widl/header.c:
	Reorder the virtual table definition so it's defined before it is used
	in widl header output.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/widl/header.c:
	Use interface instead of struct where appropriate in widl.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/atl/atl_main.c, dlls/atl/atliface.idl:
	Fix the AtlAxWinInit() prototype.
	Also make it return FALSE to indicate failure instead of E_FAIL.
	Define AtlAxWinInit() and AtlAxCreateControl() in atliface.idl.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/netapi32/ds.c, tools/winapi/win32.api:
	Better stick to the PSDK types and to the dsrole.h prototype.
	Update win32.api.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* tools/winapi/winapi_parser.pm:
	Fix __RPC_USER handling.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/wldap32/parse.c, include/winldap.h, tools/winapi/win32.api:
	Better stick to the PSDK types.
	Update win32.api.

2005-12-02  Francois Gouget <fgouget@free.fr>

	* dlls/dbghelp/module.c, include/dbghelp.h:
	Add IMAGEHLP_MODULEW64.
	Add SymGetModuleInfoW64() and SymLoadModule64().

2005-12-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Implemented scrolling during drag&drop for the shellview class.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Use sink in navigate_complete instead of ClientSite's IDispatch.

2005-12-02  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/Makefile.in, dlls/crypt32/cert.c,
	  dlls/crypt32/crypt32.spec, dlls/crypt32/crypt32_private.h,
	  dlls/crypt32/encode.c, dlls/crypt32/main.c, dlls/crypt32/oid.c,
	  dlls/crypt32/tests/.gitignore, dlls/crypt32/tests/Makefile.in,
	  dlls/crypt32/tests/encode.c, dlls/crypt32/tests/oid.c:
	Implement more OID support functions.
	Use the exported OID support functions internally.
	Move OID support functions and stubs to a separate file.

2005-12-02  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/c_parser.pm, tools/winapi/winapi_parser.pm:
	Make winapi_check understand the interface keyword.

2005-12-02  Pavel Roskin <proski@gnu.org>

	* dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Ca.rc,
	  dlls/commdlg/cdlg_Cn.rc, dlls/commdlg/cdlg_Cs.rc,
	  dlls/commdlg/cdlg_Da.rc, dlls/commdlg/cdlg_De.rc,
	  dlls/commdlg/cdlg_En.rc, dlls/commdlg/cdlg_Es.rc,
	  dlls/commdlg/cdlg_Fi.rc, dlls/commdlg/cdlg_Fr.rc,
	  dlls/commdlg/cdlg_Hu.rc, dlls/commdlg/cdlg_It.rc,
	  dlls/commdlg/cdlg_Ja.rc, dlls/commdlg/cdlg_Nl.rc,
	  dlls/commdlg/cdlg_No.rc, dlls/commdlg/cdlg_Pl.rc,
	  dlls/commdlg/cdlg_Pt.rc, dlls/commdlg/cdlg_Ru.rc,
	  dlls/commdlg/cdlg_Si.rc, dlls/commdlg/cdlg_Sk.rc,
	  dlls/commdlg/cdlg_Sv.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/cdlg_Wa.rc, dlls/commdlg/cdlg_Zh.rc:
	Improve script selection combobox in the font selection dialog - set
	height to 90 (the old value of 10 could only fit a single line) and
	remove CBS_OWNERDRAWFIXED flag to trim excessive height from the list
	items.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h:
	Added implementation of IConnectionPoint::Advise and Unadvise.

2005-12-02  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c,
	  dlls/wldap32/control.c, dlls/wldap32/delete.c, dlls/wldap32/dn.c,
	  dlls/wldap32/error.c:
	Document DN and error handling functions.
	Try to stick to Wine's documentation format.

2005-12-02  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/batch.c, programs/wcmd/builtins.c,
	  programs/wcmd/wcmdmain.c:
	Avoid formatted output in a few more places where formatting is not
	really needed and output could be large enough to be truncated.

2005-12-02  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Sync window sizes.

2005-12-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	Added a test for native PIDL format.

2005-12-02  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c:
	Document many of the advpack functions.

2005-12-02  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/opengl.c:
	Handle DONTCARE flags on ChoosePixelFormat.
	DOUBLEBUFFER and STEREO are non-mandatory options (ie if not available
	find a compatible pixel format without). So try without if we cannot
	find a valid fbconfig with these options.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/Makefile.in, dlls/wldap32/parse.c,
	  dlls/wldap32/wldap32.spec:
	Implement ldap_parse_extended_result{A,W}, ldap_parse_reference{A,W},
	ldap_parse_result{A,W}, ldap_parse_sort_control{A,W} and
	ldap_parse_vlv_control{A,W}.  Stub implementations for
	ldap_parse_page_control{A,W}.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/misc.c, dlls/wldap32/search.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.spec:
	Stub implementations for functions handling paged search results.
	Add some missing declarations.

2005-12-01  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/tests/domdoc.c:
	Make the node object aggregatable so that the element object (and in
	future all of the other node types) can use it.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	Check for need to add area to the reserved list also on unmap.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/virtual.c:
	Ignore the large address space flag when version is win9x.

2005-12-01  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/delete.c:
	Document the ldap_delete* functions.

2005-12-01  Rein Klazes <wijn@wanadoo.nl>

	* programs/wcmd/builtins.c, programs/wcmd/wcmdmain.c:
	Don't use formatted output in WCMD_setshow_sortenv.
	Don't use unsafe vsprintf in WCMD_output.

2005-12-01  Oldrich Jedlicka <oldium.pro@seznam.cz>

	* dlls/x11drv/dib.c:
	Fix for the monochrome DIB with inverted colors.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/tests/headers.c:
	Improved the CHECK_DEF macro to avoid code duplication.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	Make dump functions const.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Added implementation of OLEIVERB_SHOW in DoVerb.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Remove broken return value handling code and that would reference
	memory beyond the end of the arguments array. Replace it with code
	that properly handles referencing the return type and setting the
	return type to VT_VOID when a dispinterface function doesn't have any
	return value.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/except.c, dlls/msvcrt/msvcrt.h, dlls/msvcrt/tests/headers.c:
	Prefix signal definitions with MSVCRT_ to avoid conflicts with system
	headers.

2005-12-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/cdrom.c, dlls/ntdll/file.c, include/winsock2.h,
	  programs/regedit/treeview.c, server/registry.c:
	Fixed some compiler warnings on Darwin.

2005-12-01  Pavel Roskin <proski@gnu.org>

	* programs/notepad/dialog.c, programs/notepad/main.c:
	Improve font support in Notepad.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Introduce a variable "elemdesc" to eliminate some long common
	expressions.
	Move the contents of the second arguments loop inside the first.
	Move the MSFT_ReadLEDWords so that it is the last statement in the
	loop since it is one of the iterators.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Don't truncate large integer constants.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added IOleInPlaceActiveObject stub implementation.

2005-12-01  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec, include/advpub.h:
	Add a stub for AdvInstallFile.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* configure, configure.ac, dlls/wininet/netconnection.c,
	  include/config.h.in:
	Cleanup SSL connections properly, do a few security checks in
	NETCON_secure_connect and display errors from SSL on failure. Don't
	use SSL_set_bio as SSL_set_fd is cleaner for us.

2005-12-01  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/listbox.c, dlls/user/tests/listbox.c:
	Add a test for LB_SELITEMRANGE, make it pass under Wine.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/stdole2.tlb/std_ole_v2.idl:
	Fix the entry attributes of the two module functions and uncomment
	LoadPicture, but comment out the defaultvalue attribute that causes
	widl to issue a warning.

2005-12-01  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	The pparamdescex of an ELEMDESC should only be copied if wParamFlags &
	PARAMFLAG_DHASDEFAULT.
	Make ITypeInfo_ReleaseVarDesc use TLB_FreeElemDesc.

2005-12-01  Steven Edwards <steven@codeweavers.com>

	* dlls/wldap32/search.c, dlls/wldap32/wldap32.spec:
	Add stubs for ldap_search_init_page[A/W].

2005-12-01  Detlef Riekenberg <wine.dev@web.de>

	* dlls/x11drv/winpos.c:
	Remove unused include X11/IntrinsicP.h.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c:
	Added SetObjectRects implementation.

2005-12-01  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c:
	Return S_OK in [On|Can]InPlaceActivate.
	Handle IOleDocumentSite in QueryInterface.

2005-12-01  Rein Klazes <wijn@wanadoo.nl>

	* dlls/gdi/freetype.c:
	Make WineEngGetFontData always return the used byte count.

2005-11-30  Peter Lemenkov <petro@mail.ru>

	* include/winuser.h:
	Added WS_EX_COMPOSITED.

2005-11-30  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/painting.c, dlls/user/tests/msg.c:
	Add a test for RedrawWindow with an empty region/rectangle, make it
	pass under Wine.

2005-11-30  Willie Sippel <willie@zeitgeistmedia.net>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Added more Nvidia card IDs.

2005-11-30  Alexandre Julliard <julliard@winehq.org>

	* tools/winewrapper:
	Added support for Darwin DYLD_LIBRARY_PATH.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/Makefile.in, server/directory.c, server/object.h,
	  server/protocol.def, server/request.h, server/symlink.c,
	  server/trace.c:
	Implement symbolic link object in wineserver.
	Implement Nt[Create|Open|Query]SymbolicLinkObject.
	Change tests accordingly.

2005-11-30  Markus Gömmel <m.goemmel@compulab.de>

	* dlls/shell32/shellpath.c:
	Added CSIDL_MYVIDEO|MYPICTURES|MYMUSIC to _SHRegisterUserShellFolders.

2005-11-30  Oldrich Jedlicka <oldium.pro@seznam.cz>

	* dlls/x11drv/dib.c:
	Fix for RGB mask that corresponds to the visual's mask.

2005-11-30  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/control.c:
	Document the ldap_control* functions.

2005-11-30  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shlexec.c:
	Fix context menu handling for more than one entry in order to repair
	.lnk-file execution: Don't break at the first non-matching entry.

2005-11-30  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c:
	Added some checks on wglCreatContext to avoid problems (and
	SetLastErrors).

2005-11-30  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec:
	Added stub for CryptVerifyMessageSignature.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	ShowWindows(SW_SHOWMAXIMIZED) should ignore WS_MAXIMIZE window
	state. Change tests accordingly.

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/user/win.c:
	New maximized visible window should be shown with
	ShowWindow(SW_SHOW).

2005-11-30  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c, dlls/x11drv/window.c:
	CreateWindow should not activate invisible minimized or maximized
	windows.
	Add several tests to show the correct behavior.

2005-11-30  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/install.c:
	Fix version tests on windows 9x/ME.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/http.c:
	Test the behaviour of HttpSendRequestEx when putting data into the
	lpvBuffer.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.c, dlls/wininet/internet.h:
	Remove duplicated code by modifying HTTP_HttpSendRequest so that it
	can be used by both HttpSendRequest and HttpSendRequestEx.
	Also allow HttpSendRequestEx to be used asynchronously.

2005-11-30  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/netapi32/netapi32.c, include/lm.h, include/lmaccess.h,
	  include/lmserver.h, include/lmwksta.h:
	Add some prototypes to include/ for already existing functions in
	netapi32.

2005-11-30  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api,
	  tools/winapi/winapi_function.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	Update win32.api to current cvs.
	Add __RPC_USER as a calling convention in winapi.

2005-11-30  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Add support for Intel drivers version string.
	Update default driver version (nvidia).

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/x11drv/xrender.c:
	Disable XRender if bit masks aren't valid.
	XRender code in the X11 driver will go into an infinite loop when the
	colour bit masks are 0, so disable XRender in this case.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/msi/registry.c:
	The buffer sizes in the documentation for MsiDecomposeDescriptorW don't
	include the NULL terminator, so fix this.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Remove call to StrCatW by passing in NULL for lpszExtraInformation in
	the call to InternetCrackUrl, which concatenates the params onto the
	path.
	Some other minor cleanups.

2005-11-30  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Factor out code for doing ELEMDESC sizes and copies.
	Copy FUNCDESC structures returned to calling applications instead of
	passing a pointer to the master structure used internally.
	Call VariantInit on newly allocated memory before calling VariantCopy.

2005-11-29  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac:
	Link to the reentrant version of libldap.

2005-11-29  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/iccvid/iccvid_Ko.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_Ko.rc, dlls/msvidc32/rsrc.rc:
	Add Korean translations.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/om.c, dlls/ntdll/tests/om.c, include/wine/server_protocol.h,
	  server/Makefile.in, server/directory.c, server/main.c,
	  server/object.c, server/object.h, server/protocol.def,
	  server/request.c, server/request.h, server/trace.c:
	Implement directory object in wineserver.
	Implement Nt[Create|Open]DirectoryObject.
	Change tests accordingly.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Check for a valid module before attempting to read the export
	directory in LdrGetProcedureAddress.

2005-11-29  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winsock/socket.c, dlls/winsock/tests/sock.c:
	Clear the reference counter in WSACleanup, with regression test.

2005-11-29  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/compare.c:
	Document the ldap_compare* functions.

2005-11-29  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/stateblock.c, dlls/wined3d/wined3d_private.h,
	  include/wine/wined3d_interface.h:
	Added support for vertex and pixel shader constants that have no type
	i.e. they haven't been set yet or are clear.

2005-11-29  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/netapi32/Makefile.in, dlls/netapi32/ds.c,
	  dlls/netapi32/netapi32.spec, dlls/netapi32/tests/.gitignore,
	  dlls/netapi32/tests/Makefile.in, dlls/netapi32/tests/ds.c,
	  include/Makefile.in, include/dsrole.h:
	Added some stubbed Ds-calls
	Start of conformance tests for these Ds-calls.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/stack.c, include/dbghelp.h:
	Stub StackWalk64.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  dlls/dbghelp/path.c, include/dbghelp.h:
	Added support for 'loading' virtual modules.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/symbol.c, include/dbghelp.h:
	Implemented SymGet{Next|Prev}Line64.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/module.c:
	Now correctly checking calling down to 32 bit version.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	HttpSendRequestExA/W doesn't touch lpBuffersIn->Next, so simplify the
	code a bit.
	Modify test case to demonstrate this.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	Implemented SymGetModuleInfo64.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/Makefile.in, dlls/ole32/ole32.spec,
	  dlls/ole32/tests/Makefile.in, dlls/ole32/tests/marshal.c,
	  dlls/ole32/usrmarshal.c:
	Implement some user marshal functions and add tests.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	More lpszServerName -> lpszHostName fixes.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/module.c, include/dbghelp.h:
	Implemented SymUnloadModule64.

2005-11-29  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	Returned versions are always initialized to zero, even on failure.
	Function always returns S_OK, even on failure.
	Copy the file to the temp directory if the file exists but isn't found
	by GetFileVersionInfoSize.
	If bVersion is FALSE, return the language and code page identifiers of
	the file, not the system.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix redirects from secure to non-secure and vice versa.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Implement ITypeInfo_Bind for typelibs.
	Fix some places where a returned object was AddRef'd.
	Make the search through implemented types work on all types, not just
	interfaces.

2005-11-29  Peter Lemenkov <petro@mail.ru>

	* include/shellapi.h:
	Added some definitions.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/mci.c:
	Fixed some bugs in MCI string parsing.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec,
	  dlls/dbghelp/dbghelp_private.h, dlls/dbghelp/module.c,
	  include/dbghelp.h:
	Implemented SymLoadModuleEx.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/display.c,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c:
	Replaced stack_get_frame with a pure symbol (and no longer stackframe)
	oriented API (stack_get_current_symbol).
	Reused the func name (stack_get_frame) for internal stack.c handling.

2005-11-29  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/ole32res.rc:
	Made the Drag&Drop cursors' rubber band visible on a white background.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/bitblt.c, dlls/x11drv/graphics.c:
	Avoid including X11/Intrinsic.h.

2005-11-29  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/bitmap.c:
	Added support for doing SetBitmapBits on a DIB section.

2005-11-29  James Hawkins <truiken@gmail.com>

	* include/advpub.h:
	Add ADN_DEL_UNC_PATHS define to advpub.h.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Change all SendAsyncCallback calls into the synchronous
	INTERNET_SendCallback where INTERNET_FLAG_ASYNC is already handled
	properly.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* include/objidl.idl:
	Make IAdviseSink methods non-async and remove the IAsyncManager
	parameter hack that native COM used to use (but not any more). Async
	calls are an optimisation that we're not going to support in the near
	future.

2005-11-29  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl.c:
	Fixed crash in wglShareList.

2005-11-29  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dmusic/dmusic.c, dlls/dmusic/dmusic_private.h, dlls/dmusic/port.c:
	Fix implementation of IDirectMusic8Impl_CreatePort.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* include/cvconst.h:
	Added calling convention definitions.

2005-11-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp.spec, include/dbghelp.h:
	Added stub for dbghelp.SymRegisterCallback64.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Add functions for doing a deep copy of a TYPEDESC into a flat buffer.
	Copy VARDESC structures returned to calling applications instead of
	passing a pointer to the master structure used internally.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.h, dlls/rpcrt4/cstub.c:
	Add a function to retrieve the MIDL_SERVER_INFO struct from an object.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/cpsf.c:
	The CLSID can be substituted by an IID present in one of the proxy
	file infos in NdrDllGetClassObject.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_midl.c:
	Return the correct error code from NdrProxyErrorHandler.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_ole.c:
	Raise exceptions on failures.
	Replace references of pStubMsg->BufferEnd with RpcMsg->Buffer +
	pStubMsg->BufferLength.
	Fix buffer calculation when no interface data is marshaled to the
	stream.

2005-11-29  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Fix the overflow check to not depend on pStubMsg->BufferStart and
	pStubMsg->BufferEnd being valid, because they aren't filled in when
	using MIDL-generated server stubs.
	Don't set the pointer to NULL on unmarshaling because we may want to
	unmarshal the value to an existing pointer instead of allocating a new
	one.

2005-11-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/win.c, dlls/user/win.c:
	EnumChildWindows should return result from the callback.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Activate document object.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* include/shlobj.h:
	Remove unnecessary external variable declarations.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/iccvid/iccvid.spec, dlls/mciavi32/mciavi.c,
	  dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c, dlls/midimap/midimap.c,
	  dlls/msacm/imaadp32/imaadp32.c, dlls/msacm/msadp32/msadp32.c,
	  dlls/msacm/msg711/msg711.c, dlls/msacm/pcmconverter.c,
	  dlls/msacm/winemp3/mpegl3.c, dlls/msrle32/msrle32.c,
	  dlls/msvidc32/msvidc32.spec, dlls/msvidc32/msvideo1.c,
	  dlls/winmm/joystick/joystick.c, dlls/winmm/mciwave/mciwave.c,
	  dlls/winmm/wavemap/wavemap.c, dlls/winmm/winealsa/alsa.c,
	  dlls/winmm/winearts/arts.c, dlls/winmm/wineaudioio/audioio.c,
	  dlls/winmm/wineesd/esound.c, dlls/winmm/winejack/jack.c,
	  dlls/winmm/winemm.h, dlls/winmm/winenas/nas.c,
	  dlls/winmm/wineoss/oss.c:
	Fix all drivers DriverProc to conform to the DRIVERPROC definition.

2005-11-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec, dlls/crypt32/main.c:
	Fix parameter count on some stubs (thanks to Marcus Meissner for
	spotting that.)  Add a few more stubs.

2005-11-28  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/iccvid/iccvid_De.rc, dlls/iccvid/rsrc.rc,
	  dlls/msvidc32/msvidc32_De.rc, dlls/msvidc32/rsrc.rc:
	Add German resources.

2005-11-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c:
	Document the ldap_bind* functions.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Enhanced UnixFolder's IDropTarget implementation.
	Use STATIC_CAST macro more consistently.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/spec16.c:
	Preserve 16-byte stack alignment in 16-bit relays.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* tools/winebuild/relay.c:
	Enforce 16-byte stack alignment when returning from 16-bit code and
	when calling a register function.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_lmhash.c,
	  dlls/advapi32/lsa.c, dlls/advapi32/registry.c,
	  dlls/advapi32/security.c, dlls/dbghelp/minidump.c,
	  dlls/dbghelp/path.c, dlls/dbghelp/stack.c,
	  dlls/dplayx/dplayx_messages.c, dlls/imagehlp/integrity.c,
	  dlls/kernel/actctx.c, dlls/kernel/change.c, dlls/kernel/comm.c,
	  dlls/kernel/computername.c, dlls/kernel/debugger.c,
	  dlls/kernel/environ.c, dlls/kernel/except.c, dlls/kernel/file.c,
	  dlls/kernel/format_msg.c, dlls/kernel/global16.c,
	  dlls/kernel/instr.c, dlls/kernel/locale.c, dlls/kernel/module.c,
	  dlls/kernel/oldconfig.c, dlls/kernel/path.c, dlls/kernel/process.c,
	  dlls/kernel/resource.c, dlls/kernel/sync.c, dlls/kernel/thread.c,
	  dlls/kernel/time.c, dlls/kernel/version.c, dlls/kernel/virtual.c,
	  dlls/kernel/volume.c, dlls/mcicda/mcicda.c, dlls/netapi32/wksta.c,
	  dlls/ntdll/atom.c, dlls/ntdll/cdrom.c, dlls/ntdll/critsection.c,
	  dlls/ntdll/debugbuffer.c, dlls/ntdll/debugtools.c,
	  dlls/ntdll/directory.c, dlls/ntdll/env.c, dlls/ntdll/error.c,
	  dlls/ntdll/exception.c, dlls/ntdll/file.c, dlls/ntdll/handletable.c,
	  dlls/ntdll/heap.c, dlls/ntdll/large_int.c, dlls/ntdll/loader.c,
	  dlls/ntdll/nt.c, dlls/ntdll/ntdll_misc.h, dlls/ntdll/om.c,
	  dlls/ntdll/path.c, dlls/ntdll/process.c, dlls/ntdll/reg.c,
	  dlls/ntdll/resource.c, dlls/ntdll/rtl.c, dlls/ntdll/rtlstr.c,
	  dlls/ntdll/sec.c, dlls/ntdll/server.c, dlls/ntdll/sync.c,
	  dlls/ntdll/tests/large_int.c, dlls/ntdll/tests/rtlstr.c,
	  dlls/ntdll/thread.c, dlls/ntdll/time.c, dlls/ntdll/version.c,
	  dlls/ntdll/virtual.c, dlls/powrprof/powrprof.c,
	  dlls/psapi/psapi_main.c, dlls/quartz/filesource.c,
	  dlls/rpcrt4/rpc_server.c, dlls/rpcrt4/rpcss_np_client.c,
	  dlls/user/cursoricon.c, dlls/user/message.c, dlls/user/painting.c,
	  dlls/user/winpos.c, dlls/vmm.vxd/vmm.c, dlls/winedos/int2f.c,
	  dlls/winedos/vxd.c, dlls/wininet/internet.c, dlls/winmm/mmsystem.c,
	  dlls/winsock/socket.c, dlls/x11drv/dce.c, dlls/x11drv/winpos.c,
	  include/ntstatus.h, include/winnt.h, programs/rpcss/np_server.c,
	  programs/wcmd/wcmdmain.c, programs/winedbg/dbg.y,
	  programs/winedbg/debugger.h, programs/winedbg/gdbproxy.c,
	  server/atom.c, server/change.c, server/class.c, server/clipboard.c,
	  server/console.c, server/debugger.c, server/event.c, server/fd.c,
	  server/file.c, server/handle.c, server/hook.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/process.c, server/ptrace.c, server/queue.c,
	  server/region.c, server/registry.c, server/semaphore.c,
	  server/serial.c, server/snapshot.c, server/sock.c, server/thread.c,
	  server/thread.h, server/timer.c, server/token.c, server/trace.c,
	  server/window.c, server/winstation.c:
	Match PSDK STATUS_* definitions.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/iccvid.c, dlls/msrle32/msrle32.c,
	  dlls/msrle32/msrle_private.h, dlls/msvidc32/msvideo1.c,
	  dlls/msvideo/msvideo_main.c, include/vfw.h:
	Set both dwVersionICM and dwVersion to ICVERSION in Wine builtin
	codecs.

2005-11-28  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	Allow HttpEndRequest to process 302 and 301 redirects.  Append Host
	port if non standard on the redirect host header and make sure to
	append the extra information (parameters) and such to the location if
	present.  Additionally check to see if we are redirecting to https and
	if so set the appropriate port.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c:
	Added GetOverrideKeyPath and GetOptionKeyPath implementation.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Use GetUIObjectOf instead of BindToObject to get a IDropTarget object.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/shlexec.c:
	Other code in shlexec.c (e.g. the extension handling code in
	ShellExecute_GetClassKey) expects sei->lpFile to not be enclosed in
	quotes.

2005-11-28  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/info.c:
	Documentation added for GetPrinterDriverDirectoryW + A.

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/ddk/wdm.h:
	Add directory and symlink access rights.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Add support for using secure (SSL/TLS) connections through a proxy
	server.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/netconnection.c:
	Move the initiation of the SSL connection into a separate function.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/menu.c, dlls/user/tests/menu.c:
	set_menu_item_text handles converting an empty menu item to a
	separator on its own, give it a chance to do its work in the
	MIIM_FTYPE case.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Add a host port field that preserves the requested port of the
	destination URL.

2005-11-28  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/usp10/usp10.c, include/usp10.h:
	Added some missing definitions in usp10.h.

2005-11-28  Rein Klazes <wijn@wanadoo.nl>

	* dlls/x11drv/graphics.c:
	Handle an X error in X11DRV_ExtFloodFill().

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix "http://" prefix detection on the proxy URL.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_midl.c:
	Make sure to fill out the MIDL_STUB_MESSAGE structure in
	NdrSendReceive like we do in NdrProxySendReceive.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement conformant varying array functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement conformant struct functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Implement FC_STRUCTPAD2 for complex types.

2005-11-28  Rein Klazes <wijn@wanadoo.nl>

	* dlls/gdi/gdi32.spec, dlls/gdi/palette.c:
	Add stub implementation for SetMagicColors().

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c, dlls/atl/atlbase.h:
	Added AtlAxCreateControl stub implementation.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Replace some useless checks in HTTP_AddProxyInfo with asserts.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added IOleDocumentSite implementation.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Simplify and fix Set-Cookie handling.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement IOleObject_DoVerb function by running the object and then
	delegating to the remote IOleObject_DoVerb function.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Add functions for marshaling base types (ints, floats, etc.).

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/dochost.c, dlls/shdocvw/oleobject.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Better windows handling.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shell32_main.h:
	Modified KeyStateToDropEffect macro to match native shellview's
	behaviour.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Simplify HTTP_InsertProxyAuthorization.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj_private.h, dlls/ole32/defaulthandler.c,
	  dlls/ole32/oleobj.c:
	Delegate advises to the remote object to enable the client to receive
	data change notifications.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c, dlls/rpcrt4/ndr_misc.h:
	Extend conformance computation function to also compute variances.
	MSDN suggests that conformance and variance are pretty much the same,
	but there may be some subtleties to it.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/frame.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Added implementation of GetWindowContext.
	Added stub implementation of IOleInPlaceFrame interface.

2005-11-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/iccvid/.gitignore, dlls/msvidc32/.gitignore:
	Ignore generated rsrc.res.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shlview.c:
	Register the shell view itself as the drop target, not it's parent folder.
	Forward drag&drop method calls to the folder currently under the cursor.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c:
	Change some SendAsyncCallback calls to INTERNET_SendCallback as the
	tests show that the callbacks happen either synchronously or within an
	alternative asynchronous call.
	Remove a check for a NULL lpfnStatusCB that is already performed by
	INTERNET_SendCallback and add a comment about a difference to native.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Add parsing of the Content-ID and Proxy-Connection headers.
	Sort the table of header to option number mappings correctly.
	Change a FIXME to a WARN because there are "X-..." headers that we
	aren't supposed to parse.

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/imagehlp.h:
	Add some 64 bit definitions.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Stop reporting not having swapchain 0 as an error and add an internal
	variable instead of modifying a parameter.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexdeclaration.c:
	Correct some errors in the way vertex declarations for directx 8 are
	parsed and add offset support.

2005-11-28  Ge van Geldorp <gvg@reactos.org>

	* dlls/shell32/iconcache.c:
	Load shortcut icon by resource id instead of by icon index.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Call DefaultHandler_Stop if we fail to start the server running
	correctly and a few formatting fixes.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Fix NdrConformantArrayBufferSize to include the size of the
	conformance value.
	Make NdrConformantArrayMemorySize do something more useful, like
	actually return the required memory.
	Conformance offset can be negative and should only be two bytes.

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvidc32/Makefile.in, dlls/msvidc32/msvidc32_En.rc,
	  dlls/msvidc32/msvidc32_private.h, dlls/msvidc32/msvideo1.c,
	  dlls/msvidc32/rsrc.rc:
	Add support for ICM_GETINFO in msvidc32 codec (based on msrle32).

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/iccvid/Makefile.in, dlls/iccvid/iccvid.c, dlls/iccvid/iccvid_En.rc,
	  dlls/iccvid/iccvid_private.h, dlls/iccvid/rsrc.rc:
	Add support for ICM_GETINFO in iccvid codec (based on msrle32).

2005-11-28  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msrle32/msrle32.c, dlls/msvideo/msvideo_main.c:
	Fix several bugs in msrle32 preventing it to load.
	Remove a hack in ICOpen compensating a bug in msrle32.
	Use MSVFW32_hModule directly in ICCompressorChoose, and avoid a
	convoluted GWLP_HINSTANCE hack.

2005-11-28  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/winmm/winmm_Ko.rc, programs/wcmd/Ko.rc, programs/winecfg/Ko.rc:
	Update Korean translations.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/ole32res.rc:
	Correct the hot spot position of the drag&drop 'move' and 'link' cursors.

2005-11-28  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/webbrowser.c:
	Don't crash when parameters of Navigate2 are NULL.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Add a new field "lpszHostName" to the session to track the host name
	of the HTTP server, as opposed to the server that we will connect to
	that could be a proxy server. Fixes the "Host:" header that we send to
	servers.

2005-11-28  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/winmm/winmm.c:
	LoadLibrary16 is no longer exported by name, so do the lookup by its
	ordinal (when loading NE sibling).

2005-11-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/cdrom.c:
	Handle IOCTL_DISK_CHECK_VERIFY which is synonym for
	IOCTL_STORAGE_CHECK_VERIFY.

2005-11-28  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/stack.c, include/dbghelp.h:
	Added stubs for DbgHelp functions: SymRegisterFunctionEntryCallback.

2005-11-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	Correct the matrix sizes in software shaders and remove an erroneous
	parameter from lrp.

2005-11-28  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/x11drv/settings.c:
	Ignore frequency requests in Desktop mode.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Call the equivalent delegate function for all of the simple
	functions.

2005-11-28  Robert Shearman <rob@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	We should always allocate in NdrConformantStringUnmarshal if the
	memory pointer is NULL.

2005-11-28  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/dinput/device.c:
	Handle DInput8 interfaces in device QueryInterface.

2005-11-28  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c:
	Document the ldap_add* functions.

2005-11-28  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/bitblt.c:
	If the driver doesn't support StretchBlt try to use StretchDIBits
	instead.

2005-11-28  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/shfldr_desktop.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/tests/shlfolder.c:
	Correctly call HCR_GetFolderAttributes() in SHELL32_GetItemAttributes().
	Directly return the correct "My Computer" attributes in
	ISF_Desktop_fnGetAttributesOf().
	Remove "todo_wine" from the "My Computer" attributes test case.
	Add test case for retrieving the file system path from the
	CSIDL_PROGRAM_FILES PIDL using SHGetPathFromIDListW().

2005-11-28  YunSong Hwang <hys545@dreamwiz.com>

	* documentation/README.ko:
	Add a translation of the README.

2005-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	If a source directory doesn't exist, use the install root instead.

2005-11-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Handle the ^ character in MaskEdit controls.

2005-11-28  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dmime/dmime_private.h, dlls/dmime/performance.c:
	Partial implementation of IDirectMusicPerformance8Impl_AddPort.

2005-11-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Initial stubbed implementation of UnixFolder's IDropTarget interface.

2005-11-28  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/kernel/process.c:
	Initialize file_exists to 0 at exe load test, prevents mistaking of
	UTF-8 encoded exenames as builtins.

2005-11-26  Alexandre Julliard <julliard@winehq.org>

	* .gitignore, dlls/.gitignore, dlls/winspool/.gitignore, libs/.gitignore,
	  programs/avitools/.gitignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.gitignore, programs/control/.gitignore,
	  programs/eject/.gitignore, programs/expand/.gitignore,
	  programs/explorer/.gitignore, programs/hh/.gitignore,
	  programs/msiexec/.gitignore, programs/notepad/.gitignore,
	  programs/progman/.gitignore, programs/regedit/.gitignore,
	  programs/regsvr32/.gitignore, programs/rpcss/.gitignore,
	  programs/rundll32/.gitignore, programs/start/.gitignore,
	  programs/taskmgr/.gitignore, programs/uninstaller/.gitignore,
	  programs/view/.gitignore, programs/wcmd/.gitignore,
	  programs/wineboot/.gitignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.gitignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.gitignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.gitignore,
	  programs/winepath/.gitignore, programs/winetest/.gitignore,
	  programs/winevdm/.gitignore, programs/winhelp/.gitignore,
	  programs/winver/.gitignore, tools/winegcc/.gitignore:
	Ignore symlink files too (needed for git).

2005-11-26  Alexandre Julliard <julliard@winehq.org>

	* .cvsignore, .gitignore, dlls/.cvsignore, dlls/.gitignore,
	  dlls/activeds/.cvsignore, dlls/activeds/.gitignore,
	  dlls/advapi32/.cvsignore, dlls/advapi32/.gitignore,
	  dlls/advapi32/tests/.cvsignore, dlls/advapi32/tests/.gitignore,
	  dlls/advpack/.cvsignore, dlls/advpack/.gitignore,
	  dlls/advpack/tests/.cvsignore, dlls/advpack/tests/.gitignore,
	  dlls/amstream/.cvsignore, dlls/amstream/.gitignore,
	  dlls/atl/.cvsignore, dlls/atl/.gitignore, dlls/avicap32/.cvsignore,
	  dlls/avicap32/.gitignore, dlls/avifil32/.cvsignore,
	  dlls/avifil32/.gitignore, dlls/cabinet/.cvsignore,
	  dlls/cabinet/.gitignore, dlls/capi2032/.cvsignore,
	  dlls/capi2032/.gitignore, dlls/cards/.cvsignore,
	  dlls/cards/.gitignore, dlls/cfgmgr32/.cvsignore,
	  dlls/cfgmgr32/.gitignore, dlls/comcat/.cvsignore,
	  dlls/comcat/.gitignore, dlls/comctl32/.cvsignore,
	  dlls/comctl32/.gitignore, dlls/comctl32/tests/.cvsignore,
	  dlls/comctl32/tests/.gitignore, dlls/commdlg/.cvsignore,
	  dlls/commdlg/.gitignore, dlls/crtdll/.cvsignore,
	  dlls/crtdll/.gitignore, dlls/crypt32/.cvsignore,
	  dlls/crypt32/.gitignore, dlls/crypt32/tests/.cvsignore,
	  dlls/crypt32/tests/.gitignore, dlls/cryptdll/.cvsignore,
	  dlls/cryptdll/.gitignore, dlls/ctl3d/.cvsignore,
	  dlls/ctl3d/.gitignore, dlls/d3d8/.cvsignore, dlls/d3d8/.gitignore,
	  dlls/d3d9/.cvsignore, dlls/d3d9/.gitignore, dlls/d3dim/.cvsignore,
	  dlls/d3dim/.gitignore, dlls/d3drm/.cvsignore, dlls/d3drm/.gitignore,
	  dlls/d3dx8/.cvsignore, dlls/d3dx8/.gitignore, dlls/d3dxof/.cvsignore,
	  dlls/d3dxof/.gitignore, dlls/dbghelp/.cvsignore,
	  dlls/dbghelp/.gitignore, dlls/dciman32/.cvsignore,
	  dlls/dciman32/.gitignore, dlls/ddraw/.cvsignore,
	  dlls/ddraw/.gitignore, dlls/ddraw/tests/.cvsignore,
	  dlls/ddraw/tests/.gitignore, dlls/devenum/.cvsignore,
	  dlls/devenum/.gitignore, dlls/dinput/.cvsignore,
	  dlls/dinput/.gitignore, dlls/dinput/tests/.cvsignore,
	  dlls/dinput/tests/.gitignore, dlls/dinput8/.cvsignore,
	  dlls/dinput8/.gitignore, dlls/dmband/.cvsignore,
	  dlls/dmband/.gitignore, dlls/dmcompos/.cvsignore,
	  dlls/dmcompos/.gitignore, dlls/dmime/.cvsignore,
	  dlls/dmime/.gitignore, dlls/dmloader/.cvsignore,
	  dlls/dmloader/.gitignore, dlls/dmscript/.cvsignore,
	  dlls/dmscript/.gitignore, dlls/dmstyle/.cvsignore,
	  dlls/dmstyle/.gitignore, dlls/dmsynth/.cvsignore,
	  dlls/dmsynth/.gitignore, dlls/dmusic/.cvsignore,
	  dlls/dmusic/.gitignore, dlls/dmusic32/.cvsignore,
	  dlls/dmusic32/.gitignore, dlls/dplay/.cvsignore,
	  dlls/dplay/.gitignore, dlls/dplayx/.cvsignore,
	  dlls/dplayx/.gitignore, dlls/dpnet/.cvsignore, dlls/dpnet/.gitignore,
	  dlls/dpnhpast/.cvsignore, dlls/dpnhpast/.gitignore,
	  dlls/dsound/.cvsignore, dlls/dsound/.gitignore,
	  dlls/dsound/tests/.cvsignore, dlls/dsound/tests/.gitignore,
	  dlls/dswave/.cvsignore, dlls/dswave/.gitignore,
	  dlls/dxdiagn/.cvsignore, dlls/dxdiagn/.gitignore,
	  dlls/dxerr8/.cvsignore, dlls/dxerr8/.gitignore,
	  dlls/dxerr9/.cvsignore, dlls/dxerr9/.gitignore,
	  dlls/dxguid/.cvsignore, dlls/dxguid/.gitignore, dlls/gdi/.cvsignore,
	  dlls/gdi/.gitignore, dlls/gdi/tests/.cvsignore,
	  dlls/gdi/tests/.gitignore, dlls/glu32/.cvsignore,
	  dlls/glu32/.gitignore, dlls/glut32/.cvsignore,
	  dlls/glut32/.gitignore, dlls/hhctrl.ocx/.cvsignore,
	  dlls/hhctrl.ocx/.gitignore, dlls/iccvid/.cvsignore,
	  dlls/iccvid/.gitignore, dlls/icmp/.cvsignore, dlls/icmp/.gitignore,
	  dlls/ifsmgr.vxd/.cvsignore, dlls/ifsmgr.vxd/.gitignore,
	  dlls/imagehlp/.cvsignore, dlls/imagehlp/.gitignore,
	  dlls/imm32/.cvsignore, dlls/imm32/.gitignore,
	  dlls/iphlpapi/.cvsignore, dlls/iphlpapi/.gitignore,
	  dlls/iphlpapi/tests/.cvsignore, dlls/iphlpapi/tests/.gitignore,
	  dlls/itss/.cvsignore, dlls/itss/.gitignore, dlls/kernel/.cvsignore,
	  dlls/kernel/.gitignore, dlls/kernel/messages/.cvsignore,
	  dlls/kernel/messages/.gitignore, dlls/kernel/tests/.cvsignore,
	  dlls/kernel/tests/.gitignore, dlls/lzexpand/.cvsignore,
	  dlls/lzexpand/.gitignore, dlls/lzexpand/tests/.cvsignore,
	  dlls/lzexpand/tests/.gitignore, dlls/mapi32/.cvsignore,
	  dlls/mapi32/.gitignore, dlls/mapi32/tests/.cvsignore,
	  dlls/mapi32/tests/.gitignore, dlls/mciavi32/.cvsignore,
	  dlls/mciavi32/.gitignore, dlls/mcicda/.cvsignore,
	  dlls/mcicda/.gitignore, dlls/mciseq/.cvsignore,
	  dlls/mciseq/.gitignore, dlls/midimap/.cvsignore,
	  dlls/midimap/.gitignore, dlls/mlang/.cvsignore,
	  dlls/mlang/.gitignore, dlls/mlang/tests/.cvsignore,
	  dlls/mlang/tests/.gitignore, dlls/mmdevldr.vxd/.cvsignore,
	  dlls/mmdevldr.vxd/.gitignore, dlls/monodebg.vxd/.cvsignore,
	  dlls/monodebg.vxd/.gitignore, dlls/mpr/.cvsignore,
	  dlls/mpr/.gitignore, dlls/msacm/.cvsignore, dlls/msacm/.gitignore,
	  dlls/msacm/imaadp32/.cvsignore, dlls/msacm/imaadp32/.gitignore,
	  dlls/msacm/msadp32/.cvsignore, dlls/msacm/msadp32/.gitignore,
	  dlls/msacm/msg711/.cvsignore, dlls/msacm/msg711/.gitignore,
	  dlls/msacm/tests/.cvsignore, dlls/msacm/tests/.gitignore,
	  dlls/msacm/winemp3/.cvsignore, dlls/msacm/winemp3/.gitignore,
	  dlls/mscms/.cvsignore, dlls/mscms/.gitignore,
	  dlls/mscms/tests/.cvsignore, dlls/mscms/tests/.gitignore,
	  dlls/msdmo/.cvsignore, dlls/msdmo/.gitignore, dlls/mshtml/.cvsignore,
	  dlls/mshtml/.gitignore, dlls/mshtml/tests/.cvsignore,
	  dlls/mshtml/tests/.gitignore, dlls/msi/.cvsignore,
	  dlls/msi/.gitignore, dlls/msi/tests/.cvsignore,
	  dlls/msi/tests/.gitignore, dlls/msimg32/.cvsignore,
	  dlls/msimg32/.gitignore, dlls/msisys/.cvsignore,
	  dlls/msisys/.gitignore, dlls/msnet32/.cvsignore,
	  dlls/msnet32/.gitignore, dlls/msrle32/.cvsignore,
	  dlls/msrle32/.gitignore, dlls/msvcrt/.cvsignore,
	  dlls/msvcrt/.gitignore, dlls/msvcrt/tests/.cvsignore,
	  dlls/msvcrt/tests/.gitignore, dlls/msvcrt20/.cvsignore,
	  dlls/msvcrt20/.gitignore, dlls/msvcrt40/.cvsignore,
	  dlls/msvcrt40/.gitignore, dlls/msvcrtd/.cvsignore,
	  dlls/msvcrtd/.gitignore, dlls/msvcrtd/tests/.cvsignore,
	  dlls/msvcrtd/tests/.gitignore, dlls/msvidc32/.cvsignore,
	  dlls/msvidc32/.gitignore, dlls/msvideo/.cvsignore,
	  dlls/msvideo/.gitignore, dlls/mswsock/.cvsignore,
	  dlls/mswsock/.gitignore, dlls/msxml3/.cvsignore,
	  dlls/msxml3/.gitignore, dlls/msxml3/tests/.cvsignore,
	  dlls/msxml3/tests/.gitignore, dlls/netapi32/.cvsignore,
	  dlls/netapi32/.gitignore, dlls/netapi32/tests/.cvsignore,
	  dlls/netapi32/tests/.gitignore, dlls/newdev/.cvsignore,
	  dlls/newdev/.gitignore, dlls/ntdll/.cvsignore, dlls/ntdll/.gitignore,
	  dlls/ntdll/tests/.cvsignore, dlls/ntdll/tests/.gitignore,
	  dlls/objsel/.cvsignore, dlls/objsel/.gitignore,
	  dlls/odbc32/.cvsignore, dlls/odbc32/.gitignore,
	  dlls/odbccp32/.cvsignore, dlls/odbccp32/.gitignore,
	  dlls/ole32/.cvsignore, dlls/ole32/.gitignore,
	  dlls/ole32/tests/.cvsignore, dlls/ole32/tests/.gitignore,
	  dlls/oleacc/.cvsignore, dlls/oleacc/.gitignore,
	  dlls/oleaut32/.cvsignore, dlls/oleaut32/.gitignore,
	  dlls/oleaut32/tests/.cvsignore, dlls/oleaut32/tests/.gitignore,
	  dlls/olecli/.cvsignore, dlls/olecli/.gitignore,
	  dlls/oledlg/.cvsignore, dlls/oledlg/.gitignore,
	  dlls/olepro32/.cvsignore, dlls/olepro32/.gitignore,
	  dlls/olesvr/.cvsignore, dlls/olesvr/.gitignore,
	  dlls/opengl32/.cvsignore, dlls/opengl32/.gitignore,
	  dlls/powrprof/.cvsignore, dlls/powrprof/.gitignore,
	  dlls/psapi/.cvsignore, dlls/psapi/.gitignore,
	  dlls/psapi/tests/.cvsignore, dlls/psapi/tests/.gitignore,
	  dlls/qcap/.cvsignore, dlls/qcap/.gitignore, dlls/quartz/.cvsignore,
	  dlls/quartz/.gitignore, dlls/quartz/tests/.cvsignore,
	  dlls/quartz/tests/.gitignore, dlls/rasapi32/.cvsignore,
	  dlls/rasapi32/.gitignore, dlls/riched20/.cvsignore,
	  dlls/riched20/.gitignore, dlls/richedit/.cvsignore,
	  dlls/richedit/.gitignore, dlls/rpcrt4/.cvsignore,
	  dlls/rpcrt4/.gitignore, dlls/rpcrt4/tests/.cvsignore,
	  dlls/rpcrt4/tests/.gitignore, dlls/rsabase/.cvsignore,
	  dlls/rsabase/.gitignore, dlls/rsabase/tests/.cvsignore,
	  dlls/rsabase/tests/.gitignore, dlls/rsaenh/.cvsignore,
	  dlls/rsaenh/.gitignore, dlls/rsaenh/tests/.cvsignore,
	  dlls/rsaenh/tests/.gitignore, dlls/secur32/.cvsignore,
	  dlls/secur32/.gitignore, dlls/secur32/tests/.cvsignore,
	  dlls/secur32/tests/.gitignore, dlls/sensapi/.cvsignore,
	  dlls/sensapi/.gitignore, dlls/serialui/.cvsignore,
	  dlls/serialui/.gitignore, dlls/setupapi/.cvsignore,
	  dlls/setupapi/.gitignore, dlls/setupapi/tests/.cvsignore,
	  dlls/setupapi/tests/.gitignore, dlls/shdocvw/.cvsignore,
	  dlls/shdocvw/.gitignore, dlls/shdocvw/tests/.cvsignore,
	  dlls/shdocvw/tests/.gitignore, dlls/shell32/.cvsignore,
	  dlls/shell32/.gitignore, dlls/shell32/tests/.cvsignore,
	  dlls/shell32/tests/.gitignore, dlls/shfolder/.cvsignore,
	  dlls/shfolder/.gitignore, dlls/shlwapi/.cvsignore,
	  dlls/shlwapi/.gitignore, dlls/shlwapi/tests/.cvsignore,
	  dlls/shlwapi/tests/.gitignore, dlls/snmpapi/.cvsignore,
	  dlls/snmpapi/.gitignore, dlls/stdole2.tlb/.cvsignore,
	  dlls/stdole2.tlb/.gitignore, dlls/stdole32.tlb/.cvsignore,
	  dlls/stdole32.tlb/.gitignore, dlls/sti/.cvsignore,
	  dlls/sti/.gitignore, dlls/strmiids/.cvsignore,
	  dlls/strmiids/.gitignore, dlls/tapi32/.cvsignore,
	  dlls/tapi32/.gitignore, dlls/twain/.cvsignore, dlls/twain/.gitignore,
	  dlls/unicows/.cvsignore, dlls/unicows/.gitignore,
	  dlls/url/.cvsignore, dlls/url/.gitignore, dlls/urlmon/.cvsignore,
	  dlls/urlmon/.gitignore, dlls/urlmon/tests/.cvsignore,
	  dlls/urlmon/tests/.gitignore, dlls/user/.cvsignore,
	  dlls/user/.gitignore, dlls/user/resources/.cvsignore,
	  dlls/user/resources/.gitignore, dlls/user/tests/.cvsignore,
	  dlls/user/tests/.gitignore, dlls/usp10/.cvsignore,
	  dlls/usp10/.gitignore, dlls/uuid/.cvsignore, dlls/uuid/.gitignore,
	  dlls/uxtheme/.cvsignore, dlls/uxtheme/.gitignore,
	  dlls/vdhcp.vxd/.cvsignore, dlls/vdhcp.vxd/.gitignore,
	  dlls/vdmdbg/.cvsignore, dlls/vdmdbg/.gitignore,
	  dlls/version/.cvsignore, dlls/version/.gitignore,
	  dlls/version/tests/.cvsignore, dlls/version/tests/.gitignore,
	  dlls/vmm.vxd/.cvsignore, dlls/vmm.vxd/.gitignore,
	  dlls/vnbt.vxd/.cvsignore, dlls/vnbt.vxd/.gitignore,
	  dlls/vnetbios.vxd/.cvsignore, dlls/vnetbios.vxd/.gitignore,
	  dlls/vtdapi.vxd/.cvsignore, dlls/vtdapi.vxd/.gitignore,
	  dlls/vwin32.vxd/.cvsignore, dlls/vwin32.vxd/.gitignore,
	  dlls/win32s/.cvsignore, dlls/win32s/.gitignore,
	  dlls/winaspi/.cvsignore, dlls/winaspi/.gitignore,
	  dlls/winecrt0/.cvsignore, dlls/winecrt0/.gitignore,
	  dlls/wined3d/.cvsignore, dlls/wined3d/.gitignore,
	  dlls/winedos/.cvsignore, dlls/winedos/.gitignore,
	  dlls/wineps/.cvsignore, dlls/wineps/.gitignore,
	  dlls/wininet/.cvsignore, dlls/wininet/.gitignore,
	  dlls/wininet/tests/.cvsignore, dlls/wininet/tests/.gitignore,
	  dlls/winmm/.cvsignore, dlls/winmm/.gitignore,
	  dlls/winmm/joystick/.cvsignore, dlls/winmm/joystick/.gitignore,
	  dlls/winmm/mciwave/.cvsignore, dlls/winmm/mciwave/.gitignore,
	  dlls/winmm/tests/.cvsignore, dlls/winmm/tests/.gitignore,
	  dlls/winmm/wavemap/.cvsignore, dlls/winmm/wavemap/.gitignore,
	  dlls/winmm/winealsa/.cvsignore, dlls/winmm/winealsa/.gitignore,
	  dlls/winmm/winearts/.cvsignore, dlls/winmm/winearts/.gitignore,
	  dlls/winmm/wineaudioio/.cvsignore, dlls/winmm/wineaudioio/.gitignore,
	  dlls/winmm/wineesd/.cvsignore, dlls/winmm/wineesd/.gitignore,
	  dlls/winmm/winejack/.cvsignore, dlls/winmm/winejack/.gitignore,
	  dlls/winmm/winenas/.cvsignore, dlls/winmm/winenas/.gitignore,
	  dlls/winmm/wineoss/.cvsignore, dlls/winmm/wineoss/.gitignore,
	  dlls/winnls/.cvsignore, dlls/winnls/.gitignore,
	  dlls/winsock/.cvsignore, dlls/winsock/.gitignore,
	  dlls/winsock/tests/.cvsignore, dlls/winsock/tests/.gitignore,
	  dlls/winspool/.cvsignore, dlls/winspool/.gitignore,
	  dlls/winspool/tests/.cvsignore, dlls/winspool/tests/.gitignore,
	  dlls/wintab32/.cvsignore, dlls/wintab32/.gitignore,
	  dlls/wintrust/.cvsignore, dlls/wintrust/.gitignore,
	  dlls/wldap32/.cvsignore, dlls/wldap32/.gitignore,
	  dlls/wow32/.cvsignore, dlls/wow32/.gitignore,
	  dlls/wsock32/.cvsignore, dlls/wsock32/.gitignore,
	  dlls/wtsapi32/.cvsignore, dlls/wtsapi32/.gitignore,
	  dlls/x11drv/.cvsignore, dlls/x11drv/.gitignore,
	  documentation/.cvsignore, documentation/.gitignore, fonts/.cvsignore,
	  fonts/.gitignore, include/.cvsignore, include/.gitignore,
	  include/wine/.cvsignore, include/wine/.gitignore, libs/.cvsignore,
	  libs/.gitignore, libs/port/.cvsignore, libs/port/.gitignore,
	  libs/unicode/.cvsignore, libs/unicode/.gitignore,
	  libs/wine/.cvsignore, libs/wine/.gitignore, libs/wpp/.cvsignore,
	  libs/wpp/.gitignore, loader/.cvsignore, loader/.gitignore,
	  programs/.cvsignore, programs/.gitignore,
	  programs/avitools/.cvsignore, programs/avitools/.gitignore,
	  programs/clock/.cvsignore, programs/clock/.gitignore,
	  programs/cmdlgtst/.cvsignore, programs/cmdlgtst/.gitignore,
	  programs/control/.cvsignore, programs/control/.gitignore,
	  programs/eject/.cvsignore, programs/eject/.gitignore,
	  programs/expand/.cvsignore, programs/expand/.gitignore,
	  programs/explorer/.cvsignore, programs/explorer/.gitignore,
	  programs/hh/.cvsignore, programs/hh/.gitignore,
	  programs/msiexec/.cvsignore, programs/msiexec/.gitignore,
	  programs/notepad/.cvsignore, programs/notepad/.gitignore,
	  programs/progman/.cvsignore, programs/progman/.gitignore,
	  programs/regedit/.cvsignore, programs/regedit/.gitignore,
	  programs/regsvr32/.cvsignore, programs/regsvr32/.gitignore,
	  programs/rpcss/.cvsignore, programs/rpcss/.gitignore,
	  programs/rundll32/.cvsignore, programs/rundll32/.gitignore,
	  programs/start/.cvsignore, programs/start/.gitignore,
	  programs/taskmgr/.cvsignore, programs/taskmgr/.gitignore,
	  programs/uninstaller/.cvsignore, programs/uninstaller/.gitignore,
	  programs/view/.cvsignore, programs/view/.gitignore,
	  programs/wcmd/.cvsignore, programs/wcmd/.gitignore,
	  programs/wineboot/.cvsignore, programs/wineboot/.gitignore,
	  programs/winebrowser/.cvsignore, programs/winebrowser/.gitignore,
	  programs/winecfg/.cvsignore, programs/winecfg/.gitignore,
	  programs/wineconsole/.cvsignore, programs/wineconsole/.gitignore,
	  programs/winedbg/.cvsignore, programs/winedbg/.gitignore,
	  programs/winefile/.cvsignore, programs/winefile/.gitignore,
	  programs/winemenubuilder/.cvsignore,
	  programs/winemenubuilder/.gitignore, programs/winemine/.cvsignore,
	  programs/winemine/.gitignore, programs/winepath/.cvsignore,
	  programs/winepath/.gitignore, programs/winetest/.cvsignore,
	  programs/winetest/.gitignore, programs/winevdm/.cvsignore,
	  programs/winevdm/.gitignore, programs/winhelp/.cvsignore,
	  programs/winhelp/.gitignore, programs/winver/.cvsignore,
	  programs/winver/.gitignore, server/.cvsignore, server/.gitignore,
	  tools/.cvsignore, tools/.gitignore, tools/widl/.cvsignore,
	  tools/widl/.gitignore, tools/winapi/.cvsignore,
	  tools/winapi/.gitignore, tools/winebuild/.cvsignore,
	  tools/winebuild/.gitignore, tools/winedump/.cvsignore,
	  tools/winedump/.gitignore, tools/winegcc/.cvsignore,
	  tools/winegcc/.gitignore, tools/wmc/.cvsignore, tools/wmc/.gitignore,
	  tools/wrc/.cvsignore, tools/wrc/.gitignore:
	Renamed all .cvsignore files to .gitignore.

2005-11-24  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/main.c, tools/wine.inf:
	Also handle mailto: urls.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/tests/printf.c:
	Add some tests for _fcvt.

2005-11-24  Marcus Meissner <meissner@suse.de>

	* include/usp10.h:
	extern "C" wrappers for usp10.h.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/helpers.c:
	Make all source directories at the root of the install.

2005-11-24  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/advapi32/lsa.c:
	Return a real error in LsaLookupSids.

2005-11-24  Vijay Kiran Kamuju <infyquest@gmail.com>

	* include/Makefile.in:
	Install usp10.h.

2005-11-24  Mike McCormack <mike@codeweavers.com>

	* dlls/wldap32/ber.c:
	Fix a compile error.

2005-11-24  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/wgl_ext.c:
	Fix incorrect implementation of WGL_COLOR_BITS_ARB.

2005-11-24  Juan Lang <juan_lang@yahoo.com>

	* include/wincrypt.h:
	Add more declarations.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/rebar.c, dlls/comctl32/tooltips.c, dlls/d3d8/shader.c,
	  dlls/dinput/dinput_main.c, dlls/dinput/effect_linuxinput.c,
	  dlls/dinput/joystick_linuxinput.c, dlls/iphlpapi/iphlpapi_main.c,
	  dlls/quartz/filesource.c, dlls/rsaenh/mpi.c, dlls/rsaenh/tomcrypt.h,
	  dlls/shell32/shellpath.c, dlls/user/edit.c,
	  dlls/user/tests/sysparams.c, dlls/uxtheme/draw.c,
	  dlls/wined3d/basetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/pixelshader.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/utils.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h,
	  dlls/winedos/dosaspi.c, dlls/wineps/download.c, dlls/wininet/ftp.c,
	  dlls/wininet/tests/http.c, dlls/winspool/tests/info.c,
	  dlls/wintab32/context.c, programs/progman/En.rc,
	  programs/winedbg/gdbproxy.c, tools/widl/write_msft.c,
	  tools/wrc/translation.c:
	Assorted spelling fixes.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/ntdll/resource.c, dlls/usp10/usp10.c, dlls/wininet/internet.c:
	Documentation tweaks to make winapi_check happy.
	Also specify the documented spec file entry.

2005-11-23  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/msvideo/msvfw32_De.rc, dlls/msvideo/rsrc.rc:
	Add German resource file for msvideo.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/wldap32/control.c, dlls/wldap32/init.c,
	  dlls/wldap32/winldap_private.h, include/winldap.h,
	  tools/winapi/win32.api:
	winldap.h should include windeh.f and schnlsp.h.
	Enclose the API definitions in an extern "C" section and define
	LDAPAPI.
	Better stick to the types defined by the PSDK.
	Fix the ldap_create_vlv_control*() prototypes.
	Update win32.api.

2005-11-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/relay16.c, dlls/msvcrt/misc.c, dlls/ntdll/loader.c,
	  dlls/ntdll/relay.c, dlls/ntdll/resource.c, dlls/ntdll/signal_i386.c,
	  dlls/user/winproc.c, libs/wine/port.c, loader/preloader.c,
	  tools/winebuild/import.c:
	Preserve 16-byte stack alignment in the various assembly
	functions. Needed for MacOSX.

2005-11-23  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/msvideo/msvfw32_En.rc, dlls/msvideo/msvfw32_Ko.rc,
	  dlls/msvideo/rsrc.rc:
	Add Korean translation.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/advpack/tests/advpack.c:
	Add trailing '\n' to trace() call.

2005-11-23  Francois Gouget <fgouget@free.fr>

	* dlls/winsock/socket.c, include/ws2tcpip.h, tools/winapi/win32.api:
	Add LPADDRINFO, missing IP_* defines and missing APIs.
	Enclose the API definitions in an extern "C" section.
	Define function pointer types if INCL_WINSOCK_API_TYPEDEFS is defined.
	Better stick to the types defined by the PSDK.
	Update win32.api.

2005-11-23  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc, dlls/commdlg/cdlg_Ko.rc,
	  dlls/winmm/winmm_Ko.rc, dlls/winmm/winmm_res.rc,
	  programs/taskmgr/Ko.rc, programs/wcmd/Ko.rc, programs/winecfg/Ko.rc:
	Update Korean translations.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Use the ANSI codepage in IShellFolder::GetDisplayNameOf.

2005-11-23  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	Be more strict and verbose while testing
	GetStandardColorSpaceProfile().

2005-11-23  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/sysparams.c:
	Make test_SPI_SETBORDER less likely to permanently change visual
	settings:
	- use smaller border widths values for testing;
	- provide a work around for a Windows XP feature that made the tests
	change the caption width.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_desktop.c:
	Also scan HKEY_CURRENT_USER for shell namespace extensions in Desktop
	folder.
	Fixed a handle leak in case of failing AddToEnumList call.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_mycomp.c:
	Also scan HKEY_CURRENT_USER for shell namespace extensions in
	MyComputer.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	Initialize OLE instead of just COM, in order to enable Drag & Drop.

2005-11-23  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/commdlg/filedlg.c:
	Initialize OLE instead of COM only in order to enable Drag and Drop.

2005-11-23  Andrew Webb <andrew7webb@comcast.net>

	* include/commctrl.h:
	Define DateTime_SetMonthCalColor.

2005-11-23  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/tests/cert.c:
	Fix some memory leaks.

2005-11-23  Alexandre Julliard <julliard@winehq.org>

	* dlls/x11drv/event.c:
	Fixed some broken code that was causing compiler warnings.

2005-11-23  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/tests/domdoc.c:
	Release a stray node.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.2.

----------------------------------------------------------------
2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/commdlg/fontdlg16.c:
	Fixes for FormatCharDlgProc16:
	- properly store the ChooseFont pointer, use a window property as the
	A and W functions do;
	- handle other messages then WM_INITDIALOG and WM_MEASUREITEM as well.

2005-11-22  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c:
	HttpEndRequest does not actually send an extra NULL byte at the end of
	the request. Help from Rob Shearman on this one.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/volume.c:
	Don't try to set the label in the superblock of FAT filesystems, that
	doesn't do the right thing anyway.

2005-11-22  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/pixelshader.c, dlls/wined3d/vertexshader.c:
	Corrects an error in the _m3xm3 shader function in pixel and vertex
	shaders.

2005-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/msvideo/.cvsignore, dlls/msvideo/Makefile.in,
	  dlls/msvideo/drawdib.c, dlls/msvideo/msvfw32_En.rc,
	  dlls/msvideo/msvideo16.c, dlls/msvideo/msvideo_main.c,
	  dlls/msvideo/msvideo_private.h, dlls/msvideo/rsrc.rc:
	Add a semi-functional ICCompressorChoose implementation.

2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	GetSystemMetrics fixes with corresponding tests.

2005-11-22  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/atom.c, server/change.c, server/clipboard.c, server/console.c,
	  server/debugger.c, server/event.c, server/fd.c, server/file.c,
	  server/handle.c, server/hook.c, server/mailslot.c, server/mapping.c,
	  server/mutex.c, server/named_pipe.c, server/object.c,
	  server/object.h, server/process.c, server/queue.c, server/registry.c,
	  server/request.c, server/semaphore.c, server/serial.c,
	  server/signal.c, server/snapshot.c, server/sock.c, server/thread.c,
	  server/timer.c, server/token.c, server/winstation.c:
	Add name_lookup function in object_ops.

2005-11-22  Rein Klazes <wijn@wanadoo.nl>

	* dlls/commdlg/fontdlg16.c:
	In CFn_CHOOSEFONT16to32W fix the conversion of the lpTemplateName and
	the lpszStyle fields.

2005-11-22  Hans Leidekker <hans@it.vu.nl>

	* programs/winebrowser/Makefile.in:
	No need to link against shell32 or user32.

2005-11-22  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	Fix some logic to allow HTTP_ADDREQ_FLAG_ADD to replace existing
	headers. Also adding a test for some header adding flags.

2005-11-22  Alexandre Julliard <julliard@winehq.org>

	* server/registry.c:
	Use struct unicode_str instead of null-terminated strings where
	possible, and remove constraints on total key path length.

2005-11-22  Robert Lunnon <bobl@optushome.com.au>

	* server/event.c, server/mutex.c, server/object.c, server/semaphore.c,
	  server/timer.c:
	Add stdarg.h where missing.

2005-11-22  Marcus Meissner <meissner@suse.de>

	* dlls/winsock/socket.c:
	EAI_NONAME -> WS_EAI_NODATA, check for EAI_NONAME and EAI_NODATA.

2005-11-22  Steven Edwards <winehacker@gmail.com>

	* dlls/ntdll/version.c:
	Correct URL for version infomation database website.

2005-11-22  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/tests/dc.c:
	Add a test showing that SaveDC after GetDC should return 1.

2005-11-22  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h:
	Create window in SetClientSite and return it in
	IOleInPlaceSite::GetWindow.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/tests/http.c:
	Test the sizes of some of the parameters passed into the callback.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	Rename SendAsyncCallback to INTERNET_SendCallback.

2005-11-22  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	Fix an incorrect entry in the HTTP header field table causing broken
	Location field parsing.

2005-11-22  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	Exit test after first TranslateInfString() failure, which seems to be
	NT3.51 specific.

2005-11-21  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/pixelshader.c,
	  dlls/wined3d/wined3d_private.h, include/wine/wined3d_interface.h:
	Implement a pixel shader parser and cross compiler. All version of
	shaders up to 3 should be parsed correctly, but only shaders 1-1.4
	will be cross compiled.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/event.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/semaphore.c, server/timer.c, server/trace.c,
	  server/winstation.c:
	Return correct error on name collision when creating new named
	objects.
	Check for correct error in affected places.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/sync.c, dlls/kernel/virtual.c:
	Kernel32 should create named objects with OBJ_OPENIF flag set.
	Handle STATUS_OBJECT_NAME_EXISTS explicitly as it's not mapped with
	RtlNtStatusToDosError.

2005-11-21  YunSong Hwang <hys545@dreamwiz.com>

	* programs/regedit/Ko.rc, programs/wcmd/Ko.rc:
	Update Korean translations.

2005-11-21  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/drive.c:
	Only set label and serial number when they are actually changed.

2005-11-21  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/sync.c, dlls/ntdll/file.c, include/wine/server_protocol.h,
	  server/mailslot.c, server/protocol.def, server/trace.c:
	Fixed handling of mailslot read timeout to avoid compiler warnings.

2005-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/win.c:
	Choose what window styles to dump (WS_GROUP/WS_TABSTOP vs.
	WS_MINIMIZEBOX/WS_MAXIMIZEBOX) based on the WS_CHILD style set.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c:
	More Object Manager tests.

2005-11-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/http.c, dlls/wininet/tests/http.c:
	Implement HttpSendRequestEx and HttpEndRequest. Restructure, breaking
	some things out of HTTP_SendRequestW to avoid duplicate code.

2005-11-21  Ge van Geldorp <gvg@reactos.org>

	* dlls/crypt32/encode.c:
	Don't redefine ASN_OCTETSTRING, it's already defined in snmp.h.

2005-11-21  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/shell32/iconcache.c, dlls/shell32/shell32_main.c,
	  dlls/shell32/shell32_main.h:
	SHGetFileInfoW(): handle SHGFI_LINKOVERLAY and SHGFI_OVERLAYINDEX.
	SHMapPIDLToSystemImageListIndex(): determine overlay flag for
	PidlToSicIndex() and return -1 in error cases.
	Read shell overlay icon settings from registry to allow icon
	overrides.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/locale.c:
	Fix bogus unreal code page messages in _setmbcp().

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/msvcrt.spec:
	Do not forward _mbccpy to strcpy.
	Remove the error message in _mbccpy, it is not an error.

2005-11-21  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/comctl32/syslink.c:
	Improved word wrapping and tab key handling.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/advpack/advpack.c, include/advpub.h:
	Add/correct prototypes for some already defined functions in advpack.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/control.c, dlls/wldap32/winldap_private.h,
	  dlls/wldap32/wldap32.spec:
	Implement ldap_create_vlv_control{A,W},
	ldap_encode_sort_control{A,W}.
	Add a stub for ldap_create_page_control{A,W}.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/security.c, include/aclapi.h,
	  include/winsvc.h, tools/winapi/win32.api:
	Add/correct prototypes for some already defined functions in
	advapi32. Correct spec file entry for GetSecurityInfoExW.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/winstation.c, include/wine/server_protocol.h,
	  server/protocol.def, server/trace.c, server/winstation.c:
	Replace inherit flag with object attributes in winstation and desktop
	create & open. Use OBJ_OPENIF flag to create winstation & desktop.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/msvcrt/mbcs.c, dlls/msvcrt/tests/string.c:
	Fix _mbsspn() with conformance tests.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/hhctrl.ocx/Nl.rc, dlls/hhctrl.ocx/hhctrl.rc, dlls/mshtml/Nl.rc,
	  dlls/mshtml/rsrc.rc, dlls/winspool/Nl.rc, dlls/winspool/winspool.rc,
	  programs/taskmgr/De.rc, programs/taskmgr/Nl.rc,
	  programs/taskmgr/taskmgr.rc:
	Added Dutch translations.

2005-11-21  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/mshtml/Ko.rc, dlls/msi/msi_Ko.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/start/Ko.rc,
	  programs/winecfg/Ko.rc, programs/wineconsole/wineconsole_Ko.rc,
	  programs/winefile/Ko.rc:
	Update Korean translations.

2005-11-21  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/scroll.c:
	Print scroll and clip rectangles on the ScrollDC entry.

2005-11-21  Rob Shearman <rob@codeweavers.com>

	* dlls/advapi32/service.c:
	Don't try waiting for the service process to start if the
	CreateProcess call failed.

2005-11-21  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	Loop around calling RegQueryValue until we have a big enough string
	for both the name and the value.

2005-11-21  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/dochost.c:
	Added GetHostInfo implementation.

2005-11-21  Ge van Geldorp <gvg@reactos.org>

	* dlls/netapi32/access.c, dlls/netapi32/netapi32.c, include/lmaccess.h:
	Fix some prototypes to match the PSDK.

2005-11-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/oldconfig.c:
	- ANSI SCSI revision is a hex number.
	- Be more verbose with parser ERRs.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/mswsock/mswsock.spec, dlls/rpcrt4/rpcrt4.spec:
	Mark some functions as implemented in the spec files.

2005-11-21  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	Create new drives with autodetect type.

2005-11-21  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msvcrt/tests/file.c:
	Minor MSVCRT test changes:
	- add two invalid parameter checks for fopen(),
	- rearrange test sequence into two parts (low-level and stream I/O),
	- break long line.

2005-11-21  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/value.c:
	Fix the build without openldap.

2005-11-21  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/wincrypt.h:
	Add prototypes for some already defined functions in crypt32.

2005-11-21  Aric Stewart <aric@codeweavers.com>

	* dlls/wininet/internet.c:
	Implement the use of NETCON_send for HTTP connections when in
	InternetWriteFile.

2005-11-21  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/install.c:
	Fix version tests on NT, 2K and XP, make some errors more verbose.

2005-11-21  Rein Klazes <wijn@wanadoo.nl>

	* dlls/winmm/wineoss/audio.c:
	Break from the SNDCTL_DSP_CHANNELS loops on first error instead of
	continuing with even higher channels numbers.

2005-11-21  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c:
	Fixed typo in ws_sockaddr_u2ws().

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* configure, configure.ac, dlls/wldap32/init.c,
	  dlls/wldap32/winldap_private.h, dlls/wldap32/wldap32.h,
	  dlls/wldap32/wldap32.spec:
	Avoid using deprecated openldap functions.
	Implement ldap_sslinit{A,W}, improve cldap_open{A,W}.
	Add stub implementation for ldap_startup and ldap_stop_tls_s.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/types.c:
	Native dbghelp doesn't provide names for basic type, so added relevant
	basic type names in winedbg.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/commdlg/filedlg.c:
	There is no need to resize our own fake dialog to match the parent, it
	doesn't have controls anyway.

2005-11-18  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/mscms/tests/profile.c:
	Don't call unicode functions of file API as they fail on Win9x.

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* server/console.c, server/event.c, server/handle.c, server/handle.h,
	  server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/object.c, server/object.h,
	  server/process.c, server/request.h, server/semaphore.c,
	  server/timer.c, server/user.h, server/winstation.c:
	Added a struct unicode_str to encapsulate object names.

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/delete.c, dlls/wldap32/dn.c, dlls/wldap32/error.c,
	  dlls/wldap32/misc.c, dlls/wldap32/modify.c, dlls/wldap32/modrdn.c,
	  dlls/wldap32/option.c, dlls/wldap32/search.c, dlls/wldap32/value.c:
	Avoid using deprecated openldap functions.
	Correct some return values.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/winedbg.c:
	Centralized calls for SymSetContext, we only do it when we change the
	current stack frame, and no longer every time we look up local symbols
	on current stack

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c:
	Avoid setting the context before the thread has started running, it's
	broken on most Windows versions.

2005-11-18  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/tests/domdoc.c:
	Ref count the xmlDocPtr.
	If two nodes refer to the same xmlNodePtr don't return same object.

2005-11-18  Hans Leidekker <hans@it.vu.nl>

	* dlls/wldap32/add.c, dlls/wldap32/bind.c, dlls/wldap32/compare.c:
	Avoid using deprecated openldap functions.
	Correct some return values.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/debugger.h, programs/winedbg/memory.c,
	  programs/winedbg/stack.c:
	Move print_func_and_args to stack.c, where it belongs.

2005-11-18  Kieran Clancy <n0dalus+wine@gmail.com>

	* dlls/user/static.c:
	Fix vertical text alignment in static controls.

2005-11-18  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/comctl32/tests/.cvsignore, dlls/comctl32/tests/Makefile.in,
	  dlls/comctl32/tests/header.c:
	Added header control tests.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/stack.c, programs/winedbg/symbol.c,
	  programs/winedbg/winedbg.c:
	- now storing frames information in thread structure
	- frames are cached after each thread stops execution
	- reimplemented backtrace on top of this

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/locale.c:
	Added a few more Unicode digits from Unicode version 4.1.

2005-11-18  Alexandre Julliard <julliard@winehq.org>

	* libs/unicode/c_037.c, libs/unicode/c_10000.c, libs/unicode/c_10006.c,
	  libs/unicode/c_10007.c, libs/unicode/c_10029.c,
	  libs/unicode/c_1006.c, libs/unicode/c_10079.c,
	  libs/unicode/c_10081.c, libs/unicode/c_1026.c, libs/unicode/c_1250.c,
	  libs/unicode/c_1251.c, libs/unicode/c_1252.c, libs/unicode/c_1253.c,
	  libs/unicode/c_1254.c, libs/unicode/c_1255.c, libs/unicode/c_1256.c,
	  libs/unicode/c_1257.c, libs/unicode/c_1258.c, libs/unicode/c_20866.c,
	  libs/unicode/c_20932.c, libs/unicode/c_21866.c,
	  libs/unicode/c_28591.c, libs/unicode/c_28592.c,
	  libs/unicode/c_28593.c, libs/unicode/c_28594.c,
	  libs/unicode/c_28595.c, libs/unicode/c_28596.c,
	  libs/unicode/c_28597.c, libs/unicode/c_28598.c,
	  libs/unicode/c_28599.c, libs/unicode/c_28600.c,
	  libs/unicode/c_28603.c, libs/unicode/c_28604.c,
	  libs/unicode/c_28605.c, libs/unicode/c_28606.c, libs/unicode/c_424.c,
	  libs/unicode/c_437.c, libs/unicode/c_500.c, libs/unicode/c_737.c,
	  libs/unicode/c_775.c, libs/unicode/c_850.c, libs/unicode/c_852.c,
	  libs/unicode/c_855.c, libs/unicode/c_856.c, libs/unicode/c_857.c,
	  libs/unicode/c_860.c, libs/unicode/c_861.c, libs/unicode/c_862.c,
	  libs/unicode/c_863.c, libs/unicode/c_864.c, libs/unicode/c_865.c,
	  libs/unicode/c_866.c, libs/unicode/c_869.c, libs/unicode/c_874.c,
	  libs/unicode/c_875.c, libs/unicode/c_878.c, libs/unicode/c_932.c,
	  libs/unicode/c_936.c, libs/unicode/c_949.c, libs/unicode/c_950.c,
	  libs/unicode/casemap.c, libs/unicode/wctype.c:
	Updated codepage tables to Unicode version 4.1.

2005-11-18  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/comctl32/comctl_Ko.rc, dlls/serialui/Ko.rc, dlls/shdocvw/Ko.rc,
	  dlls/wineps/wps_Ko.rc, programs/cmdlgtst/Ko.rc,
	  programs/cmdlgtst/cmdlgr.rc:
	Update Korean translations.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/win.c:
	Add another test for Z order of child windows.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/kernel/vxd.c:
	Use case insensitive comparison to check file extensions.

2005-11-18  Peter Beutner <p.beutner@gmx.net>

	* dlls/x11drv/opengl.c:
	Fix wrong use of the PFD_GENERIC_ACCELERATED flag. It indicates that
	the selected pixel format lacks full hardware acceleration and only a
	few parts are accelerated. So don't always set it but only if the X
	server actually reports that the selected pixel format is not fully
	accelerated.

2005-11-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Free ConnectionPoint objects (fix memory leak).

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/undname.c:
	Ensures, when we cannot demangle the string, to return the mangled
	name instead of a NULL pointer.

2005-11-18  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/symbol.c,
	  programs/winedbg/symbol.c, programs/winedbg/winedbg.c:
	Now returning correct symbol flags (as native does) for function pmts
	& locals in dbghelp.
	Modified winedbg accordingly.

2005-11-18  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/twain/dsm_ctrl.c:
	If SANE returns empty device list treat it as an error.

2005-11-18  Jacek Caban <jacek@codeweavers.com>

	* dlls/atl/registrar.c:
	Fix parsing '{' char.

2005-11-18  Robert Reif <reif@earthlink.net>

	* dlls/dsound/tests/capture.c, dlls/dsound/tests/dsound_test.h:
	Handle failure on Windows 95 properly.
	Make two functions available to all files.
	Make format_string() const correct.

2005-11-17  Marcus Meissner <marcus@jet.franken.de>

	* configure, configure.ac, dlls/winsock/socket.c,
	  dlls/winsock/ws2_32.spec, include/config.h.in, include/ws2tcpip.h:
	Implemented getaddrinfo(), including full mapping of struct addrinfo
	between UNIX and Windows. Based on a patch by Mike Hearn.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/type.c, programs/winedbg/dbg.y,
	  programs/winedbg/types.c:
	Dbghelp describes the types of function arguments with a specific
	symbol-type (symt) which links both to arguments' type and to function
	prototype
	- added this new type to dbghelp
	- implemented its use in winedbg

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.c, dlls/dbghelp/elf_module.c, dlls/dbghelp/msc.c,
	  dlls/dbghelp/stabs.c, dlls/dbghelp/symbol.c, dlls/dbghelp/type.c,
	  programs/winedbg/break.c, programs/winedbg/expr.c,
	  programs/winedbg/memory.c, programs/winedbg/symbol.c,
	  programs/winedbg/types.c:
	SymGetType(...,TI_GET_LENGTH,...) requires a 64 bit parameter, not a
	32 bit one.

2005-11-17  Alexandre Julliard <julliard@winehq.org>

	* libs/unicode/cpmap.pl:
	Only update modified files.

2005-11-17  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/events.c, dlls/shdocvw/shdocvw.h:
	Improve IConnectionPoint handling.

2005-11-17  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Disable support for creation FMT_Unknown textures. This gets most of
	the d3d8 demos from www.codesampler.com working.

2005-11-17  Robert Shearman <rob@codeweavers.com>

	* libs/unicode/cpmap.pl, libs/unicode/wctype.c:
	Remove some incompatibilities in the wctype table by updating the
	space, blank and cntrl exceptions and fixing the type given to
	characters in the "Zl" and "Zp" classes.

2005-11-17  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Return false if index is out of bounds in GetItemT.

2005-11-17  Alexandre Julliard <julliard@winehq.org>

	* programs/explorer/explorer.c:
	Fixed invalid C syntax.

2005-11-17  Robert Shearman <rob@codeweavers.com>

	* dlls/kernel/profile.c:
	The BOM doesn't need a DWORD sized variable, only a WCHAR one.
	Don't increment the szFile pointer since we removed the BOM earlier
	and it will cause the first real character of the INI file to be
	skipped.

2005-11-17  Martin Fuchs <martin-fuchs@gmx.net>

	* programs/winefile/winefile.c, programs/winefile/winefile.h:
	Use command line for initial directory selection.
	Remove useless hwndParent variable.

2005-11-17  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/swapchain.c:
	Clear the z and stencil buffers at the end of the scene, this fixes a
	problem with the solid node bsp demo from www.codesampler.com as well
	as a lot of blank screens in some other demos.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/tests/cpp.c:
	Provide a sample of the joy of MSC symbol mangling.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/symbol.c:
	When a symbol name already contains a module name, we shouldn't search
	in other modules.

2005-11-17  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l,
	  programs/winedbg/debugger.h:
	Simplification of lex's input reading.

2005-11-17  Detlef Riekenberg <wine.dev@web.de>

	* dlls/user/tests/monitor.c:
	Made test loadable on win95 again (EnumDisplayDevicesA not present).

2005-11-17  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/dochost.c,
	  dlls/shdocvw/shdocvw.h, dlls/shdocvw/webbrowser.c:
	Added stub implementation of IDocHostUIHandler.

2005-11-17  Jacek Caban <jacek@codeweavers.com>

	* include/mshtmhst.idl:
	Added IHTMLWindow forward declaration.

2005-11-17  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win32.api:
	Update win32.api to cvs.

2005-11-16  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msvcrt/file.c, dlls/msvcrt/tests/file.c:
	Fix _fcloseall() return value.
	Improve some trace messages.
	Add tests for fopen(), fclose(), _fcloseall().
	Stricten some checks of _unlink().

2005-11-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/oleobject.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Added OLEIVERB_INPLACEACTIVATE implementation in IOleObject::DoVerb.

2005-11-16  Aric Stewart <aric@codeweavers.com>

	* configure, configure.ac, programs/Makefile.in,
	  programs/explorer/.cvsignore, programs/explorer/Makefile.in,
	  programs/explorer/explorer.c:
	Beginnings of an explorer.exe replacement that wraps the existing
	winefile program.

2005-11-16  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debugger.h,
	  programs/winedbg/winedbg.c, programs/winedbg/winedbg.man.in:
	Added ability to execute commands from a file passed on command line
	(through --file option).
	Use that feature to get rid of arg_command hack (--command option now
	creates a temporary file).

2005-11-16  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/edit.c, dlls/user/tests/msg.c:
	Add a test for some edit control behaviours, make it pass under Wine.

2005-11-16  Robert Reif <reif@earthlink.net>

	* dlls/winmm/wavemap/wavemap.c:
	Only convert bits per sample between different encoding formats.

2005-11-16  Marcus Meissner <marcus@jet.franken.de>

	* dlls/winsock/socket.c, include/ws2tcpip.h:
	Added mapping between unix and windows sockaddr_in6(_old) and
	sockaddr_in. Added address family, socket type mappers.

2005-11-16  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	- Improve callback to give context sensitive information about the
	different statuses and print the thread ID that it was called from.
	- Replace the busy waiting on the "goon" flag with an event.
	- Replace hard coded numbers with more informative constants
	throughout the InternetReadFile test.
	- Add tests for InternetReadFileExA.
	- Fix the error value from calling InternetReadFile with a NULL handle
	as indicated by the test.

2005-11-16  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h:
	Added IOleInPlaceSite stub implementation.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	Add timezone information to the registry.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/ftp.c, dlls/wininet/http.c, dlls/wininet/internet.h,
	  dlls/wininet/utility.c:
	We shouldn't pass the struct hostent returned from gethostbyname as
	it's not thread-safe and isn't needed anyway.

2005-11-15  Ken Thomases <ken@codeweavers.com>

	* dlls/ntdll/signal_i386.c:
	Updated context definitions for the latest Darwin/x86.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c:
	Correct the size of a callback parameter.
	Fix the declaration of INTERNET_WorkerThreadFunc.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c:
	Convert MsiEnumComponentQualifiers to use msi_strcpy_to_awstring.

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/urlcache.c:
	Fixed Unicode buffer size bug in CreateUrlCacheEntryW.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.spec, dlls/msi/registry.c, include/msi.h:
	Fix function prototype and spec file entry for
	MsiEnumComponentQualifiers.

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/comctl32/header.c:
	Implement implement header callback support (HDN_GETDISPINFO notification):
	- better factorisation
	- unicode fixes

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/urlmon/tests/url.c:
	Don't crash if BindToStorage fails.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	Only return ERROR_MORE_DATA if there's a buffer to copy a result
	into.

2005-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/focus.c:
	Do not change focus if the being activated window is no longer
	active.

2005-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/kernel/tests/drive.c:
	Made test loadable on NT 3.51 again (GetDiskFreeSpaceExA not present).

2005-11-15  Detlef Riekenberg <wine.dev@web.de>

	* dlls/winspool/tests/info.c:
	Some extra tests for GetPrinterDriverDirectory.
	Display a TRACE when the Service "spooler" is not running (NT).

2005-11-15  Cihan Altinay <cihan@uq.edu.au>

	* dlls/kernel/comm.c:
	Disable PARMRK input flag of serial ports.

2005-11-15  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/mshtml/Ko.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/taskmgr/Ko.rc,
	  programs/uninstaller/Ko.rc, programs/view/Ko.rc,
	  programs/winefile/Ko.rc:
	Update Korean translations.

2005-11-15  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/resource.c, dlls/ntdll/signal_i386.c:
	Use proper asm name for external functions.

2005-11-15  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/ntdll/sec.c, dlls/ntdll/tests/rtl.c:
	Add a test for RtlAllocateAndInitializeSid, make it pass under Wine.

2005-11-15  Jacek Caban <jacek@codeweavers.com>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/client.c, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/webbrowser.c:
	Beginning implementation of Navigate2.

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/device.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/vertexshader.c, dlls/wined3d/wined3d_private.h:
	- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
	- use D3DCOLOR macros instead of using shift + masks
	- fix a bug where diffuse.lpData checked instead of specular.lpData
	- implement color fixup on ARB VShader compilation code:
	-> on input parameters using swizzle
	-> add is_color parameter on vshader_program_add_param

2005-11-15  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/usp10/usp10.c, dlls/usp10/usp10.spec, include/usp10.h:
	Add stubs around ScriptStringAnalyse to avoid PAF crash.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/http.c:
	INTERNET_STATUS_HANDLE_CREATED notifications just send the handle, not
	an INTERNET_ASYNC_RESULT structure.
	The source handle in HTTP_Connect should be the parent's handle.

2005-11-15  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.h, dlls/wininet/netconnection.c:
	SSL doesn't need to use a different socket to unsecure communications.

2005-11-15  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/thread.c:
	Corrected last error information.
	Make sure we can run the tests on win9x.

2005-11-15  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/package.c:
	Set the Installed property if the product is already installed.

2005-11-14  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/input.c, server/queue.c:
	Added support for the QS_ALLPOSTMESSAGE flag.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/Makefile.in, dlls/urlmon/binding.c, dlls/urlmon/tests/url.c,
	  dlls/urlmon/umon.c, dlls/urlmon/urlmon_main.h:
	Beginning of true BindToStorage implementation.

2005-11-14  Huw Davies <huw@codeweavers.com>

	* tools/widl/header.c:
	Prefix [putref] property names with putref_.

2005-11-14  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	Fix SysparametersInfoA( SPI_SETICONMETRICS), the A<->W conversion was
	rather broken.
	Make the SPI_{G|S}ETICONMETRICS functions more consistent with those
	for SPI_ICON{HORIZONTAL|VERTICAL}SPACING, SPI_{G|S}ICONTITLEWRAP and
	SPI_{G|S}ICONTITLELOGFONT.
	Accordingly extend the corresponding tests.

2005-11-14  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/msvcrt/tests/cpp.c, dlls/msvcrt/undname.c:
	Undname: Allow more then one coded character in demangle_datatype.

2005-11-14  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	Add default version information.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/pipe.c, dlls/ntdll/file.c:
	NtReadFile: now returning correct status in NtReadFile for EOF
	conditions (on files) and broken pipe (on named pipes).

2005-11-14  Peter Beutner <p.beutner@gmx.net>

	* dlls/gdi/dib.c, dlls/gdi/tests/bitmap.c:
	When creating DIBs with a color depth <= 8, always set biClrUsed field
	to the number of entries in the color table.

2005-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Empty strings are not equal to any number, so all comparisons against
	them fail except for tests for non-equalness.

2005-11-14  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Fix an intermittent lockup with ATI's driver, I expect the problem is
	trying to clear the display before it's visible. Also correct the
	clear alpha value.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/internet.c, dlls/urlmon/session.c,
	  dlls/urlmon/urlmon_main.h:
	Added get_protocol_iface internal function and use it in
	get_protocol_info.

2005-11-14  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/ddraw/surface_main.c:
	Use the front buffer palette for DC operations on off-screen buffers.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	Get the version and language ID of ADVPACK.DLL too.

2005-11-14  H. Verbeet <hverbeet@gmail.com>

	* dlls/ddraw/surface_dib.c:
	Fix the default value for keylow in DIB_DirectDrawSurface_Blt.
	Unset DDBLT_DDFX when lpbltfx is NULL / contains no dwDDFX.

2005-11-14  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/avifil32/avifile_Ko.rc, dlls/avifil32/rsrc.rc, dlls/mpr/mpr.rc,
	  dlls/mpr/mpr_Ko.rc, dlls/mshtml/Ko.rc, dlls/mshtml/rsrc.rc,
	  dlls/msi/msi.rc, dlls/msi/msi_Ko.rc, dlls/oledlg/oledlg_Ko.rc,
	  dlls/oledlg/rsrc.rc, dlls/serialui/Ko.rc,
	  dlls/serialui/serialui_rc.rc, dlls/shdocvw/Ko.rc,
	  dlls/shdocvw/shdocvw.rc, dlls/winspool/Ko.rc,
	  dlls/winspool/winspool.rc, dlls/wldap32/wldap32.rc,
	  dlls/wldap32/wldap32_Ko.rc, programs/notepad/Ko.rc,
	  programs/notepad/rsrc.rc, programs/regedit/Ko.rc,
	  programs/start/Ko.rc, programs/start/rsrc.rc, programs/taskmgr/Ko.rc,
	  programs/taskmgr/taskmgr.rc, programs/uninstaller/Ko.rc,
	  programs/uninstaller/rsrc.rc, programs/view/Ko.rc,
	  programs/view/viewrc.rc, programs/wcmd/Ko.rc,
	  programs/wcmd/wcmdrc.rc, programs/winecfg/Ko.rc,
	  programs/winecfg/winecfg.rc, programs/wineconsole/wineconsole_Ko.rc,
	  programs/wineconsole/wineconsole_res.rc, programs/winefile/Ko.rc,
	  programs/winefile/rsrc.rc, programs/winemine/Ko.rc,
	  programs/winemine/rsrc.rc:
	Add Korean translations.

2005-11-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/iphlpapi/iphlpapi_main.c:
	Add, reformat API documentation.

2005-11-14  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Fix comparison of empty properties to numbers and add test cases.

2005-11-14  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/tests/msg.c:
	Fix message tests to run cleanly on Windows XP SP1.

2005-11-14  Edgar Hucek <gimli@gentoo.org>

	* dlls/winmm/joystick/joystick.c:
	Unicode compile fix.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/tests/thread.c:
	Fix set_test_val function declaration to ensure stack is left
	untouched.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	Fix a test for InternetCreateUrlA as no Windows platform sets last
	error here. Make InternetCreateUrlA pass the test.

2005-11-14  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/crypt32/tests/cert.c:
	Don't call missing API function.

2005-11-14  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/ddraw/ddraw_utils.c, dlls/ddraw/surface_dib.c:
	Add DDBLT_DONOTWAIT flag.
	Separate DDBLT_WAIT and DDBLT_ASYNC fixme in Blt method.

2005-11-14  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/umon.c:
	Move BindToStorage hack to the separated function.

2005-11-14  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/cubetexture.c, dlls/d3d9/device.c, dlls/d3d9/indexbuffer.c,
	  dlls/d3d9/pixelshader.c, dlls/d3d9/query.c, dlls/d3d9/stateblock.c,
	  dlls/d3d9/swapchain.c, dlls/d3d9/texture.c, dlls/d3d9/vertexbuffer.c,
	  dlls/d3d9/vertexdeclaration.c, dlls/d3d9/vertexshader.c,
	  dlls/d3d9/volumetexture.c:
	Remove the setting of the result pointer to NULL in creates, tests
	show that windows doesn't set the result to NULL on error.

2005-11-14  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/ntdll/thread.c:
	Init wShowWindow in RTL_USER_PARAMETERS for Wine processes started
	from the command-line.

2005-11-14  Peter Lemenkov <petro@mail.ru>

	* include/rpcdce.h:
	Added extern "C".

2005-11-14  Markus Amsler <markus.amsler@oribi.org>

	* dlls/comctl32/imagelist.c:
	Reformat "see" section, to match c2man requirements.

2005-11-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/commdlg/cdlg32.c, dlls/commdlg/colordlg.c,
	  dlls/commdlg/filetitle.c, dlls/commdlg/finddlg32.c,
	  dlls/commdlg/fontdlg.c, dlls/commdlg/printdlg.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- complete missing A/W pairs
	- document remaining comdlg32 functions

2005-11-12  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advapi32/crypt.c, dlls/advapi32/crypt_sha.c,
	  dlls/advapi32/eventlog.c, dlls/advapi32/registry.c,
	  dlls/advapi32/security.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section

2005-11-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* programs/winetest/Makefile.in:
	Add shdocvw tests to winetest.

2005-11-12  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c:
	Implement CLSCTX_INPROC_HANDLER in CoGetClassObject similar to
	CLSCTX_INPROC_SERVER by looking at the InprocHandler32 registry key
	instead of InprocServer32.

2005-11-12  Paul Vriens <Paul.Vriens@xs4all.nl>

	* dlls/kernel/tests/thread.c:
	Add some extra error information.

2005-11-12  Robert Shearman <rob@codeweavers.com>

	* dlls/wininet/internet.c, dlls/wininet/internet.h:
	Implement InternetReadFileExA (based on a patch by Brian Gerst).

2005-11-12  Daniel Remenak <dtremenak@gmail.com>

	* dlls/dinput/joystick_linuxinput.c:
	Add additional sanity checks to the linux input system dinput joystick
	implementation.

2005-11-12  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/dbg.y, programs/winedbg/debug.l:
	Removed a couple of shift/reduce warnings in grammar.

2005-11-12  Rein Klazes <wijn@wanadoo.nl>

	* programs/regedit/Nl.rc:
	Update Dutch resources.

2005-11-12  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.h, dlls/shdocvw/view.c,
	  dlls/shdocvw/webbrowser.c:
	Added IViewObject2 stub implementation.

2005-11-12  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/version/tests/.cvsignore, dlls/version/tests/Makefile.in,
	  dlls/version/tests/install.c:
	Added some tests for VerFindFileA.

2005-11-12  Phil Lodwick <Phil.Lodwick@EFI.COM>

	* dlls/kernel/path.c, dlls/kernel/tests/path.c:
	prefix can be NULL for GetTempFileNameW.

2005-11-11  YunSong Hwang <hys545@dreamwiz.com>

	* dlls/hhctrl.ocx/Ko.rc, dlls/hhctrl.ocx/hhctrl.rc, dlls/msacm/msacm.rc,
	  dlls/msacm/msacm_Ko.rc, dlls/msrle32/msrle_Ko.rc,
	  dlls/msrle32/rsrc.rc, dlls/oleaut32/oleaut32.rc,
	  dlls/oleaut32/oleaut32_Ko.rc, dlls/setupapi/Ko.rc,
	  dlls/setupapi/setupapi.rc, dlls/shlwapi/shlwapi.rc,
	  dlls/shlwapi/shlwapi_Ko.rc, dlls/wininet/rsrc.rc,
	  dlls/wininet/wininet_Ko.rc:
	Add Korean translations.

2005-11-11  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/urlmon/urlmon.spec:
	Correct argument count for URLDownloadToCacheFile{A,W}.

2005-11-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shell.c, dlls/shell32/shell32_main.h,
	  dlls/shell32/shlexec.c:
	Unconditionally fall back to ANSI DDE APIs in ShellExecute if current
	emulated Windows version is Win9x, Excel refuses to communicate with a
	unicode client in win9x mode.

2005-11-11  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/dde_client.c:
	Convert some ERRs to WARNs in the DDE client code when appropriate.

2005-11-11  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/kernel/heap.c:
	Protect sys/stat.h with a conditional.

2005-11-11  Steven Edwards <winehacker@gmail.com>

	* dlls/msi/msi.c:
	Partly implement MsiMessageBox[A/W] on top of MessageBoxEx[A/W]

2005-11-11  Christoph Frick <frick@sc-networks.de>

	* dlls/dinput/joystick_linuxinput.c:
	Moved and adopted joystick_linux.c code into the
	joystick_linuxinput.c.

2005-11-11  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/opengl32/make_opengl, dlls/opengl32/opengl_ext.h,
	  dlls/opengl32/opengl_norm.c, dlls/opengl32/wgl.c,
	  dlls/opengl32/wgl_ext.c, dlls/x11drv/opengl.c:
	Add GLXFBConfig on Wine_GLContext (we should remove XVisualInfo
	references on code).
	Hook glGetIntegerv on GL_ALPHA_BITS to query on GLXFBConfig instead of
	glGetInteger (as it returns bad value).

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/advapi32/security.c, dlls/comctl32/comboex.c,
	  dlls/comctl32/listview.c, dlls/comctl32/treeview.c,
	  dlls/commdlg/filetitle.c, dlls/d3d8/cubetexture.c,
	  dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d8/shader.c,
	  dlls/d3d8/stateblock.c, dlls/d3d8/texture.c, dlls/d3d9/device.c,
	  dlls/d3d9/directx.c, dlls/d3d9/vertexshader.c,
	  dlls/ddraw/ddraw_main.c, dlls/ddraw/device_main.c,
	  dlls/ddraw/device_opengl.c, dlls/ddraw/executebuffer.c,
	  dlls/ddraw/light.c, dlls/ddraw/opengl_utils.c,
	  dlls/ddraw/surface_main.c, dlls/ddraw/vertexbuffer.c,
	  dlls/dinput/device.c, dlls/dinput/mouse.c,
	  dlls/dmime/segtriggertrack.c, dlls/dmscript/script.c,
	  dlls/dmstyle/styletrack.c, dlls/dplayx/dplay.c, dlls/dpnet/address.c,
	  dlls/dsound/dsound_main.c, dlls/dxdiagn/provider.c,
	  dlls/gdi/bitmap.c, dlls/gdi/mfdrv/bitblt.c, dlls/kernel/comm.c,
	  dlls/mcicda/mcicda.c, dlls/mciseq/mcimidi.c, dlls/msi/action.c,
	  dlls/msi/custom.c, dlls/msi/files.c, dlls/msi/format.c,
	  dlls/msi/package.c, dlls/msi/table.c, dlls/msvcrt/tests/cpp.c,
	  dlls/ntdll/misc.c, dlls/odbc32/proxyodbc.c, dlls/ole32/antimoniker.c,
	  dlls/ole32/bindctx.c, dlls/ole32/ole2.c, dlls/oleaut32/typelib.c,
	  dlls/oleaut32/varformat.c, dlls/olepro32/olepro32stubs.c,
	  dlls/opengl32/wgl.c, dlls/opengl32/wgl_ext.c,
	  dlls/shell32/cpanelfolder.c, dlls/shell32/enumidlist.c,
	  dlls/shell32/pidl.c, dlls/shell32/shelllink.c,
	  dlls/shell32/shellord.c, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_mycomp.c, dlls/shell32/tests/shlfileop.c,
	  dlls/shlwapi/tests/ordinal.c, dlls/tapi32/line.c, dlls/user/comm16.c,
	  dlls/user/dde_misc.c, dlls/user/tests/menu.c,
	  dlls/vwin32.vxd/vwin32.c, dlls/wined3d/basetexture.c,
	  dlls/wined3d/cubetexture.c, dlls/wined3d/device.c,
	  dlls/wined3d/directx.c, dlls/wined3d/drawprim.c,
	  dlls/wined3d/query.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/surface.c, dlls/wined3d/swapchain.c,
	  dlls/wined3d/texture.c, dlls/wined3d/volumetexture.c,
	  dlls/wined3d/wined3d_main.c, dlls/winedos/int10.c,
	  dlls/winedos/int15.c, dlls/wininet/ftp.c, dlls/wininet/http.c,
	  dlls/wininet/internet.c, dlls/winmm/mci.c,
	  dlls/winmm/mciwave/mciwave.c, dlls/winmm/mmsystem.c,
	  dlls/winmm/playsound.c, dlls/winmm/tests/mixer.c,
	  dlls/winmm/winealsa/audio.c, dlls/winmm/winearts/audio.c,
	  dlls/winmm/wineesd/audio.c, dlls/winsock/socket16.c,
	  dlls/winsock/tests/sock.c, dlls/wintab32/context.c,
	  dlls/wsock32/socket.c, dlls/x11drv/event.c, dlls/x11drv/keyboard.c,
	  dlls/x11drv/palette.c, dlls/x11drv/xfont.c, dlls/x11drv/xrandr.c,
	  programs/winevdm/winevdm.c:
	Remove spaces before '\n' in traces.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/listview.c, dlls/dxerr8/errors.awk,
	  dlls/dxerr9/errors.awk, dlls/msi/package.c, dlls/msi/tests/package.c,
	  dlls/msxml3/tests/domdoc.c, dlls/oleaut32/olepicture.c,
	  dlls/secur32/dispatcher.c, dlls/user/exticon.c,
	  dlls/wined3d/directx.c, dlls/wined3d/surface.c,
	  dlls/wined3d/vertexshader.c, dlls/winmm/wineoss/mmaux.c,
	  tools/sfnt2fnt.c:
	Assorted spelling and case fixes.

2005-11-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advpack/tests/advpack.c:
	WinME fixes:
	- don't fail on WriteFile(),
	- add valid error codes,
	- empty buffer to avoid printing garbage,
	- remove bogus inf-file which TranslateInfString() creates here.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* tools/c2man.pl:
	Make parameter higlighting regex less "hungry".

2005-11-10  Francois Gouget <fgouget@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	Parse the command line returned by CommandLineFromMsiDescriptor() to
	extract the application path. Otherwise winemenubuilder ignores the
	.lnk file entirely.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/comctl32/tests/toolbar.c, dlls/d3d9/device.c,
	  dlls/kernel/tests/thread.c, dlls/msxml3/tests/domdoc.c,
	  dlls/setupapi/tests/parser.c, dlls/user/tests/msg.c:
	Add trailing '\n's to ok() and TRACE() calls.

2005-11-10  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/path.c:
	Add error code valid for Win9x and XP.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/shell32/brsfolder.c, dlls/shell32/pidl.c, dlls/shell32/shell.c,
	  dlls/shell32/shellole.c, dlls/shell32/shellord.c,
	  dlls/shell32/shellpath.c, dlls/shell32/shellstring.c,
	  dlls/shell32/shlfileop.c, dlls/shell32/shlmenu.c,
	  dlls/shell32/systray.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/dxerr8/errors.dat, dlls/dxerr8/errors.h, dlls/dxerr9/errors.dat,
	  dlls/dxerr9/errors.h:
	Assorted spelling fixes in the DXErr8/9 error files.

2005-11-10  Francois Gouget <fgouget@free.fr>

	* dlls/dxerr8/errors.awk, dlls/dxerr9/errors.awk:
	Remove extra backslash that was causing an awk warning.

2005-11-10  Mike McCormack <mike@codeweavers.com>

	* programs/clock/Ko.rc, programs/clock/rsrc.rc, programs/regedit/Ko.rc,
	  programs/regedit/rsrc.rc:
	Added Korean resources.

2005-11-10  Mike McCormack <mike@codeweavers.com>

	* programs/start/start.c:
	Remove the limit on the length of the command line.

2005-11-10  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/msi.c:
	Use MsiDecomposeDescriptorW in MsiProvideQualifiedComponentExW.

2005-11-10  Markus Amsler <markus.amsler@oribi.org>

	* dlls/uxtheme/system.c:
	Improve c2man Documented-Total count. Changes:
	- add missing returns section

2005-11-10  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/x11drv/init.c, include/wingdi.h:
	Added support for SHADEBLENDCAPS.

2005-11-10  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c, include/wine/wined3d_gl.h:
	Define GL_EXT_framebuffer_object and GL_EXT_pixelbuffer_object openGL
	specs.
	Support Mesa GL_VERSION on parse.

2005-11-10  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/umon.c, dlls/urlmon/urlmon.spec, include/urlmon.idl:
	Added URLDownloadToCacheFile[AW] stub.

2005-11-10  Mike Hearn <mike@plan99.net>

	* dlls/wininet/version.rc:
	Update wininet version info.

2005-11-09  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.1.

----------------------------------------------------------------
2005-11-09  Huw Davies <huw@codeweavers.com>

	* dlls/wineps/ps.c:
	Escape non-printable characters in the document title and also
	truncate it to 0x80 characters.

2005-11-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/commdlg/Makefile.in, dlls/commdlg/filedlg.c:
	Initialize COM prior to displaying the file dialog.

2005-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/registry.c, dlls/msi/tests/db.c:
	Fix passing of NULL pointers to MsiDecomposeDescriptor and add a
	test.

2005-11-09  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Make sure we only CoUninitialize after successfully initializing.
	Fix the address of the returned IShellLinkDataList interface.

2005-11-09  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/file.c:
	Added IInternetPriority implementation to FileProtocol.

2005-11-09  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/user/cursoricon.c:
	If a color bitmap is provided, store bitmap information from it
	instead of the mask bitmap one.

2005-11-09  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/tests/msg.c, dlls/x11drv/winpos.c:
	Don't call SetWindowPos in ShowWindow if a parent window is not
	visible, only toggle the WS_VISIBLE flag.

2005-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/user/class.c, dlls/user/cursoricon.c, dlls/user/dde_misc.c,
	  dlls/user/defwnd.c, dlls/user/menu.c, dlls/user/message.c,
	  dlls/user/misc.c, dlls/user/resource.c, dlls/user/scroll.c,
	  dlls/user/win.c, dlls/user/winproc.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-09  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	- Cleanup formating of DispCallFunc.
	- Fix DispCallFunc for functions with return values.
	- Don't rely on _copy_arg as it is going away soon.

2005-11-09  Markus Amsler <markus.amsler@oribi.org>

	* dlls/ntdll/error.c, dlls/ntdll/reg.c, dlls/ntdll/sec.c,
	  dlls/ntdll/string.c, dlls/ole32/clipboard.c,
	  dlls/ole32/memlockbytes16.c, dlls/ole32/ole16.c, dlls/ole32/ole2.c,
	  dlls/ole32/storage.c, dlls/ole32/storage32.c:
	Improve c2man Documented-Total count.

2005-11-09  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	Initialize COM prior to displaying the SHBrowseForFolder dialog.

2005-11-09  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/shell32/tests/shlfolder.c:
	Disable code that segfaults on Win98 SE.

2005-11-09  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/compobj.c, dlls/ole32/compobj_private.h, dlls/ole32/ole16.c,
	  dlls/ole32/ole2.c, dlls/ole32/rpc.c:
	- Extend COM_OpenKeyForCLSID to open a subkey and return an HRESULT.
	- Fix up the callers and reorganize CoGetClassObject to split out the
	inproc code into another function.

2005-11-09  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/http.c, dlls/urlmon/tests/protocol.c:
	Added implementation of IInternetPriority in HttpProtocol.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* include/xmldom.idl:
	Fixed typo: get_doctype returns an IXMLDOMDocumentType.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/factory.c,
	  dlls/msxml3/main.c, dlls/msxml3/msxml_private.h, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/parseerror.c, dlls/msxml3/tests/domdoc.c:
	Include msxml2.h rather than msxml.h and xmldom.h.

2005-11-08  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c, dlls/user/tests/sysparams.c:
	Re-enable SPI_{GET,SET}BORDER tests and fix the bugs that caused them
	to be disabled.
	Add tests that show that the border value manipulated by
	SPI_{GET,SET}BORDER is completely the same as with
	SPI_{GET,SET}NONCLIENTMETRICS.
	Fix a few signed/unsigned warnings in unrelated tests from the same
	source file.
	Made the tests pass on wine.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advapi32/tests/crypt.c:
	Win98 fails another way when user isn't logged in.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/shell32/systray.c:
	Unicodify systray.c.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* include/windef.h:
	Add an argument to all uses of the __ONLY_IN_WINELIB macro (spotted by
	Berend Reitsma).

2005-11-08  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shdocvw/Makefile.in, dlls/shdocvw/shdocvw.h,
	  dlls/shdocvw/shdocvw_main.c, dlls/shdocvw/shlinstobj.c,
	  dlls/shdocvw/tests/shortcut.c:
	Support for shell instance objects.
	Removed a wine_todo for a no longer failing test.
	Added a test for IPersistFolder3::GetCurFolder.

2005-11-08  Alexandre Julliard <julliard@winehq.org>

	* dlls/mapi32/tests/prop.c:
	Get rid of FAR keywords.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	Implement selectSingleNode.

2005-11-08  Robert Lunnon <bobl@optushome.com.au>

	* dlls/kernel/heap.c:
	Implement GlobalMemoryStatusEx for Solaris.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/heap.c:
	Take into account some alignment done by HeapAlloc() on Win9x.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/wininet/internet.c:
	Unicodify InternetCheckConnection.
	Use HeapAlloc'ed buffers where applicable.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/shell32/systray.c:
	Move functions a bit to get rid of a static declaration.

2005-11-08  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/comctl32/treeview.c:
	Do not issue a GetUpdateRect() to query an update region for
	WM_PAINT(wParam=HDC) case. Instead, use GetClientRect() for a bounding
	rect.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/Makefile.in, dlls/msxml3/domdoc.c,
	  dlls/msxml3/msxml_private.h, dlls/msxml3/parseerror.c,
	  dlls/msxml3/tests/domdoc.c:
	Implement get_parseError.

2005-11-08  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/gdi/font.c, dlls/hhctrl.ocx/hhctrl.c:
	Correct some allocated buffer lengths while converting to Unicode.

2005-11-08  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/comctl32/animate.c, dlls/comctl32/datetime.c,
	  dlls/comctl32/header.c, dlls/comctl32/hotkey.c,
	  dlls/comctl32/monthcal.c, dlls/comctl32/pager.c,
	  dlls/comctl32/progress.c, dlls/comctl32/propsheet.c,
	  dlls/comctl32/rebar.c, dlls/comctl32/status.c,
	  dlls/comctl32/syslink.c, dlls/comctl32/tab.c,
	  dlls/comctl32/toolbar.c, dlls/comctl32/tooltips.c,
	  dlls/comctl32/trackbar.c, dlls/comctl32/treeview.c,
	  dlls/comctl32/updown.c, dlls/user/button.c, dlls/user/edit.c,
	  dlls/user/listbox.c, dlls/user/static.c:
	Handle WM_PRINTCLIENT.
	Don't use SelectClipRgn in WM_PRINTCLIENT.

2005-11-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/wined3d/directx.c:
	Fix parsing of version number.

2005-11-08  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c:
	Fix cut-n-paste error in licence text.

2005-11-08  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d9/query.c:
	Allow NULL ppQuery to be passed to CreateQuery.

2005-11-08  James Hawkins <truiken@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/tests/advpack.c:
	Implement TranslateInfString with tests.

2005-11-08  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/ole32/compobj.c:
	Added tracing to CoCreateInstance.

2005-11-08  Markus Amsler <markus.amsler@oribi.org>

	* dlls/kernel/comm.c, dlls/kernel/computername.c, dlls/kernel/console.c,
	  dlls/kernel/environ.c, dlls/kernel/file.c, dlls/kernel/file16.c,
	  dlls/kernel/global16.c, dlls/kernel/heap.c, dlls/kernel/locale.c,
	  dlls/kernel/module.c, dlls/kernel/path.c, dlls/kernel/string.c,
	  dlls/kernel/sync.c, dlls/kernel/thread.c, dlls/kernel/thunk.c,
	  dlls/kernel/time.c, dlls/kernel/virtual.c, dlls/kernel/volume.c:
	Improve c2man Documented-Total count. Changes:
	- add missing description
	- add missing returns section
	- complete missing A/W pairs
	- reformate comments, to match c2man requirements

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/ntdll/time.c:
	Add some missing timezones.

2005-11-08  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/provider.c:
	- fill DirectShowFilters Container
	- fix some MLKs (clear variants)

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/crypt32/tests/cert.c:
	Make Crypt32 tests loadable on Win98.

2005-11-08  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/tests/sock.c:
	Added last error code for XP SP1.

2005-11-08  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/dmloader/loader.c:
	Add some checks and fix some stream leaks.

2005-11-08  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/rpc.c:
	We shouldn't pass the application name into CreateProcess because the
	value stored in the registry could include arguments.

2005-11-08  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/swapchain.c:
	Fixed an error in Swapchain_GetFrontBufferData.

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* programs/winemenubuilder/winemenubuilder.c:
	Extract the executable name for msi advertised shortcuts.

2005-11-08  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Fix a problem spotted by Dmitry and another one stopping correctly
	formatted lnk files from being generated.

2005-11-07  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/shlwapi/reg.c, dlls/shlwapi/shlwapi.spec:
	Semi-stub implementation for SHRegGetValue(A|W).

2005-11-07  James Hawkins <truiken@gmail.com>

	* include/winerror.h:
	Define the setupapi hresult errors.

2005-11-07  Peter Lemenkov <petro@mail.ru>

	* include/wininet.h:
	Added some missing definitions in wininet.h.

2005-11-07  Huw Davies <huw@codeweavers.com>

	* include/xmldom.idl, include/xmldomdid.h:
	Add IXMLDOMParseError.

2005-11-07  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/brsfolder.c:
	More robust code for querying ShellFolder attributes (some
	ShellFolders ignore the flag mask in GetAttributesOf).

2005-11-07  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/parser.c, dlls/setupapi/tests/.cvsignore,
	  dlls/setupapi/tests/Makefile.in, dlls/setupapi/tests/parser.c:
	Added a bunch of tests for the INF parser.

2005-11-07  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/enhmfdrv/graphics.c, dlls/gdi/font.c, dlls/gdi/gdi_private.h,
	  dlls/gdi/path.c, dlls/gdi/tests/metafile.c:
	First draft of ExtTextOut on an open path.

2005-11-07  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/Makefile.in, dlls/dxdiagn/container.c,
	  dlls/dxdiagn/provider.c:
	- bug fixes on AddProp, AddContainer (stupid buffer overflows)
	- more complete container hierarchy
	- DXDiag_AddFileDescContainer service to fill dll info
	- almost complete DXDiag_InitDXDiagDirectXFilesContainer (for now)

2005-11-07  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/sysparams.c:
	Make SystemParametersInfoA( SPI_SETNONCLIENTMETRICS, ...) work by
	adding the needed non client metrics A->W conversions.

2005-11-07  Stefan Huehner <stefan@huehner.org>

	* dlls/secur32/secur32.c:
	Fix segfault when querying non-existent SecurityProvider.

2005-11-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/amstream/Makefile.in, dlls/amstream/amstream.c,
	  dlls/amstream/amstream_private.h, dlls/amstream/mediastream.c:
	Add stub implementation of IMediaStream interface.

2005-11-07  Vitaly Lipatov <lav@etersoft.ru>

	* dlls/atl/atl.spec, dlls/atl/atl_main.c:
	AtlAxWinInit dummy implementation.

2005-11-07  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/ntdll.spec, dlls/ntdll/rtlstr.c, include/winternl.h:
	Implement RtlInitAnsiStringEx.

2005-11-07  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/drawprim.c:
	Verify that the texture coordinate used in DrawStridedSlow is in range
	before trying to referencing the associated data.

2005-11-07  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Prevent SetFVF from clearing down the vertex declaration of the FVF is
	zero. This is required for Prince of Persia, The sands of time.

2005-11-07  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/resource.c:
	LdrAccessResource should pop 16 bytes off the stack since it is a
	WINAPI function.

2005-11-07  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/olepicture.c, dlls/oleaut32/tests/olepicture.c:
	Added support of loading of IPicture data from non-statable
	IStreams. Added testcases for this.

2005-11-07  James Hawkins <truiken@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	Free an alloc'ed string.

2005-11-07  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/user/cursoricon.c:
	When creating black & white cursor icon, handle special case where
	hbmColor is null and hbmMask specify a bitmap having twice the height
	and formatted so the upper half is the icon AND bitmask and the lower
	one is the OR bitmask.

2005-11-07  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/d3d8/d3dcore_gl.h:
	Remove already included headers.

2005-11-05  Markus Amsler <markus.amsler@oribi.org>

	* dlls/gdi/driver.c, dlls/gdi/enhmetafile.c, dlls/gdi/font.c,
	  dlls/gdi/metafile.c, dlls/gdi/mfdrv/init.c, dlls/gdi/painting.c,
	  dlls/gdi/palette.c, dlls/gdi/path.c:
	Improve c2man Documented-Total count.

2005-11-05  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/tests/shlfolder.c:
	- Move target folder initialization to a dedicated function.
	- Use this function in BindToObject (should be faster).
	- Special handling for FolderShortcut objects in Initialize method.
	- Removed a todo_wine from a no longer failing unit test.

2005-11-05  Davin McCall <davmac@davmac.org>

	* dlls/winmm/winealsa/audio.c:
	Avoid getting ahead of dsound mixer when using non-hw device. Also
	avoid using internal ALSA call to retrieve hardware play position.

2005-11-05  Kevin Koltzau <kevin@plop.org>

	* dlls/ntdll/thread.c:
	x86_64 references a named union, ensure unions are not nameless.

2005-11-05  Henning Gerhardt <henning.gerhardt@web.de>

	* dlls/commdlg/cdlg_De.rc:
	Update German resource file.

2005-11-05  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/socket.c, dlls/winsock/tests/sock.c:
	- Stricten cases for NT in a two tests.
	- WSAAddressToString[AW] don't fail on Win9x for those.
	- Modify it to pass new tests.

2005-11-05  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/msi/tests/db.c:
	Win9x returns MSIDBERROR_NOERROR.

2005-11-05  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/node.c, dlls/msxml3/nodelist.c, dlls/msxml3/tests/domdoc.c:
	Filter out CTEXT nodes when building element child lists.
	get_item and get_length should honour the filter.
	Add some '\n's to the tests so that libxml2 lists CTEXT nodes.

2005-11-05  Dimi Paun <dimi@lattica.com>

	* dlls/comctl32/listview.c:
	Validate the column index passed in by the caller.

2005-11-05  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/varformat.c:
	Fixed FMT_DATE_GENERAL and FMT_DATE_TIME_SYS cases in
	VARIANT_FormatDate.

2005-11-04  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Tidy up UpdateTexture and add support for updating cube textures.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/win16.api, tools/winapi/win32.api:
	Update win16.api and win32.api.

2005-11-04  Markus Amsler <markus.amsler@oribi.org>

	* dlls/advapi32/advapi.c, dlls/advapi32/crypt.c, dlls/advapi32/eventlog.c,
	  dlls/advapi32/registry.c, dlls/advapi32/security.c,
	  dlls/advapi32/service.c:
	Improve c2man Documented-Total count.

2005-11-04  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/except.c:
	More verbose output when unhandled exception occurs.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c, dlls/shell32/tests/shelllink.c:
	Partially implement and test the shelllink object's
	IShellLinkDataList::CopyDataBlock and GetFlags methods.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_parser.pm:
	volatile is legal (and used now!) in a typedef struct {}.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/dbghelp/source.c, include/dbghelp.h, include/imagehlp.h,
	  tools/winapi/win32.api:
	Fix typo: PSYM_ENUMSOURCEFILES_CALLBACK instead of
	PSYM_ENUMSOURCFILES_CALLBACK.

2005-11-04  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/advapi32/tests/registry.c:
	- RegConnectRegistryA fails on Win9x when Remote Registry Service is
	not installed (WinReg.DLL is missing).
	- Test "\\" prefixed computer names too.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Use advapi32.CommandLineFromMsiDescriptor to get msi component paths.

2005-11-04  Mike McCormack <mike@codeweavers.com>

	* dlls/advapi32/advapi.c, dlls/advapi32/advapi32.spec:
	Implement advapi32.CommandLineFromMsiDescriptor. It's a wrapper for
	msi.MsiProvideComponentFromDescriptor.

2005-11-04  James Hawkins <truiken@gmail.com>

	* dlls/hhctrl.ocx/hhctrl.c:
	Pass HtmlHelp commands to doWinMain.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* dlls/comctl32/string.c:
	Move functions in comctl32/string.c to remove function declaration.

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* tools/winapi/winapi_function.pm, tools/winapi/winapi_local.pm,
	  tools/winapi/winapi_parser.pm:
	__RPC_STUB is a calling convention as well (#defined as __stdcall).

2005-11-04  Vincent Béron <vberon@mecano.gme.usherb.ca>

	* include/wine/port.h:
	Fix warning about memmove re#definition.

2005-11-04  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/winsock/tests/sock.c:
	Make 4 WSAStringToAddress* tests don't fail on Win9x.

2005-11-04  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tmarshal.c:
	Added support for VT_I8/VT_UI8 marshalling.

2005-11-04  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c:
	Add support for updating to D3DFMT_UNKNOWN surfaces and tidy up update
	surface a little.

2005-11-04  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tests/olefont.c:
	Add a test for Invoking an OleFont function.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/setupapi/install.c:
	Added support for optional section.ntx86 and section.nt in
	InstallHinfSection when current version is set to NT.

2005-11-03  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement OLE object notifications, making sure to cope with the case
	of the advise holder not being created because no notifications are
	needed.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* tools/wine.inf:
	Get rid of a double backslash.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/string.c:
	Use Win32 APIs for string comparison.

2005-11-03  Vijay Kiran Kamuju <infyquest@gmail.com>

	* programs/winecfg/audio.c:
	Show detected audio drivers in autodetect.

2005-11-03  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/x11drv/winpos.c:
	Stricter check whether a window needs to be mapped on the screen.

2005-11-03  Kieran Clancy <n0dalus+wine@gmail.com>

	* dlls/ntdll/time.c:
	Added another CST (Australian Central Daylight Time) to TZ_INFO.

2005-11-03  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/oleaut32/tests/vartype.c, dlls/oleaut32/variant.c:
	Extend VarCmp() and add test cases.

2005-11-03  Kevin Koltzau <kevin@plop.org>

	* dlls/msvcrt/msvcrt.h, dlls/msvcrt/process.c, dlls/msvcrt/string.c,
	  dlls/msvcrt/tests/headers.c, dlls/msvcrt/thread.c,
	  include/msvcrt/process.h, include/msvcrt/stddef.h:
	Fix warnings and errors in 64bit.

2005-11-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Replaced tabs with spaces.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/commdlg/cdlg.h, dlls/commdlg/cdlg_Bg.rc, dlls/commdlg/cdlg_Cn.rc,
	  dlls/commdlg/cdlg_De.rc, dlls/commdlg/cdlg_En.rc,
	  dlls/commdlg/cdlg_Es.rc, dlls/commdlg/cdlg_Fi.rc,
	  dlls/commdlg/cdlg_Fr.rc, dlls/commdlg/cdlg_It.rc,
	  dlls/commdlg/cdlg_Nl.rc, dlls/commdlg/cdlg_No.rc,
	  dlls/commdlg/cdlg_Pl.rc, dlls/commdlg/cdlg_Pt.rc,
	  dlls/commdlg/cdlg_Ru.rc, dlls/commdlg/cdlg_Si.rc,
	  dlls/commdlg/cdlg_Sk.rc, dlls/commdlg/cdlg_Sv.rc,
	  dlls/commdlg/cdlg_Th.rc, dlls/commdlg/cdlg_Uk.rc,
	  dlls/commdlg/printdlg.c:
	Authors: Vijay Kiran Kamuju <infyquest@gmail.com>, Jonathan Ernst <Jonathan@ErnstFamily.ch>
	Display an error if no printer is installed.

2005-11-03  Marcus Meissner <marcus@jet.franken.de>

	* dlls/msvcrt/.cvsignore, dlls/msvcrt/Makefile.in, dlls/msvcrt/rsrc.rc:
	Specify a DLL version for msvcrt.dll.

2005-11-03  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c,
	  dlls/msxml3/tests/domdoc.c:
	Add indexed access to attributes (nodemap) and childNodes
	(nodelist), with some testcases.

2005-11-03  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/tests/shlfolder.c:
	Added some more unit tests for FolderShortcut objects.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/comm.c:
	Fixed fd leaks (spotted by Cihan Altinay).

2005-11-03  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/msi/action.c, dlls/msi/appsearch.c, dlls/msi/msi.c,
	  dlls/version/info.c, dlls/version/install.c, dlls/version/ver16.c,
	  include/winver.h:
	Fix some wrong prototypes.

2005-11-03  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/dxdiagn/container.c, dlls/dxdiagn/provider.c:
	Fill provider with some empty containers.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shlexec.c, dlls/shell32/tests/shlexec.c:
	Invoke shortcuts through IContextMenu, rather than trying to access
	them directly.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* tools/wine.inf:
	Add the ContextMenuHandlers key for shortcuts so the new context menu
	code can work.

2005-11-03  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/editor.c, dlls/riched20/editstr.h, dlls/riched20/paint.c:
	Cache background color brush instead of recreating it at each screen
	update.

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/winedbg/break.c:
	Fixed 'break NN' command (using dbghelp.SymEnumLines).

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c, programs/wineconsole/winecon_private.h,
	  programs/wineconsole/wineconsole.c:
	Fixed wineconsole startup when restoring registry settings.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/classes.c, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	Remove some redundant null pointer checks.

2005-11-03  Alexandre Julliard <julliard@winehq.org>

	* dlls/shell32/shfldr_unixfs.c, dlls/shell32/shlfolder.c,
	  dlls/shell32/tests/shlfolder.c:
	Authors: Vitaliy Margolen <wine-patch@kievinfo.com>, Michael Jung <mjung@iss.tu-darmstadt.de>
	Set all capability flags supported by the shellfolder, disregarding
	the flag mask given to GetAttributesOf.
	Unit tests to demonstrate this behaviour.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	Add missing semicolons that caused compile trouble on FreeBSD.

2005-11-03  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Pass the correct verb.
	Add a space between extra parameters.
	Wait for ShellExecute to complete.

2005-11-03  Steven Edwards <winehacker@gmail.com>

	* dlls/advpack/advpack.c, dlls/advpack/advpack.spec:
	Add a real stub for Advpack.extract.

2005-11-03  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/thread.c:
	Get rid of CPU id when copying context

2005-11-03  Raphael Junqueira <fenix@club-internet.fr>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/drawprim.c,
	  dlls/d3d8/vshaderdeclaration.c:
	- defined D3DCOLOR_B macros to access byte values of D3DCOLOR
	- use D3DCOLOR macros instead of using shift + masks
	- fix a bug where diffuse.lpData checked instead of specular.lpData
	- implement color fixup on ARB VShader compilation code:
	->  on input parameters using swizzle
	-> add is_color parameter on vshader_program_add_param

2005-11-03  Hans Leidekker <hans@it.vu.nl>

	* dlls/advapi32/advapi32.spec, dlls/advapi32/service.c:
	Added stub for RegisterServiceCtrlHandlerEx{A,W}.

2005-11-03  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/riched20/caret.c, dlls/riched20/editor.c, dlls/riched20/editor.h,
	  dlls/riched20/paint.c, dlls/riched20/wrap.c:
	Added support for EM_REQUESTRESIZE message, EN_REQUESTRESIZE
	notification, and ENM_REQUESTRESIZE event mask.

2005-11-03  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/scroll.c:
	Scroll bar: Keep the caret blinking during scroll operations (only
	handle WM_SYSTIMER messages that belong to the scroll bar).

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/dbghelp/dbghelp.spec, dlls/dbghelp/dbghelp_private.h,
	  dlls/dbghelp/source.c, dlls/dbghelp/symbol.c, include/dbghelp.h:
	Implemented SymEnumLines.

2005-11-03  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c, programs/wineconsole/user.c,
	  programs/wineconsole/winecon_user.h:
	Now filling external leading in font cells.

2005-11-02  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	Don't call Release on a null ptr.

2005-11-02  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/tests/thread.c, dlls/ntdll/exception.c,
	  dlls/ntdll/ntdll_misc.h, dlls/ntdll/signal_i386.c,
	  dlls/ntdll/signal_powerpc.c, dlls/ntdll/signal_sparc.c,
	  dlls/ntdll/signal_x86_64.c, dlls/ntdll/thread.c,
	  include/wine/server_protocol.h, server/protocol.def, server/thread.c,
	  server/thread.h, server/trace.c:
	Fixed Get/SetThreadContext to work properly on suspended threads.
	Added a test case.

2005-11-02  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/opengl32/wgl.c, dlls/shell32/shelllink.c:
	Correct WINAPI position for MSVC portability.

2005-11-02  Eric Pouech <eric.pouech@wanadoo.fr>

	* programs/wineconsole/dialog.c:
	Fixed crash in font browsing for raster fonts.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/variant.c:
	Fix a crash during +variant logging caused by a typo causing an array
	to be one element less than expected.

2005-11-02  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/surface.c,
	  include/wine/wined3d_interface.h:
	Implement D3DFMT_UNKNOWN surfaces, this seems to be used a lot in d3d8
	but I haven't found any d3d9 application that uses D3DFMT_UNKNOWN
	surfaces yet.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	- Make sure to clean up properly on error.
	- Restrict the critical section to getting the channel buffer and
	adding a reference to it.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c:
	- Make wParamFlags in the paramdesc dumping function human readable.
	- Enums should be VT_I4 instead of VT_INT.
	- Trace the return value from the ITypeInfo_fnInvoke.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	NULL and empty strings are the same in conditions.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/imm32/imm.c:
	Change a FIXME message to a comment.

2005-11-02  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/comctl32/tab.c:
	Avoid printing out a possibly uninitialized variable.

2005-11-02  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/node.c, dlls/msxml3/tests/domdoc.c:
	Extend get_nodeName add testcases for it.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	Stub implementation for MsiAdvertiseScriptA/W.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/create.c, dlls/msi/delete.c, dlls/msi/distinct.c,
	  dlls/msi/insert.c, dlls/msi/order.c, dlls/msi/record.c,
	  dlls/msi/select.c, dlls/msi/string.c, dlls/msi/table.c,
	  dlls/msi/update.c, dlls/msi/where.c:
	Create the +msidb debug channel for msi database code.

2005-11-02  Aric Stewart <aric@codeweavers.com>

	* dlls/msi/action.c:
	Force files to install if the REINSTALL property is set.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/resource.c:
	Make LdrAccessResource call an internal function to satisfy Shrinker.

2005-11-02  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/named_pipe.c:
	Fix error returned when opening nonexistent pipes.

2005-11-02  Alexandre Julliard <julliard@winehq.org>

	* server/context_i386.c, server/context_powerpc.c, server/context_sparc.c,
	  server/context_x86_64.c, server/thread.c, server/thread.h:
	Moved the platform-independent part of the get/set_thread_context
	requests to a common file.

2005-11-02  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Added some comments to document unixfs.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/tests/package.c:
	Fix parameter handling in MsiSetTargetPath, and add a test for it.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Implement the RemoveFiles action.

2005-11-02  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/rtlstr.c:
	Minor fixes to rtl string functions.

2005-11-02  David Kredba <kredba@math.cas.cz>

	* dlls/commdlg/cdlg_Cs.rc, dlls/devenum/devenum.rc, dlls/hhctrl.ocx/Cs.rc,
	  dlls/hhctrl.ocx/hhctrl.rc, dlls/mpr/mpr_Cs.rc:
	Czech resources update.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/msi.spec, include/msi.h:
	Stub implementation for MsiGetFileHashA/W.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Use an enumeration for file states.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Define NONAMELESSUNION and NONAMELESSSTRUCT for older compilers.

2005-11-02  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/comctl32/listview.c:
	Clear bLButtonDown flags if mouse is not down.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/riched20/reader.c, dlls/riched20/rtf.h:
	Convert all RTFPanic and RTFMsg calls to ERR calls.

2005-11-02  Rob Shearman <rob@codeweavers.com>

	* include/rpcndr.h:
	Add declarations for NdrAsyncClientCall, NdrAsyncStubCall and
	RpcMgmtEnableIdleCleanup.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* tools/winedump/lnk.c:
	Handle msi component identifiers without a feature guid.

2005-11-02  Mike McCormack <mike@codeweavers.com>

	* dlls/msxml3/node.c:
	Implement IXMLDOMNode::get_nodeName.

2005-11-02  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/oleaut.c:
	The PSDispatch PS class factory can manage both typelib marshalled and
	IDispatch, which is NDR marshalled, so we need a wrapper to call the
	appropriate CreateProxy or CreateStub function.

2005-11-02  Lionel Ulmer <lionel.ulmer@free.fr>

	* dlls/x11drv/settings.c, include/winuser.h:
	Add 'ENUM_...._SETTINGS' flag and make use of it in the X11DRV code.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/except.c, dlls/ntdll/exception.c,
	  include/wine/server_protocol.h, server/debugger.c,
	  server/protocol.def, server/thread.c:
	Don't send an extra signal when waiting for a debug event, just do a
	normal wait.  Return the debug event status directly as return value
	of the server call.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/thread.c, server/context_i386.c, server/context_powerpc.c,
	  server/context_sparc.c, server/context_x86_64.c:
	Don't send the incoming context to the server for get_thread_context,
	instead copy only the relevant fields of the return value on the
	client side.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/named_pipe.c:
	Fix error returned when exceeding allowed instances.

2005-11-01  Martin Fuchs <martin-fuchs@gmx.net>

	* dlls/comctl32/string.c:
	Include config.h and port.h for strncasecmp() in MSVC port.

2005-11-01  Bernd Schmidt <bernds_cb1@t-online.de>

	* dlls/kernel/file.c:
	Implemented FindExSearchLimitToDirectories.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/msvcrt/msvcrt.spec:
	Fixed _wstrdate/_wstrtime parameters.

2005-11-01  Alexandre Julliard <julliard@winehq.org>

	* dlls/wininet/http.c:
	Authors: Marcus Meissner <marcus@jet.franken.de>, Walter Weiss <wjweiss@hotmail.com>
	Added handling of more HTTP standard headers and binary search lists.

2005-11-01  Marcus Meissner <marcus@jet.franken.de>

	* dlls/oleaut32/tests/vartype.c:
	SysReAllocString of same pointer returns TRUE.

2005-11-01  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/shfldr_unixfs.c:
	Fixed crash in unixfs shellfolder handling with winamp.

2005-11-01  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/amstream/amstream.c, dlls/amstream/main.c:
	Use a more standard indentation style.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* tools/wine.inf:
	Remove version information.

2005-11-01  Ulrich Czekalla <ulrich@codeweavers.com>

	* dlls/x11drv/clipboard.c:
	Improve handling of mapping between X and Windows formats.
	Add support for UTF8.

2005-11-01  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/tests/om.c, server/main.c, server/object.c, server/object.h,
	  server/winstation.c:
	- Use OBJ_CASE_INSENSITIVE in object lookup.
	- Remove case_sensitive flag from namespace.
	- Remove todo_wine from now succeeding tests.

2005-11-01  Davin McCall <davmac@davmac.org>

	* dlls/dsound/mixer.c:
	PhaseCancel subtracts secondary buffer from primary buffer, not the
	other way around.

2005-11-01  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/painting.c:
	ScrollWindowEx: Don't move the caret of child windows and hide it only
	if it's in the source or in the destination rectangle.

2005-11-01  Robert Shearman <rob@codeweavers.com>

	* dlls/shell32/shfldr.h, dlls/shell32/shfldr_desktop.c,
	  dlls/shell32/shfldr_fs.c, dlls/shell32/shlfolder.c:
	Convert SHELL32_BindToChild to Unicode and fix up the callers.

2005-11-01  Robert Shearman <rob@codeweavers.com>

	* dlls/ntdll/exception.c, dlls/ntdll/signal_i386.c:
	Make the call exception handler function more compatible with NT and
	with what Shrinker expects.

2005-10-31  Stefan Huehner <stefan@huehner.org>

	* programs/winetest/Makefile.in:
	Add msxml3,setupapi tests to winetest.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* configure, configure.ac, programs/Makefile.in,
	  programs/eject/.cvsignore, programs/eject/Makefile.in,
	  programs/eject/eject.c:
	Added an 'eject' Winelib app that allows unmounting and ejecting a CD
	even if a Windows app has files open on it.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/ndr_marshall.c:
	Marshal enums.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/msxml3/domdoc.c, dlls/msxml3/element.c, dlls/msxml3/node.c,
	  dlls/msxml3/nodelist.c, dlls/msxml3/nodemap.c:
	Actually print the IIDs.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/enhmetafile.c, include/wingdi.h:
	Implement playback of EMR_ALPHABLEND.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/freetype.c:
	Only select a bitmap font as a last resort if we can't find a font
	with the correct facename.

2005-10-31  Marcus Meissner <marcus@jet.franken.de>

	* server/mapping.c:
	Do not overflow the stackbased "nt" struct when reading non-conforming
	PE files.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* DEVELOPERS-HINTS, configure, configure.ac, dlls/Makefile.in,
	  dlls/ttydrv/.cvsignore, dlls/ttydrv/Makefile.in,
	  dlls/ttydrv/bitmap.c, dlls/ttydrv/dc.c, dlls/ttydrv/graphics.c,
	  dlls/ttydrv/objects.c, dlls/ttydrv/palette.c, dlls/ttydrv/ttydrv.h,
	  dlls/ttydrv/ttydrv_main.c, dlls/ttydrv/winetty.drv.spec,
	  dlls/ttydrv/wnd.c:
	Get rid of the no longer used tty driver.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/user/driver.c:
	Default to the null driver instead of dying if the specified display
	driver couldn't be loaded.

2005-10-31  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/painting.c, dlls/user/tests/msg.c:
	Add the tests for behaviour of [In]validateRect and [In]validateRgn
	with hwnd set to 0, make them pass under Wine.

2005-10-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shdocvw/shdocvw_main.c:
	Only return SHDOCVW_ClassFactory if asked for CLSID_WebBrowser.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/usrmarshal.c:
	Deal with pExcepInfo == NULL.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Make sure to unregister all the classes that were registered when msi
	is unloaded, so we can register again cleanly.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/tests/shlexec.c:
	Add void to empty declaration list.

2005-10-31  Alexandre Julliard <julliard@winehq.org>

	* dlls/gdi/dc.c, dlls/gdi/driver.c:
	Default to an empty driver instead of dying if the specified display
	driver couldn't be loaded.

2005-10-31  Michael Jung <mjung@iss.tu-darmstadt.de>

	* configure, configure.ac, dlls/shdocvw/Makefile.in,
	  dlls/shdocvw/tests/.cvsignore, dlls/shdocvw/tests/Makefile.in,
	  dlls/shdocvw/tests/shortcut.c:
	Added initial tests for shdocvw's FolderShortcut related
	functionality.

2005-10-31  Marcus Meissner <meissner@suse.de>

	* dlls/ntdll/exception.c, dlls/ntdll/signal_i386.c:
	Added assembly implementation of EXC_CallHandler.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/msipriv.h, dlls/msi/package.c,
	  dlls/msi/tests/package.c:
	Fix and test MsiGetProperty and MsiSetProperty.

2005-10-31  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c, dlls/msi/tests/.cvsignore, dlls/msi/tests/Makefile.in,
	  dlls/msi/tests/msi.c:
	Improve MsiUseFeatureEx and MsiGetFeatureState a little, add some
	simple test cases.

2005-10-31  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c, dlls/wininet/tests/http.c:
	Implement InternetCreateUrlW and test cases.

2005-10-31  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dc.c, dlls/gdi/enhmfdrv/dc.c, dlls/gdi/enhmfdrv/init.c,
	  dlls/gdi/tests/.cvsignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/dc.c, dlls/gdi/tests/metafile.c:
	Fix handling of relative state indices in RestoreDC.
	Fix return value of SaveDC when writing to an emf.
	Before writing the EMR_EOF record we should ensure that we clear the
	state stack.

2005-10-31  Christian Costa <titan.costa@wanadoo.fr>

	* dlls/ddraw/direct3d_opengl.c, dlls/ddraw/light.c,
	  dlls/ddraw/opengl_private.h:
	Finish moving d3d[1..3] light code to use d3d7.

2005-10-31  Marcus Meissner <meissner@suse.de>

	* dlls/kernel/time.c:
	Define obsoleted CLK_TCK to CLOCKS_PER_SEC if not there.

2005-10-31  Hans Leidekker <hans@it.vu.nl>

	* dlls/odbccp32/odbccp32.c:
	Improve the implementation of SQLConfigDataSource, SQLConfigDriver,
	SQLInstallDriver{,Ex}, SQLInstallerError and
	SQLInstallTranslator{,Ex}.

2005-10-31  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/crypt32.spec,
	  dlls/crypt32/tests/cert.c:
	Implement CertSignSignature and CertVerifySignature(Ex).

2005-10-31  Robert Reif <reif@earthlink.net>

	* dlls/winmm/tests/wave.c:
	Add waveOutPause/waveOutRestart test.
	Tighten up play duration test when ending too soon.
	Set VirtualFree size to 0.

2005-10-31  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/shlwapi/tests/path.c:
	Stop PathIsValidCharW tests after 100 failing tests.

2005-10-31  Roderick Colenbrander <thunderbird2k@gmx.net>

	* dlls/d3d9/query.c:
	In case of D3D9 the CreateQuery call can be used to retrieve status  
	information. According to MSDN the 'ppQuery' parameter can be set to
	NULL to detect if a certain query Type is supported.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Add a stub for the AllocateRegistrySpace action.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/database.c, dlls/msi/msi.c,
	  dlls/msi/package.c, include/msiquery.h:
	Define MSIDBOPEN_ constants using LPCWSTR when compiling Wine.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Add a read-only implementation of the SelectionTree control.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	Simplify register_progid() and remove a fixed length buffer.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Handle MaskEdit masks containing dashes and other constant
	characters.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Use msi_get_property_int() in a few more places.

2005-10-30  Alexandre Julliard <julliard@winehq.org>

	* dlls/winecrt0/crt0_private.h, dlls/winecrt0/delay_load.c,
	  dlls/winecrt0/dll_entry.c, dlls/winecrt0/dll_main.c,
	  dlls/winecrt0/drv_entry.c, dlls/winecrt0/exe_entry.c,
	  dlls/winecrt0/exe_wentry.c, dlls/winecrt0/init.c,
	  dlls/winecrt0/stub.c, include/winnt.h:
	Make all winecrt0 functions and variables hidden.

2005-10-30  Julien Cegarra <JulienC@psychologie-fr.org>

	* dlls/Makefile.in, dlls/winmm/Makefile.in, dlls/winmm/sound.drv.spec,
	  dlls/winmm/sound.spec:
	Correct name of sound.dll to sound.drv (WIN16).

2005-10-30  Kai Blin <blin@gmx.net>

	* dlls/secur32/Makefile.in, dlls/secur32/dispatcher.c,
	  dlls/secur32/secur32_priv.h:
	A dispatcher for running ntlm_auth.

2005-10-30  Michael Kaufmann <hallo@michael-kaufmann.ch>

	* dlls/user/scroll.c:
	Handle the left and right arrow keys.

2005-10-30  Christian Costa <titan.costa@wanadoo.fr>

	* include/wine/library.h:
	Remove no longer used wine_dbg_parse_options and wine_dbg_add_options
	prototypes.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c, dlls/msi/msi.spec, include/msiquery.h:
	Add a stub implementation of msi.MsiSetMode.

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/classes.c:
	Remove unused package parameter of register_progid_base().

2005-10-30  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/dialog.c, dlls/msi/package.c:
	Use "static const" rather than "const static" as gcc -W complains
	about the former.

2005-10-30  Robert Reif <reif@earthlink.net>

	* dlls/msvcrt/msvcrt.spec, dlls/msvcrt/tests/time.c, dlls/msvcrt/time.c:
	Implement _wstrdate and _wstrtime with tests.

2005-10-30  Peter Beutner <p.beutner@gmx.net>

	* dlls/msvcrt/cppexcept.c:
	Fix exception handling for non CXX_EXCEPTIONs.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* server/console.c, server/event.c, server/handle.c, server/mailslot.c,
	  server/mapping.c, server/mutex.c, server/named_pipe.c,
	  server/object.c, server/object.h, server/process.c,
	  server/semaphore.c, server/timer.c, server/winstation.c:
	Pass object attributes to create_named_object & find_object.

2005-10-29  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/kernel/atom.c:
	Implemented local/global atom creation, deletion & lookup on top of
	ntdll.

2005-10-29  Juan Lang <juan_lang@yahoo.com>

	* dlls/wldap32/wldap32.spec:
	Export functions by ordinal, cryptnet.dll at least depends on it.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Don't change the UI level during ExecuteAction.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Implement MsiGetFeatureUsageA and MsiUseFeature(Ex)A using their W
	versions.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c,
	  dlls/msi/helpers.c:
	Remove the unused 1st parameter of ACTION_VerifyComponentForAction.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Explicitly check for MSICONDITION_TRUE being returned from
	MsiEvaluateCondition.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/files.c:
	Some installers don't call the CreateFolders action before the
	InstallFiles action as MSDN specifies, but it still seems to work, so
	make sure that we create component directories in the InstallFiles
	action anyway.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_GetItem[A/W] into one function.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y, dlls/msi/tests/package.c:
	Add a bunch of tests for MsiEvaluateCondition and make them pass.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Make enter and escape trigger the default and cancel buttons in
	dialogs.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/table.c:
	Deleted two buggy functions that incorrectly and inefficiently check
	whether a row already exists in a table, and replaced them with a call
	to an existing working function that does the same thing correctly.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Remove an incorrect comment and check for 0 being an invalid file
	handle.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Extract file directly to their target location, bypassing the need to
	use temporary files and move files.

2005-10-29  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/typelib.c, dlls/oleaut32/typelib.h:
	- Read DLL name from modules in MSFT typelibs.
	- A name offset of -1 for a parameter means that it has the same name
	as the function.
	- Print an error if a ReadName is attempted with an offset of -1,
	since this will read garbage.
	- Implement ITypeInfo_GetDllEntry.

2005-10-29  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/device.c, dlls/wined3d/stateblock.c,
	  dlls/wined3d/wined3d_private.h:
	Move the softwareVertexProcessing flag from the stateblock to the
	device because its state shouldn't be recorded in a stateblock.

2005-10-29  Robert Shearman <rob@codeweavers.com>

	* dlls/gdi/dc.c:
	Print an error if a DC is created with a bad device.

2005-10-29  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/driveui.c:
	Set list view's text directly - don't use fill_drives_list for that.
	Enable "Apply" button when text changes.

2005-10-29  Kevin Koltzau <kevin@plop.org>

	* dlls/msvcrt/console.c:
	Enable line editing for _cgets.

2005-10-29  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ole32/tests/stg_prop.c:
	Delete some temp files created by the ole32 tests.

2005-10-29  Thomas Weidenmueller <wine-patches@reactsoft.com>

	* dlls/msi/action.c:
	Passing NULL as the last two parameters to ReadFile is illegal and
	actually causes a crash on windows. The attached patch fixes this.

2005-10-29  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/urlmon/file.c, dlls/urlmon/tests/protocol.c:
	Report BINDSTATUS_SENDINGREQUEST in FileProtocol::Start.

2005-10-29  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Add an implementation for MsiGetShortcutTargetA/W.

2005-10-28  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c, dlls/ntdll/file.c, dlls/ntdll/ntdll_misc.h:
	Added an implementation of the FSCTL_DISMOUNT_VOLUME ioctl that
	attempts to unmount the Unix device.

2005-10-28  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/om.c, include/winternl.h:
	Fix NtQueryDirectoryObject prototype, documentation, and the
	definition of the structure it uses.

2005-10-28  Huw Davies <huw@codeweavers.com>

	* dlls/gdi/dc.c, dlls/gdi/tests/.cvsignore, dlls/gdi/tests/Makefile.in,
	  dlls/gdi/tests/mapping.c:
	xform can be NULL when setting the identity.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/install.c:
	Fix a memory leak.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Handle MSI advertised shortcuts in the shelllink object.

2005-10-28  Henning Gerhardt <henning.gerhardt@web.de>

	* programs/regedit/De.rc:
	Update the German resource file.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Put the UI update code for cabinet file into a separate function.

2005-10-28  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/version/install.c:
	Correct the way that VerFindFileA checks for a file that is
	exclusively locked.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/thread.c:
	Test CreateThread() for reception of NULL pointer to TID.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/user/tests/msg.c:
	Don't pass CreateThread() with a NULL pointer to TID as Win9x does not
	create a thread then.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.c:
	Return an error in MsiGetComponentPathW if passed a null component.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/cond.y:
	Fix error handling in MsiEvaluateCondition.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Translate INVALID_HANDLE_VALUE to zero for cabinet handles.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/console.c:
	Don't send a CTRL_C_EVENT signal to console if we are on Win9x and
	console signal handler is set to NULL.

2005-10-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_InsertItem[A/W] into one function.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/files.c:
	Fix a memory leak in the cabinet extracting code.

2005-10-28  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/cert.c, dlls/crypt32/encode.c, dlls/crypt32/protectdata.c:
	Use CryptMem functions for internal memory allocation.

2005-10-28  Michael Jung <mjung@iss.tu-darmstadt.de>

	* programs/regedit/De.rc:
	Added German resources for regedit's find dialog.

2005-10-28  James Hawkins <truiken@gmail.com>

	* dlls/wininet/internet.c:
	Correct parameter names for InternetSetFilePointer.

2005-10-28  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/variant.c:
	Handle VT_DECIMAL in VarCmp().

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/wcs.c:
	Use the correct buffer - reported by Jesse Allen.

2005-10-28  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/kernel/tests/thread.c:
	Add a test for GetThreadExitCode.
	Use GetModuleHandleA as kernel32 should be present on every system.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Implement IContextMenu::QueryContextMenu and
	IContextMenu::InvokeCommand.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msi.spec:
	Fix MsiGetPropertyA/W spec declarations.

2005-10-28  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/files.c:
	Create component folders in the CreateFolders action.

2005-10-28  Vitaliy Margolen <wine-patch@kievinfo.com>

	* programs/winecfg/appdefaults.c:
	Define OS environment variable on WinNT versions.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c, dlls/ntdll/sync.c, dlls/ntdll/virtual.c,
	  include/wine/server_protocol.h, server/event.c, server/handle.c,
	  server/handle.h, server/mailslot.c, server/mapping.c, server/mutex.c,
	  server/named_pipe.c, server/protocol.def, server/semaphore.c,
	  server/timer.c, server/trace.c, server/winstation.c:
	- Send whole OBJECT_ATTRIBUTES.Attributes to the server not just an
	inherit flag.
	- Pass DesiredAccess to the server when creating mailslot.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/mapi32/tests/Makefile.in, dlls/mapi32/tests/prop.c:
	Allow mapi32 tests to load and exit gracefully if mapi32.dll isn't
	installed.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/advapi32/tests/registry.c:
	Delete a temp file.

2005-10-27  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/wininet/internet.c:
	Add default implementation for max_conn_pre_*_server flag.
	Add stubs for the above flags in InternetSetOption.

2005-10-27  Phil Krylov <phil@newstar.rinet.ru>

	* dlls/gdi/clipping.c, dlls/gdi/dc.c, dlls/gdi/enhmfdrv/bitblt.c,
	  dlls/gdi/font.c:
	Fixed SetTextAlign(), SetBkMode(), SetROP2(), SetPolyFillMode(), and
	SetStretchBltMode() to assume that the corresponding DC driver
	functions return only a BOOL success flag, and therefore a proper
	return value should be generated by the main function. Fixed
	EMFDRV_StretchDIBits() to return a proper value (like
	MFDRV_StretchDIBits already does). Added comments about other cases of
	improper return values.

2005-10-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/user/input.c, dlls/user/listbox.c, dlls/user/message.c,
	  dlls/user/spy.c, include/winuser.h:
	Add some missing USER definitions, add a couple of FIXMEs for not
	implemented features.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/custom.c:
	If an action fails, print out its name as well as the error code.  Use
	%d for error codes so it's easy to match them up to something in
	winerror.h.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/action.h, dlls/msi/appsearch.c,
	  dlls/msi/classes.c, dlls/msi/custom.c, dlls/msi/format.c,
	  dlls/msi/helpers.c:
	Rename load_dynamic_stringW to msi_dup_record_field to better describe
	what it does, and replace a few instances with MSI_RecordGetString to
	avoid allocating memory.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c:
	Add test for undocumented 0x4D message sent on F1.

2005-10-27  Vijay Kiran Kamuju <infyquest@gmail.com>

	* dlls/msvcrt/tests/printf.c:
	Added a test case for %0f and %.0f.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/database.c, dlls/msi/msipriv.h, dlls/msi/table.c:
	Implement transforms.  This still includes some debugging code which
	can be enabled by setting debug_transform to 1 in the relevant
	places.

2005-10-27  Robert Lunnon <bobl@optushome.com.au>

	* dlls/wineps/init.c:
	Reorder header files to avoid name space collision with symbol
	PAGESIZE.

2005-10-27  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/Makefile.in, dlls/shell32/shfldr_unixfs.c,
	  dlls/shell32/tests/shlfolder.c:
	Implemented UnixFolder's IPersistPropertyBag::Load method.

2005-10-27  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/tests/vartype.c:
	Add tests for functionality implemented or corrected: multiplication,
	division, cast to double, cast to string.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* include/rpcproxy.h:
	Add the macros used in dlldata.c files.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	There is no need to call IUnknown_QueryInterface since getting the
	correct object is handled by the proxy manager.

2005-10-27  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/shell32/iconcache.c:
	Remove iconcache pre-initialization hack, it's not necessary any
	more.

2005-10-27  Hans Leidekker <hans@it.vu.nl>

	* tools/wineinstall:
	Wine is beta software now.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Tidy up the RegisterProduct action a little.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d8/device.c:
	Release the OpenGL context when the device is released.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* programs/winecfg/Bg.rc, programs/winecfg/De.rc, programs/winecfg/En.rc,
	  programs/winecfg/Fi.rc, programs/winecfg/Fr.rc,
	  programs/winecfg/Ja.rc, programs/winecfg/Nl.rc,
	  programs/winecfg/No.rc, programs/winecfg/Ru.rc,
	  programs/winecfg/driveui.c, programs/winecfg/resource.h:
	Get rid of the show dir symlink option.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/directory.c:
	Make show_dir_symlinks the default and get rid of the option.

2005-10-27  Alexandre Julliard <julliard@winehq.org>

	* server/fd.c:
	Make the unmount_device request take a handle to the device file
	itself instead of a handle to a file opened on the device.

2005-10-27  Robert Reif <reif@earthlink.net>

	* dlls/dxerr8/dxerr8.c, dlls/dxerr8/errors.dat, dlls/dxerr8/errors.h,
	  dlls/dxerr9/dxerr9.c, dlls/dxerr9/errors.dat, dlls/dxerr9/errors.h:
	Added more error codes to dxerr8 and dxerr9 which were extracted from
	MinGW win32api-3.3 file dxerr.c written by Filip Navara <xnavara@volny.cz>.

2005-10-27  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/kernel/tests/process.c:
	Test for argv handling.

2005-10-27  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/ntdll/nt.c, dlls/ntdll/ntdll.spec, include/winternl.h:
	Add stub implementation for NtAccessCheckAndAuditAlarm.

2005-10-27  Stefan Leichter <Stefan.Leichter@camLine.com>

	* include/advpub.h:
	Declare ExecuteCab and TranslateInfString.

2005-10-27  Juan Lang <juan_lang@yahoo.com>

	* dlls/crypt32/crypt32.spec, dlls/crypt32/main.c,
	  dlls/crypt32/tests/main.c, include/wincrypt.h:
	Implement CryptMem and undocumented I_Crypt*Tls functions, with tests.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/wined3d/vertexshader.c:
	Correct the number of parameters expected for the LRP function.

2005-10-27  Oliver Stieber <oliver_stieber@yahoo.co.uk>

	* dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/indexbuffer.c,
	  dlls/d3d8/vertexbuffer.c:
	Changed index and vertex buffer so that internal references are
	counted separately to external ones.

2005-10-27  Jonathan Ernst <Jonathan@ErnstFamily.ch>

	* programs/regedit/Fr.rc:
	Updated French resources.

2005-10-27  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/shell32/shellord.c:
	Correctly handle flags parameter in SHAddToRecentDocs.

2005-10-27  Marcus Meissner <marcus@jet.franken.de>

	* aclocal.m4, configure:
	Print first line of LDD output only.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/msvcrt/wcs.c:
	Missing and zero precision specifiers are different.

2005-10-27  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/regsvr.c, include/ocidl.idl:
	Add IFontEventsDisp and IProvideMultipleClassInfo.

2005-10-27  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/comctl32/header.c:
	Unify HEADER_SetItem[A/W] into one function.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/shell32/shelllink.c:
	Add the IObjectWithSite interface.

2005-10-27  Mike McCormack <mike@codeweavers.com>

	* dlls/user/tests/menu.c:
	Add a currently failing test case for menus.

2005-10-27  Robert Reif <reif@earthlink.net>

	* dlls/dsound/dsound_private.h, dlls/dsound/duplex.c:
	Remove unused variable from IDirectSoundFullDuplexImpl.
	Move DirectSoundFullDuplexCreate to get rid of forward declarations.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/kernel/file.c:
	In FindNextFileExW don't report directory symlinks that point to one
	of the parent directories, to avoid infinite recursions.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c, dlls/msi/msipriv.h, dlls/msi/msiquery.c,
	  dlls/msi/table.c:
	Create a stub function to apply a single table transform and call it
	where we need to apply transforms.

2005-10-26  Huw Davies <huw@codeweavers.com>

	* dlls/rpcrt4/cstub.c, dlls/rpcrt4/ndr_midl.c, dlls/rpcrt4/rpcrt4.spec,
	  include/rpcproxy.h:
	Stubs for NdrStubForwardingFunction and NdrCStdStubBuffer2_Release
	along with a few related defines.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarDecDiv() for any valid DECIMAL.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* dlls/ntdll/loader.c:
	Attach to implicitly loaded builtin dlls on process startup.

2005-10-26  Krzysztof Foltman <wdev@foltman.com>

	* programs/regedit/En.rc, programs/regedit/Pl.rc, programs/regedit/edit.c,
	  programs/regedit/framewnd.c, programs/regedit/main.h,
	  programs/regedit/resource.h, programs/regedit/treeview.c:
	- Added Find functions
	- Some refactoring that made Find functions possible
	- GetItemPath returns a heap-allocated string
	- subtree update put into a separate function UpdateExpandingTree
	- error() utility function made public
	- Find functions are grayed/ungrayed based on context (which fixes
	invalid 'grayed' flag in some localizations).
	- InvalidateRect to fix display glitches coming from using
	WM_SETREDRAW.
	- English and Polish resource updates (Find dialog box and Find menu
	options, string not found message).

2005-10-26  Huw Davies <huw@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	Treat paramflags == 0 like PARAMFLAG_FIN.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarDecMul() for any valid DECIMAL.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/action.c:
	Enumerate the substorage transforms for any patches that are passed on
	the command line with PATCH=.  Need to implement
	table_apply_transform() before this will do anything interesting.

2005-10-26  Michael Jung <mjung@iss.tu-darmstadt.de>

	* dlls/user/exticon.c, dlls/user/tests/resource.c:
	- Try LoadLibrary/LoadImage to extract icons from wine's built-in dlls
	if SearchPath fails to find the requested file in
	PrivateExtractIcons.
	- Some unit tests for PrivateExtractIcons.

2005-10-26  Michael Stefaniuc <mstefani@redhat.de>

	* dlls/oleaut32/variant.c:
	Handle VT_CY in VarDiv().

2005-10-26  Detlef Riekenberg <wine.dev@web.de>

	* dlls/version/info.c:
	Updated trace to support VERSIONED_PRINTER.

2005-10-26  Peter Beutner <p.beutner@gmx.net>

	* dlls/ntdll/cdrom.c:
	Proper implementation of IOCTL_{STORAGE,CDROM}_CHECK_VERIFY.

2005-10-26  Robert Shearman <rob@codeweavers.com>

	* dlls/ole32/defaulthandler.c:
	Implement a Stop function and use this to properly implement
	IOleObject_Close, IAdviseSink_OnClose and the destructor.

2005-10-26  Robert Shearman <rob@codeweavers.com>

	* dlls/oleaut32/tmarshal.c:
	- Forward IDispatch functions to the MIDL-generated proxy.
	- Remove special cases caused by previous marshaling of IDispatch &
	IUnknown that is no longer done.
	- Add error messages if an IUnknown or IDispatch method is called when
	it no longer should be.

2005-10-26  Alex Villacís Lasso <a_villacis@palosanto.com>

	* dlls/oleaut32/vartype.c:
	Implement complete VarBstrFromDec() for any valid DECIMAL, with
	internationalization support borrowed from VARIANT_BstrFromReal(). The
	decimal fix for VARIANT_BstrFromReal was encapsulated in a separate
	function and reused.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/user/tests/msg.c:
	Silently ignore WM_PAINT in msg tests.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* include/winternl.h:
	Add OBJECT_BASIC_INFORMATION to winternl.h.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/ntdll/file.c:
	Cosmetic changes to NtCreateNamedPipeFile change "oa" to  "attr".

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/msipriv.h, dlls/msi/suminfo.c:
	Create an internal handle-free api for reading MSI database summary
	information.

2005-10-26  Mike McCormack <mike@codeweavers.com>

	* dlls/msi/dialog.c:
	Switch back to using IPicture to load images.  LoadImage did the
	resizing for us, but doesn't handle jpeg files and requires us writing
	a temp file, whereas IPicture handles jpeg files and can load directly
	from a stream.

2005-10-26  Dmitry Timoshkov <dmitry@codeweavers.com>

	* dlls/gdi/gdiobj.c, dlls/gdi/tests/gdiobj.c, include/wingdi.h:
	Add a test for GetCurrentObject, make it pass under Wine.

2005-10-26  Ivan Leo Puoti <ivanleo@gmail.com>

	* dlls/secur32/tests/Makefile.in, dlls/secur32/tests/main.c:
	Make secur32.dll tests load on nt 4.0.

2005-10-26  Hans Leidekker <hans@it.vu.nl>

	* dlls/odbccp32/odbccp32.c:
	Implement SQLInstallDriverManager.

2005-10-26  Stefan Huehner <stefan@huehner.org>

	* dlls/msxml3/domdoc.c, dlls/msxml3/tests/domdoc.c:
	Fix IXMLDOMDocument error handling.

2005-10-26  Eric Pouech <eric.pouech@wanadoo.fr>

	* dlls/msvcrt/undname.c:
	Previous fix incorrectly removed all test for strings starting with
	'?', this is only valid when undname is called with the 'NO_ARGUMENTS'
	flags.

2005-10-26  Stefan Leichter <Stefan.Leichter@camLine.com>

	* dlls/winspool/tests/info.c:
	Fix for GetPrinterDriverDirectoryA test.

2005-10-26  Vitaliy Margolen <wine-patch@kievinfo.com>

	* dlls/kernel/tests/path.c:
	Test for return value from CreateDirectory("c:").

2005-10-26  Jacek Caban <jack@itma.pwr.wroc.pl>

	* dlls/wininet/http.c, dlls/wininet/internet.h:
	Make functions static.

2005-10-26  Jan Nieuwenhuizen <janneke@gnu.org>

	* programs/notepad/main.c:
	Windows XP does not always include the executable file name on the
	command line.

2005-10-26  Jan Nieuwenhuizen <janneke@gnu.org>

	* programs/notepad/dialog.c:
	Need an explicit truncate command to shorten the length of a file.

2005-10-26  Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>

	* dlls/capi2032/cap20wxx.c:
	Fix gcc 4 warnings.

2005-10-26  Saulius Krasuckas <saulius.krasuckas@ieee.org>

	* dlls/gdi/tests/metafile.c:
	Link to {G|S}etRelAbs() during runtime as Win9x OSes miss them.

2005-10-26  Rein Klazes <wijn@wanadoo.nl>

	* dlls/user/tests/text.c, dlls/user/text.c:
	Fixed a lot of bugs in TEXT_TabbedTextOut. With the test cases used to
	find them.

2005-10-26  Alexandre Julliard <julliard@winehq.org>

	* ChangeLog, documentation/ChangeLog.ALPHA:
	Start a new ChangeLog file. Older changes moved to
	documentation/ChangeLog.ALPHA.

2005-10-25  Alexandre Julliard <julliard@winehq.org>

	* ANNOUNCE, ChangeLog, VERSION, configure:
	Release 0.9.

----------------------------------------------------------------
