+2009-09-23 Miguel de Icaza <miguel@novell.com>
+
+ * verify.c: when comparing culture strings, use g_ascii_strcmp
+
+ * assembly.c (mono_public_tokens_are_equal): Change g_strcasecmp
+ when comparing public key tokens to use memcmp on 16 bytes. I do
+ not believe this ever worked as advertised in the past.
+
+ The standard Public Key is 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00
+ which would have always failed earlier.
+
+2009-06-25 Miguel de Icaza <miguel@novell.com>
+
+ * gc.c: Raise a NullArgumentException if the object passed is
+ null.
+
+2009-09-22 Zoltan Varga <vargaz@gmail.com>
+
+ * image.c (mono_image_close): Atomically decrement the reference count and
+ remove the image from the hash tables, to prevent another thread from seeing a
+ dying MonoImage. Fixes #541194.
+
+2009-09-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * threadpool.c: actually use the minimum number of 'completion ports'
+ (for us is just a potential worker thread).
+
+2009-09-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * threadpool.c: remove ares_htable. It does not make sense any more
+ since the same objects are now stored in GC-tracked arrays while they are
+ in the queue.
+
+2009-09-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * threadpool.c: increase the minimum length of the queues to 128.
+ Remove warning.
+
+2009-09-21 Zoltan Varga <vargaz@gmail.com>
+
+ * marshal.c (mono_marshal_get_string_ctor_signature): New internal function to
+ return the modified signature used by string ctors.
+
+2009-09-20 Zoltan Varga <vargaz@gmail.com>
+
+ * marshal.c (mono_marshal_get_runtime_invoke_dynamic): New internal function
+ to return a runtime-invoke wrapper which uses DYN_CALL to call the wrapped
+ method, to be used by full-aot.
+
+2009-09-18 Rodrigo Kumpera <rkumpera@novell.com>
+
+ Since the runtime supports lazy initialization of a type's vtable and this can cause a type
+ to fail, we need to ensure that the vtable is properly initialized at spots were the type must
+ be known to be good.
+
+ * class.c (mono_class_init): Fail array types if their element type fails initialization
+ as well.
+
+ * object.c (mono_class_create_runtime_vtable): Fail array types if their element type fails
+ initialization, additionally we request the element_type vtable to be initialized as well.
+
+ This is fine and should not increase the working set in any meaningful way since it's reasonable
+ to assume that most code will create an array and eventually populate it, which will require the
+ type's vtable to be initialized.
+
+ * loader.c (field_from_memberref): Add a comment for a possibly useless mono_class_init call.
+
+2009-09-17 Atsushi Enomoto <atsushi@ximian.com>
+
+ * normalization-tables.h : regenerated.
+
+2009-09-16 Zoltan Varga <vargaz@gmail.com>
+
+ * mono-debug.c (mono_debug_add_method): Increase the size of the buffer,
+ a leb128 encoding can take up to 5 bytes.
+
+2009-09-15 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c (verify_class_overrides): Remove useless argument.
+
+ * class.c (mono_class_setup_vtable_general): Move the overrides check to happen
+ before interface enumeration as this is no longer required.
+
+2009-09-15 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c: New function mono_class_is_assignable_from_slow that is safe to be
+ used under mono_class_init context. This functions avoid any code path that
+ calls mono_class_init, which leads it to be slow as some things like the interface
+ bitmap are not available.
+
+ * class.c (verify_class_overrides): Use mono_class_is_assignable_from_slow instead
+ of it's own broken version. Fixes the verifier part of #538588.
+
+ * class-internals.h: Export mono_class_is_assignable_from_slow as part of the internal
+ API.
+
+2009-09-15 Mark Probst <mark.probst@gmail.com>
+
+ * class.c (mono_class_init): Always set an exception in a class if
+ vtable setup fails. Fixes #538577.
+
+ * generic-sharing.c: Raise an exception if mono_class_vtable()
+ returns NULL.
+
+2009-09-13 Zoltan Varga <vargaz@gmail.com>
+
+ * marshal.c (mono_marshal_get_runtime_invoke): Don't share instance
+ methods of vtypes, as they could be incorrectly shared with static methods
+ taking an IntPtr argument.
+
+2009-09-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * domain.c:
+ * object.c:
+ * class-internals.h: renamed waithandle_class to
+ manualresetevent_class.
+ * marshal.c: propagate the exception if a remoting BeginInvoke call
+ fails.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * object.c: Properly handle vtable failures.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * socket-io.c: Assert on vtable failure.
+
+ * mono-mlist.c: Assert on vtable failure.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * marshal.c: Assert on vtable failure.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * icall.c: Properly handle vtable failures.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * debug-helpers.c (mono_class_describe_statics): Properly handle vtable failures.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * cominterop.c (ves_icall_System_ComObject_CreateRCW): Property handle vtable failures.
+
+ * console-unix.c (do_console_cancel_event): Same.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class-internals.h: Add mono_class_vtable_full function that allows control
+ if an exception should be raised or not.
+
+ * object.c (mono_class_vtable): Call into mono_class_vtable_full. Fix this function
+ to do what its documentation say, that is to return NULL and set exception_type on
+ failure.
+
+ * object.c (mono_class_create_runtime_vtable): Add new raise_on_error parameter
+ and change the code to honor it.
+
+2009-09-11 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c: Fix typo in error message.
+
+2009-09-10 Sebastien Pouliot <sebastien@ximian.com>
+
+ * security-core-clr.c: Fix default_platform_check so it can run
+ the runtime coreclr tests (without an infinite recursion when
+ throwing an exception).
+
+2009-09-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ object.c (mono_delegate_ctor_with_method): Guard against null method.
+
+2009-09-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * marshal.c (mono_marshal_get_xappdomain_dispatch): Add an assert
+ that should be replaced with error handling later.
+
+2009-09-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * marshal.c (mono_delegate_end_invoke): Fix warning.
+
+2009-09-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * loader.c (mono_field_from_token): Properly handle invalid
+ dynamic tokens.
+
+2009-09-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * pedump.c (verify_image_file): Skip types that can't be
+ decoded.
+
+2009-09-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c: Look for recursive valuetypes only against the
+ type been initialized as this is a lot simpler and works.
+
+2009-09-10 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c: Ensure that fields are properly loaded before
+ checking them.
+
+2009-09-10 Bill Holmes <billholmes54@gmail.com>
+
+ * object.c (mono_object_get_virtual_method) : Call
+ mono_cominterop_get_invoke if the object is a COM object.
+
+ Code is contributed under MIT/X11 license.
+
+2009-09-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c: Check for recursive valuetype definitions.
+
+2009-09-08 Rodrigo Kumpera <rkumpera@novell.com>
+
+ Use inheritance-aware interface offsets. Inherited types use the same offsets
+ of their parents. This reduce offset duplication in case more than one type in
+ the inheritance tree explicitly implements the same interface.
+
+ This also removes a source of vtable bubbles found in #532409. An abstract type
+ isn't required to provide abstract methods to all interfaces it implements, which
+ resulted in a bubble with the previous scheme as the child would get a non-full
+ vtable from its parent. We fail all concrete types with vtable bubbles, so this
+ should be fixed.
+
+ This change causes an increase of 1.7% in vtable memory usage for IronPython pystone but
+ it's expected to not cause any significant increase beyond that.
+
+ * class.c (setup_interface_offsets): Compute super class iface offsets
+ first to force sharing.
+
+ * class.c: Add VTABLE_SELECTOR macro to the vtable debug macros to help
+ dumping only the relevant ones.
+
+ * class.c (mono_class_setup_vtable_general): Give newslot, non final, virtual
+ methods a new slot regardless if they belong to an interface or not. This allows
+ an inherited type to override the iface method separately from the class one.
+
+2009-09-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * threadpool.c: make the Sleep() alertable to prevent delays exiting
+ applications that take less than 2s to execute.
+ Bug #524984 fixed.
+
+2009-09-04 Zoltan Varga <vargaz@gmail.com>
+
+ * object-internals.h (MonoRuntimeCallbacks): Add a 'get_runtime_build_info' callback.
+
+ * object.c (mono_get_runtime_callbacks): New helper function to return
+ the runtime callbacks.
+
+ * icall.c (ves_icall_Mono_Runtime_GetDisplayName): Use the result of
+ mono_get_runtime_build_info () as the display name.
+
+2009-09-03 Zoltan Varga <vargaz@gmail.com>
+
+ * marshal.c (emit_marshal_array): Call conv.ovf.i on the array parameter
+ argument, since NEWARR expects a native int. Fixes #481559.
+
2009-09-03 Rodrigo Kumpera <rkumpera@novell.com>
* icall.c (ves_icall_MonoMethod_GetDllImportAttribute): Guard