2010-07-06  Ozkan Sezer  <sezeroz@gmail.com>

	* ntddndis.h: Added a few endif comments.
	(NDIS_PHYSICAL_MEDIUM): Add NdisPhysicalMediumInfiniband,
	NdisPhysicalMediumWiMax,NdisPhysicalMediumUWB, NdisPhysicalMedium802_3,
	NdisPhysicalMedium802_5,NdisPhysicalMediumIrda,NdisPhysicalMediumWiredWAN,
	NdisPhysicalMediumWiredCoWan and NdisPhysicalMediumOther among the
	enumerated values, from ddk_test version.
	(NDIS_802_11_NETWORK_TYPE): Add Ndis802_11Automode among the enumerated
	values, from ddk_test version.
	(NDIS_OBJECT_HEADER): Added from experimental vista_7_headers.
	* ntddscsi.h: Added a few endif comments.
	(DD_SCSI_DEVICE_NAME_U): Added from ddk_test version.

2010-07-05  Ozkan Sezer  <sezeroz@gmail.com>

	* winnt.h: remove duplicated ULONG type definition. not supposed to be
	defined here

2010-06-28  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h: Add many data types, prototypes, etc. for DDK based on MSDN
	information. Restricted parts of the header starting from KSOBJECT_BAG
	typedef down to the IID_IKsDeviceFunctions GUID definition only to the
	DDK.

2010-06-28  Ozkan Sezer  <sezeroz@gmail.com>

	* strsafe.h: Apply the same C_ASSERT macro fix in winnt.h.

2010-06-27  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h (KSATTRIBUTE_LIST): Added for DDK.

2010-06-27  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h (KSEVENTDATA): Added EventObject, SemaphoreObject, Dpc, WorkItem
	and KsWorkItem to the union. Added flag macros KSEVENTF_EVENT_OBJECT,
	KSEVENTF_SEMAPHORE_OBJECT, KSEVENTF_DPC, KSEVENTF_WORKITEM and
	KSEVENTF_KSWORKITEM for DDK. See the KSEVENTDATA Structure msdn page at
	http://msdn.microsoft.com/en-us/library/ff561750(VS.85).aspx, also see
	the r/os version of ks.h for reference.

2010-06-27  Jacek Caban  <jacek@codeweavers.com>

	* winnt.h: Fixed C_ASSERT macro.

2010-06-27  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h: Add forward declarations of KSDEVICE, KSDEVICE_DESCRIPTOR,
	KSDEVICE_DISPATCH, KSFILTER, KSFILTERFACTORY, KSFILTER_DESCRIPTOR,
	KSFILTER_DISPATCH, KSPIN, KSPIN_DESCRIPTOR_EX, KSPIN_DISPATCH,
	KSCLOCK_DISPATCH, KSALLOCATOR_DISPATCH, KSNODE_DESCRIPTOR,
	KSSTREAM_POINTER, KSSTREAM_POINTER_OFFSET, KSMAPPING, KSPROCESSPIN,
	KSPROCESSPIN_INDEXENTRY structtures and their *P... variants for the
	DDK.

