+2009-12-02 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c (mono_class_has_default_constructor): Check fror broken signatures.
+
+ * verify.c (verify_delegate_compatibility): Ditto.
+
+ * verify.c (do_newobj): Ditto.
+
+ Fixes #558046.
+
+2009-12-02 Mark Probst <mark.probst@gmail.com>
+
+ * sgen-gc.c: Use a gray queue instead of requiring that gray
+ objects are in a contiguous region.
+
+ * sgen-gray.c: The gray queue implementation.
+
+ * Makefile.am: sgen-gray.c added.
+
+2009-12-02 Mark Probst <mark.probst@gmail.com>
+
+ * appdomain.c: When unloading a domain, zero its static data and
+ perform a minor collection when using SGen. That will get rid of
+ all the remsets pointing into that domain's static data.
+
+ * sgen-gc.c: Allow remsets into static data. By doing this we
+ need less checks so we're more efficient.
+
+2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c (mono_method_verify): Check for catch clauses with broken
+ types.
+
+ Fixes #558465.
+
+2009-12-01 Jb Evain <jbevain@novell.com>
+
+ * class.c (make_generic_param_class): set the namespace of
+ the generic parameter class from its owner, if available.
+
+2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c (code_bounds_check): Do proper overflow checking.
+
+ * verify.c (mono_method_verify): The number of switch entries is
+ an unsigned int. Properly bounds check it.
+
+ Fixes #558594.
+
+2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * metadata.c: Kill mono_metadata_get_param_attrs_checked. Add
+ mono_metadata_method_has_param_attrs which only checks if a given param
+ list has a non zero flags entry.
+
+ * metadata.c (mono_metadata_get_param_attrs): Add param_count parameter
+ to inform how many params should we expect to decode.
+
+ * loader.c (mono_method_signature): Use mono_metadata_method_has_param_attrs
+ as it's faster than mono_metadata_get_param_attrs.
+
+ * metadata-internals.h: Fix mono_metadata_get_param_attrs signature and
+ add mono_metadata_method_has_param_attrs.
+
+2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c (mono_class_setup_vtable_general): Check for mono_method_get_vtable_slot
+ failures.
+
+ * class.c (mono_method_get_vtable_slot): Don't assert if the computed method slot
+ is -1 but its class is broken.
+
+ Fixes #558522.
+
+2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * metadata.c: Introduce mono_metadata_get_param_attrs_checked which checks
+ for parameter overflow.
+
+ * metadata.c (mono_metadata_parse_method_signature_full): Use checked version
+ of mono_metadata_get_param_attrs.
+
+ * metadata-internals.h: Add mono_metadata_get_param_attrs_checked to the internal
+ API.
+
+ * loader.c (mono_method_signature): Use checked version of mono_metadata_get_param_attrs.
+
+2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c (mono_class_setup_fields): Check for fields with broken types.
+
+ Fixes #558741.
+
+2009-11-28 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * reflection.c (ensure_generic_class_runtime_vtable): Split this function in 2
+ so we can avoid calling ensure_runtime_vtable multiple times for the GTD during
+ its TypeBuilder::CreateType ().
+
+ * reflection.c (ensure_generic_class_runtime_vtable): Avoid initializing interfaces
+ if not needed.
+
+ * reflection.c: Every time we change the interface array, set interfaces_packed to NULL
+ to make setup_interface_offsets happy.
+
+ * reflection.c (remove_instantiations_of_and_ensure_contents): Fix instances again as corlib
+ compilation now works.
+
+2009-11-28 Zoltan Varga <vargaz@gmail.com>
+
+ * appdomain.c (create_exceptions): New helper function extracted from
+ mono_runtime_init () to precreate objects used during exception handling.
+ (mono_runtime_init): Call it.
+ (mono_domain_create_appdomain_internal): Ditto. Fixes #555264.
+
+2009-11-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * reflection.c (remove_instantiations_of_and_ensure_contents): Temp hack to fix corlib
+ compilation until the proper one is found.
+
+2009-11-27 Zoltan Varga <vargaz@gmail.com>
+
+ * class.c (mono_class_setup_vtable_general): Cache the result of
+ get_virtual_methods () since it can be slow because of the metadata
+ optimization.
+
+ * metadata-internals.h (_MonoImage): Change 'method_cache' to a GHashTable
+ from a MonoValueHashTable for now, since the later is based on an earlier
+ version of hpj's internal probing code and seems to have serious collision
+ issues.
+
+ * loader.c (mono_get_method_full): Update after the change above.
+
+2009-11-26 Zoltan Varga <vargaz@gmail.com>
+
+ * class-internals.h (MonoCachedClassInfo): Add 'is_generic_container' field.
+
+2009-11-26 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * reflection.c (get_field_on_inst_generic_type): Try to fallback using the field from
+ the GTD instead of the DGC instead of crashing.
+
+ * reflection.c (ensure_generic_class_runtime_vtable): Only reinflate stuff that is
+ required. Inflate fields if needed.
+
+ * reflection.c (remove_instantiations_of): Ensure generic instances are properly
+ finished. Renamed.
+
+2009-11-26 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c (check_interface_method_override): Check for NULL signatures and fail
+ the type.
+
+ * debug-helpers.c (mono_signature_get_desc): Return a fixed string for NULL signatures.
+
+ Fixes #553428.
+
+2009-11-26 Zoltan Varga <vargaz@gmail.com>
+
+ * class.c (mono_class_get_virtual_methods): Call decode_row_col to obtain
+ the MONO_METHOD_FLAGS column instead of decoding the whole row.
+
+2009-11-25 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * loader.c (field_from_memberref): Resolve the class first then the field
+ signature. Remove a lot of duplicated code and make sure we don't pass valid
+ values to mono_loader_set_error_field_load.
+
+ Fixes #553306.
+
+2009-11-25 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c (inflate_generic_type): Change code to use new signature of
+ mono_error_set_bad_image.
+
+ Fixes #558124.
+
+2009-11-25 Sebastien Pouliot <sebastien@ximian.com>
+
+ * verify.c (mono_method_verify): Don't free ctx.params items if
+ we aborted while inflating the ctx.locals. Complete previous fix
+
+2009-11-25 Sebastien Pouliot <sebastien@ximian.com>
+
+ * verify.c (mono_method_verify): Use the uninflated type name,
+ when the inflated is null, to report errors. Also take care when
+ freeing, not to free everything since, in case of an error, some
+ stuff would be copies (i.e. not allocated by the function itself)
+ Fix bug #558145
+
+2009-11-24 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * verify.c (stack_push, stack_pop, stack_pop_safe): Assert if we underflow
+ or overflow. The caller must have done this check explicitly. This guard us
+ from accessing invalid memory.
+
+ * verify.c (do_push_static_field): Check for stack overflow.
+
+ Fixes #553333.
+
+2009-11-24 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * loader.c (find_method_in_class): Don't crash if the signature cannot
+ be resolved.
+
+ * metadata.c (mono_metadata_parse_generic_param): Return NULL instead
+ of asserting for the case of invalid params.
+
+ Fixes #553304.
+
+2009-11-24 Sebastien Pouliot <sebastien@ximian.com>
+
+ * image.c (mono_image_load_module): Fix crash when a bad assembly
+ has no module at all (fix bug #553412) and also replace the
+ g_assert with a return NULL (documented return value for failure)
+
+2009-11-23 Zoltan Varga <vargaz@gmail.com>
+
+ * debug-helpers.c (mono_type_get_desc): Handle typedbyref.
+
+2009-11-23 Miguel de Icaza <miguel@novell.com>
+
+ * file-io.c: Change FindFirst/FindNext/FindClose API to return the
+ file attribute to managed code and avoid doing the mask/attribute
+ checks here.
+
+2009-11-22 Miguel de Icaza <miguel@novell.com>
+
+ * file-io.c: Surface a smart FindFirst/FindNext/FindClose API to
+ the managed world.
+
+ * icall-def.h: New entry points.
+
+2009-11-19 Mark Probst <mark.probst@gmail.com>
+
+ * process.c: Don't put references to managed objects into a
+ g_ptr_array.
+
+2009-11-18 Sebastien Pouliot <sebastien@ximian.com>
+
+ * class.c (can_access_internals): Allow CoreCLR to participate in
+ allowing (or not) [InternalsVisibleTo] between assemblies.
+ * security-core-clr.c|h: Make sure that only trusted code (a
+ superset of platform code) can access the internals of platform
+ code.
+
+Mon Nov 16 16:28:11 CET 2009 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: use the correct base class to get the virtual method
+ "get_UnderlyingSystemType" and speed up the icall. Fixes bug #555013.
+
+2009-11-16 Sebastien Pouliot <sebastien@ximian.com>
+
+ * security-core-clr.c (get_caller_no_reflection_related):
+ [Mono]Type.InvokeMember is outside System.Reflection[.Emit] but
+ it's still reflection and must be filtered correctly.
+
+2009-11-16 Mark Probst <mark.probst@gmail.com>
+
+ * object.c (compute_class_bitmap): Fix for large bitmaps.
+
+2009-11-15 Zoltan Varga <vargaz@gmail.com>
+
+ (mono_gc_get_suspend_signal): Fix the build with a system libgc.
+
+ * boehm-gc.c (mono_gc_base_init): Applied patch from DKoushik K. Dutta (
+ koush@koushikdutta.com). Disable GC_no_dls on android.
+
+2009-11-12 Mark Probst <mark.probst@gmail.com>
+
+ * sgen-gc.c (find_tlab_next_from_address): Handle the case where
+ tlab_next points outside the TLAB because the allocator was
+ interrupted.
+
+2009-11-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * reflection.c (mono_image_module_basic_init): Handle exceptions correctly.
+
+2009-11-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * object-internals.h: Change signature for mono_string_to_utf8_image.
+
+ * object.c (mono_string_to_utf8_image): Change signature to take a MonoError
+ argument.
+
+ * reflection.c: Take care of mono_string_to_utf8_image change and avoid raising
+ exceptions due to mono_string_to_utf8.
+
+2009-11-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * object-internals.h: Change signature for mono_string_to_utf8_mp.
+
+ * object.c (mono_remote_class): Make sure all resources are released before
+ raising an exception.
+
+ * object.c (mono_print_unhandled_exception): Avoid raising an exception.
+
+2009-11-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * mono-perfcounters.c (network_get_impl): Change variable initialization
+ ordering to fix potential memory leak in case of exceptions.
+
+ * mono-perfcounters.c (mono_perfcounter_create): Properly handle badly
+ encoded strings.
+
+2009-11-09 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * file-io.c (ves_icall_System_IO_MonoIO_GetFileSystemEntries): Change
+ variable initialization ordering to fix potential memory leak in case
+ of exceptions.
+
+2009-11-09 Zoltan Varga <vargaz@gmail.com>
+
+ * icall.c (mono_ArgIterator_Setup): Remove the MONO_ARCH_REGPARMS stuff, its not
+ needed.
+
+2009-11-07 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * appdomain.c: Fix shadow path code to better deal with exceptions.
+
+2009-11-07 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * appdomain.c: Use checked version of mono_string_to_utf8 to avoid raising an
+ exception in the middle of the runtime code.
+
+2009-11-07 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * icall.c (ves_icall_System_Environment_InternalSetEnvironmentVariable): Don't
+ leak memory with broken envvar value.
+
+2009-11-06 Mark Probst <mark.probst@gmail.com>
+
+ * reflection.c (mono_reflection_setup_internal_class): Because
+ nested classes are not added to the name cache, we must put them
+ in the reflection_info_unregister_classes list.
+
+2009-11-05 Sebastien Pouliot <sebastien@ximian.com>
+
+ * class.c: When CoreCLR is enabled don't call mono_init_com_types
+ if MONO_CLASS_IS_IMPORT return true unless the type reside in
+ platform (trusted) code. Instead we return a TypeLoadException to
+ be thrown later. This is the exception thrown by Silverlight 2 if
+ a type, inside application (user) code is marked with [ComImport]
+
+2009-11-05 Zoltan Varga <vargaz@gmail.com>
+
+ * icall.c (ves_icall_System_Diagnostics_Debugger_IsAttached_internal): Call
+ mono_is_debugger_attached () too.
+
+ * mono-debug.c (mono_is_debugger_attached): New helper function.
+ (mono_set_is_debugger_attached): Ditto.
+
+2009-11-05 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * object-internals.h: Add mono_string_to_utf8_checked.
+
+ * object.c: Implement mono_string_to_utf8_checked.
+
+2009-11-05 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c: Add missing check for load errors after every
+ call to mono_class_setup_fields
+
+ Fixes #552282.
+
+2009-11-05 Rodrigo Kumpera <rkumpera@novell.com>
+
+ metadata-verify.c (verify_tables_schema): Fix the error message.
+
+2009-11-05 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * metadata.c: Change event table schema to use TDOR for event type
+ as this is what it's meant to be.
+
+ * metadata.c (mono_metadata_compute_size): Change MONO_TABLE_ASSEMBLYPROCESSOR
+ to MONO_TABLE_ASSEMBLYREFPROCESSOR, which is table that has a MONO_MT_TABLE_IDX
+ entry.
+
+ * metadata.c (mono_metadata_compute_size): Trim MT_TABLE_IDX of code that no
+ longer makes sense: remove MONO_TABLE_EVENT and remove checks for non-existent
+ rows in MONO_TABLE_GENERICPARAM.
+
+ Fixes #552289.
+
+2009-11-05 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * class.c (mono_image_add_to_name_cache): Assert on duplicate
+ insertion.
+
+ * reflection.c (mono_reflection_setup_internal_class): Avoid
+ registering a gc root the same MonoClass multiple times.
+ Don't register nested types on the global scope as they should
+ not be available there.
+
+2009-11-05 Rolf Bjarne Kvinge <RKvinge@novell.com>
+
+ * culture-info-tables.h: regenerated.
+
+2009-11-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+ * debug-helpers.c: avoid g_strdup() in mono_type_full_name().
+
2009-11-04 Sebastien Pouliot <sebastien@ximian.com>
* string-icalls.c|h: Remove string internal calls that are not