+2007-03-12 Raja R Harinath <rharinath@novell.com>
+
+ * DefaultParameterValueAttribute.cs: Move to System.dll.
+
+2007-02-08 Jonathan Chambers <joncham@gmail.com>
+
+ * Marshal.cs: Throw exceptions for AddRef, Release,
+ and QueryInterface in managed code. Implement GetComInterfaceForObject,
+ GetIDispatchForObject, GetIUnknownForObject, GetObjectForIUnknown,
+ GetObjectsForNativeVariants, IsComObject, ReleaseComObject, and
+ FinalReleaseComObject. Unimplement GetComObjectData and SetComObjectData
+ for now to save space and simplify __ComObject for now. MSDN states the
+ user should never call these methods anyway.
+
+2007-01-29 Marek Habersack <grendello@gmail.com>
+
+ * Marshal.cs: Implement a missing Marshal.Copy overload.
+
+2007-01-11 Jonathan Chambers <joncham@gmail.com>
+
+ * Marshal.cs: Implement Marshal.ReAllocCoTaskMem.
+
+2007-01-03 Miguel de Icaza <miguel@novell.com>
+
+ * SafeHandle.cs: Do not use locks in SafeHandle to protect the
+ access to the refcount, use Interlocked.CompareExchange. The
+ locks were the source of problems with domain finalization when
+ this code was enabled.
+
+ This should fix Matt Hargett's bug report with a full `make check'
+ that reported variations of:
+
+ ** (../../class/lib/net_2_0/nunit-console.exe:29644): WARNING **:
+ Finalization of domain <domainname> timed out.
+
+ Also, it is a lot lighther.
+
+2006-12-21 Miguel de Icaza <miguel@novell.com>
+
+ * CriticalHandle.cs: Add Dispose(bool disposing) method, and
+ refactor.
+
+2006-12-15 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * Marshal.cs: Use SystemDefaultCharSize to determine whether to
+ use Ansi or Unicode variant of StringToCoTaskMem.
+
+2006-12-15 Miguel de Icaza <miguel@novell.com>
+
+ * Marshal.cs (SecureStringToCoTaskMemAnsi, SecureStringToBSTR,
+ SecureStringToCoTaskMemUnicode, ZeroFreeCoTaskMemAnsi,
+ ZeroFreeCoTaskMemUnicode, ZeroFreeGlobalAllocAnsi,
+ ZeroFreeGlobalAllocUnicode): Implement.
+
+ (StringToCoTaskAuto): return the same as Ansi.
+
+ The ANSI code is out of sync with Mono, which treats ANSI as
+ UTF-8.
+
+ Code formatting changes
+
+2006-12-11 Miguel de Icaza <miguel@novell.com>
+
+ * SafeHandle.cs: Fix a handful of bugs, and add tests for them.
+ Only release the handle if its owned by us. Also throw
+ ObjectDisposedException's
+
+ Implement finalizer.
+
+ DangerousAddRef will now throw an exception if the object was
+ disposed.
+
+2006-12-02 Miguel de Icaza <miguel@novell.com>
+
+ * SafeHandle.cs: Implement this class.
+
+2006-10-06 Jonathan Chambers <joncham@gmail.com>
+
+ * ExtensibleClassFactory.cs: Implement RegisterObjectCreationCallback.
+
+2006-08-31 Robert Jordan <robertj@gmx.net>
+
+ * Marshal.cs: Replaced the *Auto internal calls with managed
+ variants. Fixed SystemDefaultCharSize to return an OS dependent
+ value.
+
+2006-08-09 Jonathan Chambers <joncham@gmail.com>
+
+ * Marshal.cs: Implement GetIDispatchForObject.
+
+2006-08-07 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * Marshal.cs: Added stubs for GetTypeLibGuid (ITypeLib), GetTypeLibLcid
+ (ITypeLib), GetTypeLibName (ITypeLib).
+
+2006-07-28 Jonathan Chambers <joncham@gmail.com>
+
+ * Marshal.cs: Implemented CreateWrapperOfType and ReleaseComObject.
+
+2006-07-15 Jonathan Chambers <joncham@gmail.com>
+
+ * Marshal.cs: Begin implementing COM Interop. Implemented
+ AddRef, GetComInterfaceForObject, GetComObjectData, GetIUnknownForObject,
+ GetObjectForIUnknown, GetTypedObjectForIUnknown, IsComObject, QueryInterface
+ Release, SetComObjectData, and ThrowExceptionForHR.
+
+2006-06-07 Jonathan Chambers <jonathan.chambers@ansys.com>
+
+ * Marshal.cs: Implement GetComSlotForMethodInfo
+
+2006-06-05 Jonathan Chambers <jonathan.chambers@ansys.com>
+
+ * Marshal.cs: Implement VARIANT marshalling methods
+
+2006-05-20 Zac Bowling <zac@zacbowling.com>
+ * VarEnum.cs: ComVisible Attribute (2.0)
+ * InterfaceTypeAttribute.cs: ComVisible Attribute (2.0)
+ * UCOMITypeInfo.cs: ComImport Attribute (1.x)
+ * UCOMITypeComp.cs: ComImport Attribute (1.x)
+ * MarshalAsAttribute.cs: ComVisible Attribute (2.0)
+ * StructLayoutAttribute.cs: ComVisible Attribute (2.0)
+ * ProgIdAttribute.cs: ComVisible Attribute (2.0)
+ * PrimaryInteropAssemblyAttribute.cs: ComVisible Attribute (2.0)
+ * ImporterEventKind.cs: ComVisible Attribute (2.0)
+ * UCOMIPersistFile.cs: ComImport Attribute (1.x)
+ * SetWin32ContextInIDispatchAttribute.cs: Obselete and ComVisible
+ Attribute (2.0)
+ * IRegistrationServices.cs: ComVisible Attribute and CAS Attributes (2.0)
+ * InAttribute.cs: ComVisible Attribute (2.0)
+ * UCOMIMoniker.cs: ComImport Attribute (1.x)
+ * MarshalDirectiveException.cs: ComVisible Attribute (2.0)
+ * IDLDESC.cs: ComVisible Attribute (1.x)
+ * FUNCFLAGS.cs: ComVisible Attribute (1.x)
+ * UCOMIConnectionPointContainer.cs: ComImport Attribute (1.x)
+ * TypeLibExporterFlags.cs: ComVisible Attribute (2.0)
+ * ICustomMarshaler.cs: ComVisible Attribute (2.0)
+ * LayoutKind.cs: ComVisible Attribute (2.0) + Serializable + Clean
+ * ICustomAdapter.cs: ComVisible Attribute (2.0)
+ * UnmanagedFunctionPointerAttribute.cs: ComVisible Attribute and Param
+ Signature of UnmanagedFunctionPointerAttribute(...)
+ * FUNCKIND.cs: ComVisble Attribute (1.x)
+ * TypeLibVersionAttribute.cs: ComVisible Attribute (2.0) + Missing in
+ 2.0
+ * TypeLibVarAttribute.cs: ComVisible Attribute (2.0)
+ * ITypeLibConverter.cs: ComVisible Attribute (2.0)
+ * UCOMIRunningObjectTable.cs: ComImport Attribute (1.x)
+ * IDispatchImplAttribute.cs: Obsolete + ComVisible Attribute (2.0)
+ * ITypeLibImporterNotifySink.cs: ComVisible Attribute (2.0)
+ * PreserveSigAttribute.cs: ComVisible Attribute (2.0)
+ * SYSKIND.cs: ComVisible Attribute (1.x)
+ * UCOMIEnumVARIANT.cs: ComImport Attribute (1.x)
+ * UCOMIEnumString.cs: ComImport Attribute (1.x) and Expose to 1.x (not
+ a 2.0 exclusive class)
+ * OutAttribute.cs: ComVisible Attribute (2.0)
+ * InvalidComObjectException.cs: ComVisible Attribute (2.0)
+ * SEHException.cs: ComVisible Attribute (2.0)
+ * UCOMIConnectionPoint.cs: ComImport Attribute (1.x)
+ * TypeLibImporterFlags.cs: ComVisible Attribute (2.0) and
+ Serializable
+ * OptionalAttribute.cs: ComVisible Attribute (2.0)
+ * TYPEDESC.cs: ComVisible Attribute (1.x)
+ * UCOMIEnumMoniker.cs: ComImport Attribute (1.x) and Expose to 1.x
+ (not a 2.0 exclusive class)
+ * TypeLibTypeFlags.cs: ComVisible Attribute (2.0)
+ * ITypeLibExporterNotifySink.cs: ComVisible Attribute (2.0)
+ * HandleRef.cs: ComVisible.cs and add ToIntPtr (2.0)
+ * DllImportAttribute.cs: ComVisible Attribute (2.0)
+ * TypeLibTypeAttribute.cs: ComVisible Attribute (2.0)
+ * UnknownWrapper.cs: Serializable, ComVisible Attribute (2.0)
+ * IDFLAGS.cs: ComVisible Attribute (1.x only)
+ * RegistrationClassContext.cs: License + Flags attribute (2.0)
+ * GCHandle.cs: ComVisible Attribute + Operator Overrides (2.0)
+ * TypeLibImportClassAttribute.cs: ComVisible Attribute (2.0)
+ * IMPLYTPEFLAGS.cs: ComVisible Attribute (1.x)
+ * ImportedFromTypeLibAttribute.cs: ComVisible (2.0)
+ * UCOMIBindCtx.cs: Obsolete Attribute (2.0)
+ * FUNCDESC.cs: ComVisible Attribute (1.x)
+ * RegistrationConnectionType.cs: Flags Attribute (2.0)
+ * IDispatchImplType.cs: Obsolete + ComVisible Attribute (2.0)
+ * TypeLibConverter.cs: ComVisible (2.0)
+ * INVOKEKIND.cs: ComVisible Attribute (1.x)
+ * GCHandleType.cs: ComVisible Attribute (2.0) + Serializable
+ * ICustomFactory.cs: ComVisible Attribute (2.0)
+ * FieldOffsetAttribute.cs: ComVisible Attribute (2.0)
+ * LIBFLAGS.cs: ComVisible Attribute (1.x)
+ * ComSourceInterfacesAttributes.cs: ComVisible Attribute (2.0)
+ * STATSTG.cs: ComVisible Attribute (1.x)
+ * InvalidOleVariantTypeException.cs: ComVisible Attribute (2.0)
+ * TypeLibVarFlags.cs: ComVisible Attribute (2.0)
+ * TYPEFLAGS.cs: ComVisible Attribute (1.x)
+ * SafeArrayRankMismatchException.cs: ComVisible Attribute (2.0)
+ * TYPEATTR.cs: ComVisible Attribute (1.x)
+ * GuidAttribute.cs: ComVisible Attribute (2.0)
+ * UCOMIEnumConnectionPoints.cs: ComImport Attribute (1.x) + Expose to
+ 1.x (not a 2.0 exclusive)
+ * SafeArrayTypeMismatchException.cs: ComVisible Attribute (2.0)
+ * ObjectCreationDelegate.cs: ComVisible Attribute (2.0)
+ * ITypeLibExporterNameProvider.cs: ComVisible Attribute (2.0) and
+ MarshelAs VarEnum Type.
+ * UCOMIStream.cs: ComImport Attribute (1.x)
+ * TypeLibFuncFlags.cs ComVisible Attribute (2.0)
+ * UnmanagedType.cs: ComVisible Attribute (2.0) + clean up
+ * UCOMIEnumConnections.cs: ComImport Attribute (1.0)
+ * LCIDConversionAttribute.cs: ComVisible Attribute (2.0)
+ * TypeLibFuncAttribute.cs: ComVisible Attribute (2.0)
+
+2006-05-02 Jonathan Chambers <jonathan.chambers@ansys.com>
+
+ * Marshal.cs: Implement BSTR methods
+
+2006-01-12 Ben Maurer <bmaurer@andrew.cmu.edu>
+
+ * SafeHandle.cs: Update to RTM api
+
2005-11-17 Zoltan Varga <vargaz@gmail.com>
* DefaultParameterValueAttribute.cs: New file.