2010-06-27  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h (KSPROPERTY_CLOCK_FUNCTIONTABLE): Add to KSPROPERTY_CLOCK for DDK.
	(see http://msdn.microsoft.com/en-us/library/ff564466(v=VS.85).aspx)

2010-06-27  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h (KSALLOCATOR_FRAMING): Use POOL_TYPE as the type for
	PoolType member if _NTDDK_ is defined, because the POOL_TYPE
	enum is provided by the ddk.

2010-06-27  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h (_KS_ANON_STRUCT): New helper macro for adding names to
	structs accroding to _KS_NO_ANONYMOUS_STRUCTURES_ being defined.
	(KSIDENTIFIER): Use _KS_ANON_STRUCT().
	(KSPROPERTY_BOUNDS_LONG): Likewise.
	(KSPROPERTY_BOUNDS_LONGLONG): Likewise.

2010-06-25  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h, ksmedia.h, ksproxy.h, ksuuids.h: Re-format.

2010-06-23  Doug Semler  <dougsemler@gmail.com>

	* GL/gl.h: Use APIENTRY instead of WINAPI.
	* GL/glaux.h: Likewise.
	* GL/glu.h: Likewise.

2010-06-23  Ozkan Sezer  <sezeroz@gmail.com>

	* mmsystem.h (MAKEFOURCC): Changed ifdef guard from __MAKEFOURCC__DEFINED__
	to simply MAKEFOURCC.

2010-06-22  Jacek Caban  <jacek@codeweavers.com>
	* coerror.h, fusion.h, mscat.h, mscoree.h, optary.h: Initial import from Wine.
	* wincodec.h, winhttp.h, xmllite.h: Likewise.

2010-06-22  Jacek Caban  <jacek@codeweavers.com>
	* downloadmgr.h: Moved to IDL SDK.

2010-06-22  Jonathan Yong  <jon_y@sourceforge.net>
	* clusapi.h (PCLUSAPI_OPEN_CLUSTER): Declare.
	(FS_CASE_SENSITIVE): Define.
	(FS_CASE_IS_PRESERVED): Likewise.
	(FS_UNICODE_STORED_ON_DISK): Likewise.
	(FS_PERSISTENT_ACLS): Likewise.
	(MAINTENANCE_MODE_TYPE_ENUM): Declare.
	(CLUSCTL_CLUSTER_CODES): Likewise.
	(CLUSCTL_GROUP_CODES): Likewise.
	(CLUSCTL_NETINTERFACE_CODES): Likewise.
	(CLUSCTL_NETWORK_CODES): Likewise.
	(CLUSCTL_NODE_CODES): Likewise.
	(CLUSTER_REG_COMMAND): Likewise.
	(CLUSTER_GROUP_STATE): Likewise.
	(CLUSTER_QUORUM_TYPE): Likewise.
	(CLUSTER_RESOURCE_CLASS): Likewise.
	(CLUSTER_RESOURCE_CREATE_FLAGS): Likewise.
	(CLUSTER_SETUP_PHASE): Likewise.
	(CLUSTER_SETUP_PHASE_TYPE): Likewise.
	(CLUSTER_SETUP_PHASE_SEVERITY): Likewise.
	(CLUSPROP_FILETIME): Likewise.
	(CLUS_MAINTENANCE_MODE_INFOEX): Likewise.
	(CLUS_NETNAME_PWD_INFO): Likewise.
	(CLUS_NETNAME_VS_TOKEN_INFO): Likewise.
	(CLUS_PARTITION_INFO_EX): Likewise.
	(CLUS_PROVIDER_STATE_CHANGE_INFO): Likewise.
	(CLUS_STORAGE_GET_AVAILABLE_DRIVELETTERS): Likewise.
	(CLUS_STORAGE_REMAP_DRIVELETTER): Likewise.
	(CLUS_STORAGE_SET_DRIVELETTER): Likewise.
	(CLUSPROP_PARTITION_INFO_EX): Likewise.
	(CLUSTER_BATCH_COMMAND): Likewise.
	(CLUSTER_IP_ENTRY): Likewise.
	(CREATE_CLUSTER_CONFIG): Likewise.
	(CLUSTER_VALIDATE_DIRECTORY): Likewise.
	(CLUSTER_VALIDATE_NETNAME): Likewise.
	(CLUSTER_VALIDATE_PATH): Likewise.
	(HREGBATCH): Likewise.
	(HREGBATCHPORT): Likewise.
	(HREGBATCHNOTIFICATION): Likewise.
	(ClusterRegBatchAddCommand): Likewise.
	(ClusterRegBatchCloseNotification): Likewise.
	(ClusterRegBatchReadCommand): Likewise.
	(ClusterRegCloseBatch): Likewise.
	(ClusterRegCloseBatchNotifyPort): Likewise.
	(PCLUSTER_REG_CREATE_BATCH): Likewise.
	(ClusterRegCreateBatch): Likewise.
	(PCLUSTER_REG_CREATE_BATCH_NOTIFY_PORT): Likewise.
	(ClusterRegCreateBatchNotifyPort): Likewise.
	(PCLUSTER_REG_GET_BATCH_NOTIFICATION): Likewise.
	(ClusterRegGetBatchNotification): Likewise.
	(PCLUSTER_SETUP_PROGRESS_CALLBACK): Likewise.
	(AddClusterNode): Likewise.
	(DestroyCluster): Likewise.
	(CreateCluster): Likewise.
	(DestroyClusterGroup): Likewise.

2010-06-18  Doug Semler  <dougsemler@gmail.com>

	* accctrl.h: Include new _mingw_unicode.h for Unicode macros.
	* aclapi.h: Likewise.
	* cfgmgr32.h: Likewise.
	* commctrl.h: Likewise.
	* commdlg.h: Likewise.
	* cpl.h: Likewise.
	* cryptuiapi.h: Likewise.
	* custcntl.h: Likewise.
	* dbt.h: Likewise.
	* ddeml.h: Likewise.
	* digitalv.h: Likewise.
	* dsclient.h: Likewise.
	* dsgetdc.h: Likewise.
	* dtchelp.h: Likewise.
	* errorrep.h: Likewise.
	* htmlhelp.h: Likewise.
	* icm.h: Likewise.
	* imagehlp.h: Likewise.
	* ime.h: Likewise.
	* imm.h: Likewise.
	* intshcut.h: Likewise.
	* isguids.h: Likewise.
	* loadperf.h: Likewise.
	* lzexpand.h: Likewise.
	* mlang.h: Likewise.
	* mmsystem.h: Likewise.
	* mobsync.h: Likewise.
	* msi.h: Likewise.
	* msiquery.h: Likewise.
	* multimon.h: Likewise.
	* newapis.h: Likewise.
	* npapi.h: Likewise.
	* nspapi.h: Likewise.
	* ntdsapi.h: Likewise.
	* ntdsbcli.h: Likewise.
	* ntmsapi.h: Likewise.
	* ntquery.h: Likewise.
	* odbcss.h: Likewise.
	* oleacc.h: Likewise.
	* oledlg.h: Likewise.
	* patchapi.h: Likewise.
	* patchwiz.h: Likewise.
	* pdh.h: Likewise.
	* pgobootrun.h: Likewise.
	* profinfo.h: Likewise.
	* prsht.h: Likewise.
	* psapi.h: Likewise.
	* ras.h: Likewise.
	* rasdlg.h: Likewise.
	* richedit.h: Likewise.
	* rpcasync.h: Likewise.
	* rpcdce.h: Likewise.
	* rpcdcep.h: Likewise.
	* rpcnsi.h: Likewise.
	* rpcssl.h: Likewise.
	* rtutils.h: Likewise.
	* schannel.h: Likewise.
	* sddl.h: Likewise.
	* secext.h: Likewise.
	* security.h: Likewise.
	* sensapi.h: Likewise.
	* setupapi.h: Likewise.
	* shellapi.h: Likewise.
	* shfolder.h: Likewise.
	* shlguid.h: Likewise.
	* shlobj.h: Likewise.
	* shlwapi.h: Likewise.
	* shobjidl.h: Likewise.
	* smx.h: Likewise.
	* srrestoreptapi.h: Likewise.
	* sspi.h: Likewise.
	* strsafe.h: Likewise.
	* tapi.h: Likewise.
	* traffic.h: Likewise.
	* uastrfnc.h: Likewise.
	* umx.h: Likewise.
	* urlmon.h: Likewise.
	* userenv.h: Likewise.
	* vfw.h: Likewise.
	* wfext.h: Likewise.
	* winbase.h: Likewise.
	* wincon.h: Likewise.
	* wincred.h: Likewise.
	* wincrypt.h: Likewise.
	* windns.h: Likewise.
	* wingdi.h: Likewise.
	* wininet.h: Likewise.
	* winnetwk.h: Likewise.
	* winnls.h: Likewise.
	* winnls32.h: Likewise.
	* winnt.h: Likewise.
	* winreg.h: Likewise.
	* winscard.h: Likewise.
	* winsmcrd.h: Likewise.
	* winsock2.h: Likewise.
	* winspool.h: Likewise.
	* winsvc.h: Likewise.
	* winuser.h: Likewise.
	* winver.h: Likewise.
	* wpapi.h: Likewise.
	* wptypes.h: Likewise.
	* ws2tcpip.h: Likewise.
	* wtsapi32.h: Likewise.
	* xolehlp.h: Likewise.
	* zmouse.h: Likewise.

2010-06-16  Doug Semler  <dougsemler@gmail.com>

	* profile.h: Rename _mcount to _mcount_private to make it obvious.
	  Declare public _mcount here.

2010-06-15  Ozkan Sezer  <sezeroz@gmail.com>

	* mingw_inc/_bsd_types.h: Moved to crt/_bsd_types.h. Changed its
	include guard to _BSDTYPES_DEFINED.
	* af_irda.h: Adjusted for _bsdtypes.h.
	* inaddr.h: Likewise.
	* in6addr.h: Likewise.
	* mingw_inc/_ip_types.h: Likewise.
	* winsock.h: Likewise.
	* winsock2.h: Likewise.

2010-06-14  Ozkan Sezer  <sezeroz@gmail.com>

	* ks.h, ksmedia.h, ksproxy.h: Added #endif comments.
	* ks.h (DEFINE_KSPIN_INTERFACE_ITEM): Renamed macro argument
	INTERFACE to _interFace.

2010-06-12  Kai Tietz  <kai.tietz@onevision.com>

	Change unicode-dependent defines to use __MINGW_NAME_AW.
	* winuser.h: Use __MINGW_TYPEDEF_AW for UNICODE specific
	type-definitions.
	* zmouse.h: Use for string constant definitions
	__MINGW_STRING_AW macro.

2010-06-12  Ozkan Sezer  <sezeroz@gmail.com>

	Kill definitions of I_X86_ macro and adjust places it was used:
	* windows.h: Remove I_X86_ definition. Adjust and tweak _AMD64_
	and _IA64_ macro definitions to use _X86_ and/or __i386__.
	* winnt.h: Likewise as in windows.h. Replace checks against I_X86_
	by checks against _X86_. Replace checks against _X86_ which were
	already under I_X86_ ifdefs by checks against __i386__.
	* mapidbg.h: Replace checks against I_X86_ by checks against _X86_.
	* mapiutil.h: Likewise.
	* mapival.h: Likewise.
	* netmon.h: Likewise.
	* stralign.h: Likewise.
	* tapi3if.h: Likewise.
	* uastrfnc.h: Likewise.
	* vdmdbg.h: Likewise.
	* wabutil.h: Likewise.
	* winbase.h: Likewise.

2010-06-09  Ozkan Sezer  <sezeroz@gmail.com>

	* sdkddkver.h: Sync'ed with ReactOS version to add new macros
	_WIN32_WINNT_WIN7, _WIN32_IE_IE80, _WIN32_IE_WIN7 and NTDDI_WIN7.

2010-06-08  Jonathan Yong  <jon_y@sourceforge.net>
	* winnt.h (ACTCTX_REQUESTED_RUN_LEVEL): New.
	(ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION): Likewise.
	* winbase.h (CreateBoundaryDescriptorA): New.
	(CreateBoundaryDescriptorW): Likewise.
	(OpenPrivateNamespaceA): Likewise.
	(OpenPrivateNamespaceW): Likewise.
	(CreatePrivateNamespaceA): Likewise.
	(CreatePrivateNamespaceW): Likewise.
	(AddMandatoryAce): Likewise.
	(AddSIDToBoundaryDescriptor): Likewise.
	(ClosePrivateNamespace): Likewise.
	(DeleteBoundaryDescriptor): Likewise.
	(PSECURE_MEMORY_CACHE_CALLBACK): Likewise.
	(AddSecureMemoryCacheCallback): Likewise.
	(RemoveSecureMemoryCacheCallback): Likewise.
	(AdvanceLogBase): Likewise.
	(AllocateUserPhysicalPagesNuma): Likewise.
	(APPLICATION_RECOVERY_CALLBACK): Likewise.
	(RegisterApplicationRecoveryCallback): Likewise.
	(ApplicationRecoveryFinished): Likewise.
	(ApplicationRecoveryInProgress): Likewise.
	* winspool.h (AddPrinterConnection2A): New.
	(AddPrinterConnection2W): Likewise.
	(PRINTER_CONNECTION_MISMATCH): Define.
	(PRINTER_CONNECTION_NO_UI): Likewise.
	(PRINTER_CONNECTION_INFO_1): New.
	(PPRINTER_CONNECTION_INFO_1): Likewise.
	* winsock2.h (IPPROTO_RM): Define.
	(AF_BTH): Likewise.
	(AF_MAX): Bump to 33.
	* ws2tcpip.h (AI_ADDRCONFIG): Define.
	(AI_NON_AUTHORITATIVE): Likewise.
	(AI_SECURE): Likewise.
	(AI_RETURN_PREFERRED_NAMES): Likewise.
	(addrinfoExA): New.
	(addrinfoExW): New.
	(PADDRINFOEXA): New.
	(PADDRINFOEXW): New.
	(GetAddrInfoExA): New.
	(GetAddrInfoExW): New.
	(FreeAddrInfoExA): New.
	(FreeAddrInfoExW): New.

2010-06-04  Jonathan Yong  <jon_y@sourceforge.net>

	* winbase.h (CreateSymbolicLinkA): Move into Vista version guard.
	(CreateSymbolicLinkW): Likewise.

2010-06-01  Jacek Caban  <jacek@codeweavers.com>

	* include/mscft.idl: New.
	* include/msctf.h: New.
	* include/textstor.idl: New.
	* include/textstor.h: New.

2010-05-28  Ozkan Sezer  <sezeroz@gmail.com>

	* mstcpip.h: Added missing include guard.
	* af_irda.h: Remove the _WINSOCKAPI_ guarded typedefs and include
	mingw_inc/_bsd_types.h, instead.

2010-05-25  Ozkan Sezer  <sezeroz@gmail.com>

	* afxres.h: Changed header guard check from _WINDOWS_H, which was
	a left-over from mingw32, to _INC_WINDOWS which is what we define.

2010-05-23  Ozkan Sezer  <sezeroz@gmail.com>

	* mingw_inc/_socket_types.h: Provide SOCKET type as UINT_PTR in
	#if 0'ed out form, just so we know that we do it as INT_PTR on
	purpose.

2010-05-23  Ozkan Sezer  <sezeroz@gmail.com>

	* Renamed _ws_helpers to mingw_inc, adjusted all its users.

2010-05-22  Ozkan Sezer  <sezeroz@gmail.com>

	In case winsock2.h is included after winsock.h, probably by way of
	windows.h, perform a "winsock2 upgrade" on top of winsock1 by splitting
	the headers into some helpers holding shared data types and undefining
	macros when necessary:

	* _ws_helpers/_bsd_types.h: New.
	* _ws_helpers/_fd_types.h: New.
	* _ws_helpers/_ip_mreq1.h: New.
	* _ws_helpers/_ip_types.h: New.
	* _ws_helpers/_socket_types.h: New.
	* _ws_helpers/_ws1_undef.h: New.
	* _ws_helpers/_wsa_errnos.h: New.
	* _ws_helpers/_wsadata.h: New.
	* _ws_helpers/_xmitfile.h: New.
	* inaddr.h: New.
	* in6addr.h: New.
	* ipexport.h: Include inaddr.h and in6addr.h. Move struct in6_addr
	and its related macros to in6addr.h. Move struct in_addr and its
	related macros to inaddr.h.
	* mswsock.h: Include _ws_helpers/_xmitfile.h.
	Move struct _TRANSMIT_FILE_BUFFERS to _ws_helpers/_xmitfile.h.
	Guard WSARecvEx, TransmitFile, AcceptEx and GetAcceptExSockaddrs
	prototypes by __MSWSOCK_WS1_SHARED ifdefs.
	* winsock.h: Include _timeval.h, inaddr.h, _ws_helpers/_bsd_types.h,
	_ws_helpers/_socket_types.h, _ws_helpers/_fd_types.h,
	_ws_helpers/_ip_types.h, _ws_helpers/_ip_mreq1.h, _ws_helpers/_wsadata.h
	and _ws_helpers/_xmitfile.h.
	Define WINSOCK_API_LINKAGE and WSAAPI at the top and undefine them at
	the end of the file.
	Move struct timeval, timerisset,timercmp and timerclear to _timeval.h.
	Move struct in_addr and its related macros to inaddr.h.
	Move u_char, u_short, u_int, u_long and u_int64 to _ws_helpers/_bsd_types.h.
	Move SOCKET, INVALID_SOCKET and SOCKET_ERROR to _ws_helpers/_socket_types.h.
	Move struct fd_set and FD_SETSIZE to _ws_helpers/_fd_types.h.
	Move struct ip_mreq to _ws_helpers/_ip_mreq1.h.
	Move structs hostent, netent, servent, protoent, sockaddr_in, sockaddr,
	sockproto and linger to _ws_helpers/_ip_types.h. Moved struct WSAData
	to _ws_helpers/_wsadata.h.
	Move WSA error macros to _ws_helpers/_wsa_errnos.h.
	Move struct _TRANSMIT_FILE_BUFFERS to _ws_helpers/_xmitfile.h.
	Define __WINSOCK_WS1_SHARED and __MSWSOCK_WS1_SHARED.
	* winsock2.h: Do not re-define _WINSOCKAPI_. If it is already defined,
	do a #warning that winsock2.h must be included before windows.h.
	Include _ws_helpers/_ws1_undef.h to make sure that macros from winsock.h
	are undefined. Include _timeval.h, inaddr.h, _ws_helpers/_bsd_types.h,
	_ws_helpers/_socket_types.h, _ws_helpers/_fd_types.h,
	_ws_helpers/_ip_types.h and _ws_helpers/_wsadata.h.
	Move struct timeval, timerisset,timercmp and timerclear to _timeval.h.
	Move struct in_addr and its related macros to inaddr.h.
	Move u_char, u_short, u_int, u_long and u_int64 to _ws_helpers/_bsd_types.h.
	Move SOCKET, INVALID_SOCKET and SOCKET_ERROR to _ws_helpers/_socket_types.h.
	Move struct fd_set and FD_SETSIZE to _ws_helpers/_fd_types.h.
	Move structs hostent, netent, servent, protoent, sockaddr_in, sockaddr,
	sockproto and linger to _ws_helpers/_ip_types.h. Moved struct WSAData
	to _ws_helpers/_wsadata.h.
	Move WSA error macros to _ws_helpers/_wsa_errnos.h.
	Guard the 46 functions shared by 1.1 api using __WINSOCK_WS1_SHARED ifdefs.
	* ws2tcpip.h: Include _ws_helpers/_ip_mreq1.h.
	Move struct ip_mreq to _ws_helpers/_ip_mreq1.h.
	Move struct in6_addr, IN6_ADDR, PIN6_ADDR, LPIN6_ADDR to in6addr.h.

2010-05-18  Ozkan Sezer  <sezeroz@gmail.com>

	* GL/gl.h: Don't bother about WIN32_LEAN_AND_MEAN when including
	windows.h. May cause more problems than it would solve.

2010-05-02  Ozkan Sezer  <sezeroz@gmail.com>

	* GL/gl.h: Include windows.h, if necessary.

2010-05-02  Doug Semler <dougsemler@gmail.com>

	* ws2tcpip.h: Include winsock2.h.

2010-05-01  Ozkan Sezer  <sezeroz@gmail.com>

	Fix for BR/2994499 :
	* winbase.h (UnlockResource): Make the no-op macro more gcc-friendly
	and avoid compiler warnings.

2010-04-19  Patrick von Reth  <patrick.vonreth@gmail.com>

	* dbghelp.h (PSYM_ENUMMODULES_CALLBACK64,
	PSYM_ENUMSYMBOLS_CALLBACK64, PSYM_ENUMSYMBOLS_CALLBACK64W,
	PENUMLOADED_MODULES_CALLBACK64,
	PSYM_ENUMMODULES_CALLBACK64): Make string
	argument const.

2010-04-16  Jonathan Yong  <jon_y@sourceforge.net>

	* vfw.h: Add comment about unguarded duplication in avifmt.h
	(VIDCF_QUALITYTIME): Define.
	(VIDCF_FASTTEMPORAL): Ditto.
	(streamtypeANY): Ditto.
	(AVIF_TRUSTCKTYPE): Ditto.
	(streamtypeANY): Ditto.
	(AVIFILEINFO_TRUSTCKTYPE): Ditto.
	(AVStreamNextKeyFrame): Ditto.
	(AVStreamPrevKeyFrame): Ditto.

	* avifmt.h: Add comment about unguarded duplication in vfw.h

2010-04-15  Timo Kreuzer  <timo.kreuzer@reactos.org>

	* commctrl.h: Add missing const modifier to InitCommonControlsEx parameter,
	DrawStatusTextA/W, GetEffectiveClientRect.
	Guard CDN_FIRST and CDN_LAST from redefinition. Update LVCOLUMNW (add Vista+ members)
	Add HDS_CHECKBOXES, HDS_NOSIZING, HDS_OVERFLOW, HDF_CHECKBOX, HDF_CHECKED,
	HDF_FIXEDWIDTH, HDF_SPLITBUTTON, TB_SETHOTITEM2, TB_SETLISTGAP,
	TB_GETIMAGELISTCOUNT, TB_GETIDEALSIZE, TB_TRANSLATEACCELERATOR,
	TBN_WRAPHOTITEM, TBN_DUPACCELERATOR, TBN_WRAPACCELERATOR, TBN_DRAGOVER,
	TBN_MAPACCELERATOR, REBARBANDINFOA_V6_SIZE, REBARBANDINFOW_V6_SIZE,
	PBS_SMOOTHREVERSE, PBM_GETSTEP, PBM_GETBKCOLOR, PBM_GETBARCOLOR,
	PBM_SETSTATE, PBM_GETSTATE, PBST_NORMAL, PBST_ERROR, PBST_PAUSED, LVCF_MINWIDTH,
	LVCF_DEFAULTWIDTH, LVCF_IDEALWIDTH, LVCFMT_FIXED_WIDTH, LVCFMT_NO_DPI_SCALE,
	LVCFMT_FIXED_RATIO, LVCFMT_LINE_BREAK, LVCFMT_FILL, LVCFMT_WRAP,
	LVCFMT_NO_TITLE, LVCFMT_TILE_PLACEMENTMASK,
	LVCFMT_SPLITBUTTON, LVS_EX_JUSTIFYCOLUMNS, LVS_EX_TRANSPARENTBKGND,
	LVS_EX_TRANSPARENTSHADOWTEXT, LVS_EX_AUTOAUTOARRANGE, LVS_EX_HEADERINALLVIEWS,
	LVS_EX_AUTOCHECKSELECT, LVS_EX_AUTOSIZECOLUMNS, LVS_EX_COLUMNSNAPPOINTS,
	LVS_EX_COLUMNOVERFLOW, LVM_ISITEMVISIBLE, ListView_IsItemVisible, TV_DISPINFOEXA,
	NMIVDISPINFOEXW, LPNMTVDISPINFOEXW, NMTVDISPINFOEX, LPNMTVDISPINFOEX, DPASTREAMINFO,
	struct IStream, PFNDPASTREAM, DPA_LoadStream, DPA_SaveStream, DPA_Grow,
	DPA_InsertPtr, DPA_SetPtr, DPA_GetPtr, DPA_GetPtrIndex, DPA_GetPtrCount,
	DPA_SetPtrCount, DPA_FastDeleteLastPtr, DPA_GetPtrPtr, DPA_FastGetPtr,
	DPA_AppendPtr, PFNDPAMERGE, PFNDPAMERGECONST, DPAM_SORTED, DPAM_NORMAL,
	DPAM_UNION, DPAM_INTERSECT, DPAMM_MERGE, DPAMM_DELETE, DPAMM_INSERT: New.

2010-04-14  Doug Semler <dougsemler@gmail.com>

	* winnt.h (inline InterlockedDecrement16, InterlockedIncrement64):
	Remove parentheses from destination regsiter

2010-04-13  Ozkan Sezer  <sezeroz@gmail.com>

	* winnt.h: Fix several SUBLANG ID errors introduced by r2177 and 2178
	(ref: http://msdn.microsoft.com/en-us/library/dd318693(VS.85).aspx).
	(SUBLANG_UI_CUSTOM_DEFAULT): 0x05, not 0x03.
	(SUBLANG_HAUSA_NIGERIA): Bad ID name, correct one is ...
	(SUBLANG_HAUSA_NIGERIA_LATIN): ... this.
	(SUBLANG_INUKTITUT_CANADA_LATIN): 0x02, not 0x01.
	(SUBLANG_IRISH_IRELAND): 0x02, not 0x01.
	(SUBLANG_LAO_LAO_PDR): Bad ID name, correct one is ...
	(SUBLANG_LAO_LAO): ... this.
	(SUBLANG_LOWER_SORBIAN_GERMANY): 0x02, not 0x01.
	(SUBLANG_SAMI_SKOLT_FINLAND): 0x08, not 0x03.
	(SUBLANG_SAMI_INARI_FINLAND): 0x09, not 0x03.
	(SUBLANG_SYRIAC_SYRIA): define as SUBLANG_SYRIAC (what MSDN mentions).
	(SUBLANG_TIGRIGNA_ERITREA): 0x02, not 0x01.

2010-04-12  Jonathan Yong  <jon_y@sourceforge.net>

	* winbase.h: (InitializeConditionVariable): New.
	(SleepConditionVariableCS): Ditto.
	(SleepConditionVariableSRW): Ditto.
	(WakeAllConditionVariable): Ditto.
	(WakeConditionVariable): Ditto.
	(AcquireSRWLockExclusive): Ditto.
	(AcquireSRWLockShared): Ditto.
	(InitializeSRWLock): Ditto.
	(ReleaseSRWLockExclusive): Ditto.
	(ReleaseSRWLockShared): Ditto.
	(TryAcquireSRWLockExclusive): Ditto.
	(TryAcquireSRWLockShared): Ditto.
	(INIT_ONCE_ASYNC): Define.
	(INIT_ONCE_INIT_FAILED): Ditto.
	(PINIT_ONCE): Ditto.
	(LPINIT_ONCE): Ditto.
	(PINIT_ONCE_FN): Ditto.
	(InitOnceBeginInitialize): New.
	(InitOnceComplete): Ditto.
	(InitOnceExecuteOnce): Ditto.

	* winnt.h: (RTL_CONDITION_VARIABLE): Define.
	(RTL_SRWLOCK): Ditto.
	(RTL_RUN_ONCE): Ditto.
	(PRTL_RUN_ONCE): Ditto.
	(PRTL_RUN_ONCE_INIT_FN): Ditto.
	(RTL_RUN_ONCE_INIT): Ditto.
	(RTL_RUN_ONCE_CHECK_ONLY): Ditto.
	(RTL_RUN_ONCE_ASYNC): Ditto.
	(RTL_RUN_ONCE_INIT_FAILED): Ditto.
	(RTL_RUN_ONCE_CTX_RESERVED_BITS): Ditto.
	(RTL_SRWLOCK_INIT): Ditto.
	(RTL_CONDITION_VARIABLE_INIT): Ditto.
	(RTL_CONDITION_VARIABLE_LOCKMODE_SHARED): Ditto.
	(CONDITION_VARIABLE_INIT): Ditto.
	(CONDITION_VARIABLE_LOCKMODE_SHARED): Ditto.
	(SRWLOCK_INIT): Ditto.

2010-04-07  Kai Tietz  <kai.tietz@onevision.com>

	PR/2983397
	* wctype.h (iswblank): Correct declaration.

2010-04-06  Ozkan Sezer  <sezeroz@gmail.com>

	* omp.h: Deleted (moved under /experimental/include_old .)

2010-03-30  Ozkan Sezer  <sezeroz@gmail.com>
	    Kai Tietz  <kai.tietz@onevision.com>

	* windef.h: Preserve possible BOOL definitions, or lack thereof,
	from the users by a pairr of push_macro and pop_macro pragmas.
	Do not define BOOL as a macro, typedef it as WINBOOL and only in
	non-__OBJC__ cases.

2010-03-25  Ozkan Sezer  <sezeroz@gmail.com>

	* ddrawgdi.h: Fixed MINGW_DDRAW_VERSION check.

2010-03-18  Kai Tietz  <kai.tietz@onevision.com>

	* iprtrmib.h (TCP_TABLE_CLASS): New.

2010-03-18  Ozkan Sezer  <sezeroz@gmail.com>

	Do not silently include winsock2.h instead of winsock.h:
	* winsock.h: Removed the if 0 comment out and the winsock2.h
	include. Restored the recently removed definitions.
	* ws2ipdef.h: Deleted.
	* winsock2.h: Define _WINSOCKAPI_ to avoid winsock.h inclusions.
	Removed the _WINSOCK_SOCKET_DEFINED ifdef guards around SOCKET
	definitions. Removed mswsock.h inclusion.
	* mswsock.h: Removed the SOCKET definitions.
	* ws2tcpip.h: Added back ip_mreq and ip_mreq_source structures.
	Do not try to preserve possible socklen_t macros from the user.

2010-03-18  Ozkan Sezer  <sezeroz@gmail.com>

	* winsock.h (INVALID_SOCKET): Fix obvious typo.

2010-03-03  Roland Schwingel  <roland.schwingel@onevision.com>

	* include/winnt.h: Add a lot of missing definitions from MSDN.
	(VER_SUITE_WH_SERVER): Define
	(PRODUCT_*): Likewise.
	(DBG_PRINTEXCEPTION_C): Likewise.
	(DBG_RIPEXCEPTION): Likewise.
	(STATUS_LONGJUMP): Likewise.
	(STATUS_UNWIND_CONSOLIDATE): Likewise.
	(STATUS_INVALID_PARAMETER): Likewise.
	(STATUS_DLL_NOT_FOUND): Likewise.
	(STATUS_ORDINAL_NOT_FOUND): Likewise.
	(STATUS_ENTRYPOINT_NOT_FOUND): Likewise.
	(STATUS_DLL_INIT_FAILED): Likewise.
	(STATUS_STACK_BUFFER_OVERRUN): Likewise.
	(STATUS_INVALID_CRUNTIME_PARAMETER): Likewise.
	(STATUS_ASSERTION_FAILURE): Likewise.
	(STATUS_INVALID_CRUNTIME_PARAMETER): Likewise.
	(STATUS_INVALID_CRUNTIME_PARAMETER): Likewise.
	(STATUS_INVALID_CRUNTIME_PARAMETER): Likewise.
	(SYSTEM_MANDATORY_LABEL_ACE): Typedef struct.
	(SYSTEM_MANDATORY_LABEL_NO_WRITE_UP): Define.
	(SYSTEM_MANDATORY_LABEL_NO_READ_UP): Likewise.
	(SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP): Likewise.
	(SYSTEM_MANDATORY_LABEL_VALID_MASK): Likewise.
	(SE_PRIVILEGE_VALID_ATTRIBUTES): Likewise.
	(SE_TRUSTED_CREDMAN_ACCESS_NAME): Likewise.
	(SE_RELABEL_NAME): Likewise.
	(SE_INC_WORKING_SET_NAME): Likewise.
	(SE_TIME_ZONE_NAME): Likewise.
	(SE_CREATE_SYMBOLIC_LINK_NAME): Likewise.
	(TOKEN_INFORMATION_CLASS): Add missing enum values.
	(LUA_TOKEN): Define.
	(WRITE_RESTRICTED): Likewise.
	(LABEL_SECURITY_INFORMATION): Likewise.
	(PROCESS_QUERY_LIMITED_INFORMATION): Likewise.
	(THREAD_SET_LIMITED_INFORMATION): Likewise.
	(THREAD_QUERY_LIMITED_INFORMATION): Likewise.
	(QUOTA_LIMITS_USE_DEFAULT_LIMITS): Likewise.
	(RATE_QUOTA_LIMIT): Typedef struct.
	(QUOTA_LIMITS_EX): Update definition.
	(MAX_HW_COUNTERS): Define.
	(THREAD_PROFILING_FLAG_DISPATCH): Likewise.
	(HARDWARE_COUNTER_TYPE): Typedef struct.
	(JOB_OBJECT_LIMIT_RESERVED2): Remove.
	(JOB_OBJECT_LIMIT_SUBSET_AFFINITY): Define.
	(JOB_OBJECT_EXTENDED_LIMIT_VALID_FLAGS): Correct.
	(JOBOBJECTINFOCLASS): Add missing enum value.
	(PF_SSE3_INSTRUCTIONS_AVAILABLE): Define.
	(PF_COMPARE_EXCHANGE128): Likewise.
	(PF_COMPARE64_EXCHANGE128): Likewise.
	(PF_CHANNELS_ENABLED): Likewise.
	(PF_XSAVE_ENABLED): Likewise.
	(SESSION_QUERY_ACCESS): Likewise.
	(SESSION_MODIFY_ACCESS): Likewise.
	(SESSION_ALL_ACCESS): Likewise.
	(MEM_ROTATE): Likewise.
	(SEC_PROTECTED_IMAGE): Likewise.
	(SEC_WRITECOMBINE): Likewise.
	(FILE_ATTRIBUTE_VIRTUAL): Likewise.
	(FILE_SEQUENTIAL_WRITE_ONCE): Likewise.
	(FILE_SUPPORTS_TRANSACTIONS): Likewise.
	(FILE_SUPPORTS_HARD_LINKS): Likewise.
	(FILE_SUPPORTS_EXTENDED_ATTRIBUTES): Likewise.
	(FILE_SUPPORTS_OPEN_BY_FILE_ID): Likewise.
	(FILE_SUPPORTS_USN_JOURNAL): Likewise.
	(IO_REPARSE_TAG_HSM2): Likewise.
	(IO_REPARSE_TAG_WIM): Likewise.
	(IO_REPARSE_TAG_CSV): Likewise.
	(IO_REPARSE_TAG_DFSR): Likewise.
	(IO_REPARSE_TAG_SYMLINK): Likewise.
	(MONITOR_DISPLAY_STATE): Typedef struct.
	(ES_AWAYMODE_REQUIRED): Define.
	(POWER_ACTION_PSEUDO_TRANSITION): Likewise.
	(POWER_USER_NOTIFY_FORCED_SHUTDOWN): Likewise.
	(SYSTEM_POWER_CAPABILITIES): Update.
	(IMAGE_SUBSYSTEM_WINDOWS_BOOT_APPLICATION): Define.
	(IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE): Likewise.
	(IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY): Likewise.
	(IMAGE_DLLCHARACTERISTICS_NX_COMPAT): Likewise.
	(IMAGE_SYM_SECTION_MAX_EX): Likewise.
	(IMAGE_REL_EBC_ABSOLUTE): Likewise.
	(IMAGE_REL_EBC_ADDR32NB): Likewise.
	(IMAGE_REL_EBC_REL32): Likewise.
	(IMAGE_REL_EBC_SECTION): Likewise.
	(IMAGE_REL_EBC_SECREL): Likewise.
	(RTL_CRITICAL_SECTION_DEBUG): Update.
	(RTL_CRITICAL_SECTION_FLAG_NO_DEBUG_INFO): Define.
	(RTL_CRITICAL_SECTION_FLAG_DYNAMIC_SPIN): Likewise.
	(RTL_CRITICAL_SECTION_FLAG_STATIC_INIT): Likewise.
	(RTL_CRITICAL_SECTION_ALL_FLAG_BITS): Likewise.
	(RTL_CRITICAL_SECTION_FLAG_RESERVED): Likewise.
	(RTL_CRITICAL_SECTION_DEBUG_FLAG_STATIC_INIT): Likewise.

2010-02-19  Jonathan Yong  <jon_y@sourceforge.net>

	* include/shlguid.h (IID_IFolderView): Define.

2010-02-15  Kai Tietz  <kai.tietz@onevision.com>

	* winnt.h (UNREFERENCED_PARAMETER): Silence warning.
	(UNREFERENCED_LOCAL_VARIABLE): Likewise.

2010-01-20  Ozkan Sezer  <sezeroz@gmail.com>

	* wincrypt.h (CERT_ALT_NAME_ENTRY): Commented out pEdiPartyName
	member from the union (not implemented, see:
	http://msdn.microsoft.com/en-us/library/aa924681.aspx or
	http://msdn.microsoft.com/en-us/library/aa377173.aspx .)

2010-02-01  Kai Tietz  <kai.tietz@onevision.com>

	Donated by S. Koehler
	* winusbio.h: New API.
	* winusb.h: New API.

2010-01-20  Ozkan Sezer  <sezeroz@gmail.com>

	* commctrl.h: Relaxed _WIN32_IE version requirement to 0x0500
	for now. Added a big FIXME note that it should really be 0x0501.

2010-01-01  Jonathan Yong  <jon_y@sourceforge.net>

	* include/profile.h (_MCOUNT_DECL): Add gnu_inline attribute
	and remove static qualifier.
