Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mono/metadata/ChangeLog')
-rw-r--r--mono/metadata/ChangeLog9792
1 files changed, 9792 insertions, 0 deletions
diff --git a/mono/metadata/ChangeLog b/mono/metadata/ChangeLog
index 11dd01a2afe..0d96d5596a7 100644
--- a/mono/metadata/ChangeLog
+++ b/mono/metadata/ChangeLog
@@ -1,3 +1,9795 @@
+2004-11-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: use memmove in BlockCopyInternal when the source and
+ destination arrays are the same.
+
+2004-11-09 Martin Baulig <martin@ximian.com>
+
+ * class-internals.h (MonoGenericContainer): Removed `method' and
+ `signature', replaced them with `is_method' and `is_signature'
+ flags. Added `context'.
+
+ * loader.c (method_from_methodspec): Take a `MonoGenericContext *'
+ instead of a `MonoGenericContainer *'.
+
+ * metadata.c (mono_metadata_generic_param_equal): Removed the hack
+ for dynamic type parameters.
+ (mono_metadata_load_generic_params): Setup `container->context'.
+
+ * reflection.c (mono_reflection_setup_generic_class): Setup
+ `tb->generic_container->context'.
+ (do_mono_reflection_bind_generic_parameters): Use
+ mono_class_inflate_generic_type() to correctly inflate types,
+ rather than using our own hack just for MONO_TYPE_VAR.
+
+2004-11-09 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_inflate_generic_method): Small fix; don't
+ crash here.
+
+ * icall.c
+ (ves_icall_MonoType_GetGenericArguments): Don't ignore `byref' types.
+ (ves_icall_Type_get_IsGenericTypeDefinition): Likewise.
+ (ves_icall_Type_GetGenericTypeDefinition_impl): Likewise.
+ (ves_icall_Type_BindGenericParameters): Likewise.
+ (ves_icall_Type_get_IsGenericInstance): Likewise.
+ (ves_icall_Type_GetGenericParameterPosition): Likewise.
+ (ves_icall_MonoType_get_HasGenericArguments): Likewise.
+ (ves_icall_MonoType_get_IsGenericParameter): Likewise.
+ (ves_icall_MonoType_get_DeclaringMethod): Likewise.
+
+2004-11-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c (mono_assembly_names_equal): Reenable the comparison of
+ assembly versions and public key tokens. Fixes #69113.
+
+Tue Nov 9 17:34:05 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c: fix bug introduced with the type cache changes
+ on 2004-11-06.
+
+Tue Nov 9 17:26:29 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.h, metadata.c, domain-internals.h, marshal.c: include
+ the MonoClass pointer instead of the token in exception clauses.
+ * reflection.c: updates for the above and make the code not depend
+ on the structure of MonoExceptionClause.
+
+2004-11-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetModulesInternal):
+ Add support for dynamic assemblies. Fixes #69114.
+
+ * loader.c (mono_method_get_header): Handle icalls and pinvoke methods.
+
+2004-11-07 Ben Maurer <bmaurer@ximian.com>
+
+ * class-internals.h (MonoMethod): Move addr to MonoMethodPInvoke
+ since most only those methods use it. the code member of
+ MonoMethodPInvoke was dead, so that can be removed too. Also,
+ remove inline_count (again, not used), and move slot so that it
+ can share bits with some other flags. This saves 8 bytes in the
+ structure and gives us about 50 kb back for mcs helloworld.cs
+
+ * *.[ch]: Do naming changes for the above.
+
+ * loader.c (mono_method_get_header): Lazily init the header
+ on first access.
+ (mono_get_method_from_token): don't init the header here
+ (mono_free_method): the header may never be allocated
+
+ Overall, this saves 150 kb of unmanaged allocations
+ for mcs helloworld.cs. That accounts for 10% of the unmanaged
+ memory at runtime.
+
+ * loader.c, loader.h (mono_method_get_header): new accessor.
+
+ * *.[ch]: use the above method. Prepares us to lazily load
+ the header.
+
+ * *.[ch]: Clean up all the pesky warnings. gcc now only gives
+ three warnings, which are actual bugs (see 69206).
+
+ * class-internals.h (MonoMethod): Remove remoting_tramp. It is
+ unused. Saves a cool 4 bytes / method.
+
+2004-11-06 Ben Maurer <bmaurer@ximian.com>
+
+ * metadata.c (builtin_types): Add types for System.Object here.
+ (mono_metadata_parse_type_full): Cache MonoType*'s that are
+ for a class or valuetype from klass->this_arg or klass->byval_arg.
+
+ On mcs for a hello world, this gets us down from 21836 MonoType's
+ to 14560.
+
+ (mono_metadata_free_type): Account for the above change.
+
+2004-11-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (ves_icall_System_AppDomain_GetData): Throw an
+ exception instead of asserting if name is null.
+ (ves_icall_System_AppDomain_GetData): Ditto.
+
+2004-11-05 Zoltan Varga <vargaz@freemail.hu>
+
+ (ves_icall_get_enum_info): Avoid crash when called on a non-finished
+ EnumBuilder.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetEntryAssembly):
+ Return NULL when the domain does not have entry_assembly set.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetFilesInternal):
+ Add a 'resource_modules' argument.
+ (ves_icall_type_GetTypeCode): Fix typecode of byref types.
+
+ * reflection.c (mono_reflection_create_runtime_class): Move setting
+ of wastypebuilder here, so mono_get_type_object () returns a MonoType
+ for enums too.
+
+ * marshal.c (ves_icall_System_Runtime_InteropServices_Marshal_PtrToStringAnsi): Return NULL here instead of an empty string to match MS behavior.
+ (ves_icall_System_Runtime_InteropServices_Marshal_PtrToStringAnsi_len):
+ Throw an ArgumentNullException if 'ptr' is null.
+
+ * appdomain.c (mono_domain_assembly_search): Avoid matching dynamic
+ assemblies here. Fixes #69020.
+
+2004-11-05 Geoff Norton <gnorton@customerdna.com>
+
+ * reflection.c (build_compressed_metadata): Fix the previous patch for
+ big endian systems. GUINT32_FROM_LE isn't needed on strlen and was overwriting
+ the stack.
+
+2004-11-04 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c (mono_assembly_names_equal): Allow a match if one of
+ the cultures is false. Fixes #69090.
+
+ * reflection.c (build_compressed_metadata): Fix invalid memory read
+ detected by valgrind.
+
+ * reflection.c (mono_reflection_get_type): Avoid triggering a
+ TypeResolve multiple times for the same type. Fixes #65577.
+
+2004-11-04 Ben Maurer <bmaurer@ximian.com>
+
+ * marshal.c: Avoid using ldftn to call managed functions. It is
+ much slower than just a call.
+
+ * reflection.c (mono_module_get_object): free the basename we
+ allocate here from glib.
+
+ * reflection.c (ensure_runtime_vtable): make sure to free
+ overrides. Also, we were allocating an array of MonoMethod not an
+ array of MonoMethod*.
+
+ * marshal.c (mono_marshal_get_stelemref): do a mono_mb_free here.
+
+ * image.c (mono_image_close): free image->guid here.
+
+2004-11-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c: Fix some spec conformance issues with the PE file
+ structures so mcs compiled apps run on the Net 2.0 beta.
+
+2004-11-01 Zoltan Varga <vargaz@freemail.hu>
+
+ * string-icalls.c (ves_icall_System_String_ctor_encoding):
+ Implement this. Fixes #67264.
+
+ * debug-helpers.h debug-helpers.c marshal.c: Move
+ mono_find_method_by_name to debug-helpers.c.
+
+2004-10-31 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_release_type_locks): type_initialization_hash is
+ a GHashTable.
+
+ * reflection.c object.c object-internals.h: Fix warnings.
+
+ * icall.c (ves_icall_Type_GetPropertiesByName): Handle properties
+ without accessors. Fixes #61561.
+
+ * appdomain.c (ves_icall_System_AppDomain_createDomain): Inherit
+ application base from the root domain if not set. Fixes #65641.
+ (mono_runtime_init): Fix warning.
+
+2004-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: call mono_thread_pool_init.
+ * threadpool.[ch]: new mono_thread_pool_init that sets the max. number
+ of worker threads based on the number of CPUs and the environment
+ variable MONO_THREADS_PER_CPU if present. The defaults are 50 (25)
+ for non-windows (windows) systems.
+
+2004-10-27 Chris Toshok <toshok@ximian.com>
+
+ * mono-debug-debugger.c (write_class): don't call mono_class_init
+ here, as even with the check for (!klass->init_pending), we get
+ into a situation where we're hitting cycles in class
+ initialization. Fixes #68816.
+
+2004-10-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.c: Avoid overwriting values in the loaded_images_hash when an
+ assembly is loaded multiple times. Fixes #61152.
+
+ * assembly.c (mono_assembly_names_equal): Compare the cultures as well,
+ so multiple satellite assemblies for the same name can be loaded.
+ Fixes #68259.
+
+ * mono_domain_assembly_preload: Actually return the loaded assembly,
+ not NULL.
+
+ * icall.c (ves_icall_type_is_subtype_of): Fix this for byref types.
+ (ves_icall_type_is_assignable_from): Ditto. Fixes #68582.
+
+ * gc.c (finalize_domain_objects): Call GC_invoke_finalizers () so
+ pending finalizers are not invoked after the appdomain has been
+ unloaded. Fixes #67862.
+
+2004-10-22 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c
+ (mono_debugger_runtime_invoke): Don't box valuetypes.
+
+2004-10-22 Chris Toshok <toshok@ximian.com>
+
+ * mono-debug-debugger.c (do_write_class): handle .cctors too, and
+ don't hide private methods.
+
+2004-10-22 Sebastien Pouliot <sebastien@ximian.com>
+
+ * icall.c: Allows the runtime to "share" (when known) the public key
+ token of an assembly. This avoid the need to recalculate the token
+ (from the public key) in managed code.
+
+2004-10-21 Chris Toshok <toshok@ximian.com>
+
+ * debug-helpers.c (append_class_name): argh, revert last patch.
+
+2004-10-21 Chris Toshok <toshok@ximian.com>
+
+ * debug-helpers.c (append_class_name): use '+' as the delimiter,
+ not '/', so that it matches what the debugger uses to look up
+ methods.
+
+2004-10-21 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_throw_exception): New
+ public method; this is called each time an exception is thrown and
+ allows the debugger to use exception catch points.
+
+2004-10-21 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_handle_exception): Write
+ the stack pointer and the exception object in some struct and pass
+ that to the debugger.
+
+2004-10-21 Chris Toshok <toshok@ximian.com>
+
+ * mono-debug-debugger.c (do_write_class): add instance/static
+ event support. We don't expose "raise" or "other" yet.
+ (event_is_static): new method.
+
+2004-10-20 Bernie Solomon <bernard@ugsolutions.com>
+
+ * mono-debug-debugger.c
+ (mono_debugger_handle_exception): Remove
+ bogus return value for fussy compilers.
+
+2004-10-20 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c
+ (mono_debugger_unhandled_exception): Added `gpointer stack' argument.
+ (mono_debugger_handled_exception): Likewise.
+
+2004-10-20 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.h (MonoDebuggerEvent): Added
+ MONO_DEBUGGER_EVENT_EXCEPTION.
+
+ * mono-debug-debugger.c (mono_debugger_handle_exception): New
+ public function to send the debugger a notification for an
+ exception and inform it about a catch/finally clause.
+
+2004-10-19 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c, icall.c: Applied patch from Alexandre Rocha Lima e
+ Marcondes (alexandremarcondes@psl-pr.softwarelivre.org). Really
+ fix 2.95 build.
+
+ * icall.c (ves_icall_InternalExecute): Fix build for gcc-2.95.
+
+2004-10-18 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (emit_marshal_object): Fix freeing of memory when a reference type is
+ marshalled as [In,Out]. Fixes #58325.
+
+2004-10-14 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_method_body_get_object): Implement some fields.
+
+2004-10-12 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Small
+ fix, correctly retrieve our parent from a generic instance.
+
+2004-10-12 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (mono_metadata_generic_param_equal): We always have
+ an owner.
+
+ * class.c
+ (mono_class_from_generic_parameter): We need to have an owner.
+ (my_mono_class_from_generic_parameter): Likewise.
+
+ * reflection.c (mono_reflection_setup_generic_class): Renamed to
+ mono_reflection_create_generic_class() and added a new
+ mono_reflection_setup_generic_class().
+ (mono_reflection_initialize_generic_param): If we're a nested
+ generic type and inherited from the containing class, set our
+ owner to the outer class.
+
+2004-10-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_MethodBase_GetMethodBodyInternal): New icall.
+
+ * reflection.c (mono_method_body_get_object): New function to create
+ a MethodBody object.
+
+ * object-internals.h object.h: Add MonoReflectionMethodBody structure.
+
+2004-10-11 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (_mono_metadata_type_equal): Renamed to
+ do_mono_metadata_type_equal() and made static.
+
+2004-10-11 Martin Baulig <martin@ximian.com>
+
+ * appdomain.c: Bump corlib version number to 28.
+
+2004-10-10 Martin Baulig <martin@ximian.com>
+
+ * class-internals.h
+ (MonoGenericInst): Added `MonoGenericContainer *container'.
+ (MonoGenericMethod): Likewise.
+ (MonoGenericContext): Likewise.
+ (MonoGenericParam): Added `MonoGenericContainer *owner'.
+
+ * metadata.c
+ (do_mono_metadata_parse_type): Added a `MonoGenericContainer *' argument.
+ (do_mono_metadata_parse_generic_inst): Likewise.
+ (mono_metadata_parse_type_full): New public method. This is the actual
+ mono_metadata_parse_type() implementation - with an additional
+ `MonoGenericContainer *' argument.
+ (mono_metadata_parse_array_full): Likewise.
+ (mono_metadata_parse_signature_full): Likewise.
+ (mono_metadata_parse_method_signature_full): Likewise.
+ (mono_metadata_parse_mh_full): Likewise.
+ (mono_type_create_from_typespec): Likewise.
+ (mono_metadata_interfaces_from_typedef_full): New public method;
+ this is similar to the other _full() methods, but we take a
+ `MonoGenericContext *' since we have to pass it to mono_class_get_full().
+ (mono_metadata_parse_generic_param): Take an additional
+ `MonoGenericContainer *' argument and lookup the MonoGenericParam
+ from that container.
+ (mono_metadata_generic_param_equal): New static method to compare
+ two type parameters.
+ (_mono_metadata_type_equal): New static method; takes an
+ additional `gboolean signature_only' argument - if true, we don't
+ compare the owners of generic parameters.
+ (mono_metadata_signature_equal): Call _mono_metadata_type_equal()
+ with a TRUE argument - do a signature-only comparision.
+
+ * loader.c: Use the new _full() methods and pass the
+ MonoGenericContainer to them.
+
+ * object-internals.h (MonoReflectionTypeBuilder): Added
+ `MonoGenericContainer *generic_container' field.
+ (MonoReflectionMethodBuilder): Likewise.
+
+2004-10-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Module_GetGlobalType): Special
+ case initial images of dynamic assemblies.
+
+ * reflection.c (mono_image_basic_init): Set 'initial_image' field.
+
+ * metadata-internals.h (MonoDynamicImage): Add 'initial_image' field.
+
+ * reflection.c (mono_reflection_event_builder_get_event_info): Fix
+ length of event->other array.
+ (typebuilder_setup_events): Ditto.
+
+ * domain-internals.h (MonoDomain): Rename 'assemblies' hash table to
+ 'assembly_by_name' and add an 'assemblies' list.
+
+ * assembly.h assembly.c: Add a new search hook for determining whenever
+ an assembly is already loaded. Use this instead of searching in the
+ loaded_assemblies list.
+
+ * domain.c appdomain.c: Implement the new search hook so loaded
+ assemblies are now scoped by appdomain. Fixes #67727.
+
+2004-10-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * threads.c (mono_thread_attach): Initialize synch_lock field so
+ mono_thread_detach works again.
+
+ * loader.c (mono_lookup_pinvoke_call): Try the dllname prefixed with
+ 'lib' too. Fixes #63130.
+
+2004-10-06 Jackson Harper <jackson@ximian.com>
+
+ * culture-info-tables.h: regenerated.
+
+2004-10-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_Type_GetInterfaces): Include interfaces
+ implemented by other interfaces in the result. Fixes #65764.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetModulesInternal):
+ Handle unloadable modules without crashing.
+
+ * image.c (load_modules): Revert the previous patch since modules must
+ have a fixed index inside the array.
+
+ * image.c (load_modules): Don't include native modules in the modules
+ array.
+
+2004-10-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h: Add param_defaults field.
+
+ * reflection.c: Add support for parameter defaults in dynamic methods.
+ Fixes #64595.
+
+ * icall.c (ves_icall_MonoType_get_Namespace): Return NULL instead of
+ an empty string when a type has no namespace. Fixes #64230.
+
+2004-10-04 Sebastien Pouliot <sebastien@ximian.com>
+
+ * tabledefs.h: Added "internal" security actions to support non-CAS
+ permissions NonCasDemand, NonCasLinkDemand and NonCasInheritance.
+ Note: they do not seems to be used anymore in 2.0 (new metadata format)
+
+2004-10-04 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_InternalInvoke): Throw an exception when calling
+ constructor of abstract class. Fixes #61689.
+
+2004-10-04 Martin Baulig <martin@ximian.com>
+
+ * class-internals.h (MonoGenericContainer): New type.
+ (MonoMethodNormal): Replaced `MonoGenericParam *gen_params' with
+ `MonoGenericContainer *generic_container'.
+ (MonoClass): Replaced `gen_params' and `num_gen_params' with
+ `MonoGenericContainer *generic_container'.
+
+ * metadata.c (mono_metadata_load_generic_params): Return a
+ `MonoGenericContainer *' instead of a `MonoGenericParam *';
+ removed the `num' argument.
+
+2004-10-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Module_GetPEKind): Add support
+ for dynamic images.
+
+ * object-internals.h (MonoReflectionAssemblyBuilder): Add pe_kind and
+ machine fields.
+
+ * metadata-internals.h (MonoDynamicImage): Add pe_kind and machine fields.
+
+ * reflection.c: Save pe_kind and machine values into the generated
+ image file.
+
+ * appdomain.c: Bump corlib version number.
+
+ * object-internals.h: Reorganize layout of LocalBuilder.
+
+ * class-internals.h class.c (mono_class_get_implemented_interfaces):
+ New helper function.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetTypes): Return the
+ created MonoType for dynamic types. Fixes #66180.
+
+2004-10-02 Ben Maurer <bmaurer@ximian.com>
+
+ * threadpool.c: the ares hashtable needs a critical section around it.
+ this prevents some nasty segfaults
+
+2004-10-02 Massimiliano Mantione <massi@ximian.com>
+
+ * process.c: Fixed alignments to 32 bits as casting to unsigned is unsafe
+ on 64 bits platforms, patch by will@exomi.com (Ville-Pertti Keinonen), see
+ bug 67324).
+
+2004-09-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * object-internals.h (MonoReflectionTypeBuilder): Add 'created' field.
+
+2004-09-30 Lluis Sanchez Gual <lluis@novell.com>
+
+ * image.c: Always canonicalize image file names, to avoid loading
+ the same assembly twice when referenced using a relative path.
+
+2004-09-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.h marshal.c icall.c: Fix bugs in previous patch.
+
+ * marshal.c marshal.h icall.c: Add GetDelegateForFunctionPointerInternal icall.
+
+ * marshal.c: Fix warnings.
+
+2004-09-29 Geoff Norton <gnorton@customerdna.com>
+
+ * marshal.c (mono_ftnptr_to_delegate): This method was improperly
+ attempting to marshal the delegate_trampoline as the method_addr.
+ This patch has a static hashtable of marshalled delegates so that
+ we can map delegate_trampoline addresses back to delegates. This
+ allows a delegate passed to managed code to be passed back into native
+ code. Fixes #67039
+
+2004-09-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c: Add GetFunctionPointerForDelegateInternal icall.
+
+ * reflection.c (method_encode_code): Align method headers properly.
+ Fixes #66025.
+
+2004-09-28 Lluis Sanchez Gual <lluis@novell.com>
+
+ * marshal.c: In the runtime invoke wrapper, reset the abort
+ exception if it is cached. This avoids the automatic rethrowal of
+ the exception after the catch of the wrapper. Also check for pending
+ interruptions before calling the managed method. This is done using
+ the new method emit_thread_force_interrupt_checkpoint, since the
+ normal checkpoint method is ignored when running the invoke wrapper.
+ * object.c: If the abort exception is rethrown, set the abort_exc
+ field of the thread, so it will be rethrown aftere every catch.
+ * threadpool.c: Only run an interruption checkpoint if what has been
+ requested is a stop of the thread (aborts will be ignored).
+ * threads.c: By default, a thread will now never be interrumped while
+ running the runtime invoke wrapper (this ensures that runtime_invoke
+ will always return to the caller if an exception pointer is provided).
+ There is a new special method mono_thread_force_interruption_checkpoint()
+ to force an interruption checkpoint even if running a protected
+ wrapper, which is used by the same runtime invoke wrapper to do a check
+ at a safe point.
+
+2004-09-28 Lluis Sanchez Gual <lluis@novell.com>
+
+ * object.c, object-internals.h: Implemented mono_release_type_locks,
+ which releases the cctor locks held by a thread.
+ * threads.c, threads.h: In thread_cleanup, release cctor locks held
+ by a thread. Added mono_thread_exit() method to be used to safely stop
+ a thread.
+
+2004-09-28 Raja R Harinath <rharinath@novell.com>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetModulesInternal):
+ Move null check before dereference. Avoid indexing beyond the end
+ of the 'modules' array.
+
+2004-09-28 Raja R Harinath <rharinath@novell.com>
+
+ * metadata-internals.h (MonoImage): Add module_count field.
+ * image.c (load_modules): Set image->module_count.
+ (mono_image_load_file_for_image): Use image->module_count.
+ * reflection.c (mono_image_load_module): Append to image->modules array
+ of dynamic assembly.
+ (mono_module_get_object): Fix loop to actually increment index.
+ Use image->module_count.
+ * assembly.c (mono_assembly_load_references): Use image->module_count.
+ * icall.c (ves_icall_System_Reflection_Assembly_GetModulesInternal):
+ Likewise.
+
+2004-09-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_FieldInfo_GetUnmanagedMarshal):
+ Avoid assert on generic types.
+
+2004-09-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_FieldInfo_GetUnmanagedMarshal): New icall.
+
+ * reflection.c (mono_param_get_objects): Fill out MarshalAsImpl field.
+
+ * reflection.c (mono_reflection_marshal_from_marshal_spec): New
+ function to convert a MarshalSpec structure to its managed counterpart.
+
+ * reflection.c: Fix warnings.
+
+ * object-internals.h (MonoReflectionParameter): Add MarshalAsImpl
+ field.
+
+ * icall.c (mono_create_icall_signature): Fix build.
+
+2004-09-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c: Add MakePointType icall.
+
+ * icall.c (ves_icall_System_Text_Encoding_InternalCodePage): Fix
+ warnings.
+
+2004-09-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: reuse allocated slots in the queue.
+
+2004-09-24 Zoltan Varga <vargaz@freemail.hu>
+
+ * object-internals.h (MonoReflectionDllImportAttribute): New structure.
+
+ * icall.c: Add new icalls for GetDllImportAttribute and GetFieldOffset.
+
+ * reflection.h reflection.c (mono_reflection_get_custom_attrs): Revert
+ previous change.
+
+ * tabledefs.h: Add constants for pinvoke attributes BestFit and
+ ThrowOnUnmappableChar.
+
+ * icall.c (ves_icall_Type_GetPacking): New icall.
+
+2004-09-24 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_GetGenericParameterConstraints): New interncall.
+
+2004-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c:
+ (mono_domain_set): allow setting a domain that is being unloaded.
+ (mono_domain_unload): invoke the DomainUnload callbacks in the domain
+ being unloaded.
+
+2004-09-23 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c reflection.h reflection.c: Add a 'pseudo_attrs' argument to
+ the GetCustomAttributes icall.
+
+2004-09-23 Martin Baulig <martin@ximian.com>
+
+ * object-internals.h (MonoReflectionGenericParam): Replaced
+ 'has_ctor_constraint', `has_reference_type' and `has_value_type'
+ with `guint32 attrs'.
+
+2004-09-23 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_GetGenericParameterAttributes): New interncall.
+
+2004-09-23 Martin Baulig <martin@ximian.com>
+
+ * object-internals.h (GenericParameterAttributes): New enum.
+
+2004-09-23 Zoltan Varga <vargaz@freemail.hu>
+
+ * object-internals.h (MonoEventInfo): Add 'other_methods' field.
+
+ * class.c (init_events): Fill out event->other field.
+
+ * class.c: Fix warnings.
+
+ * icall.c (ves_icall_get_event_info): Fill out 'other_methods' field.
+
+Wed Sep 22 19:04:32 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * class-internals.h, icall.c, loader.c, loader.h: added a faster stack
+ walk which doesn't supply the IL offset.
+
+2004-09-22 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_setup_internal_class): If we're
+ System.ValueType, System.Object or System.Enum, set
+ `klass->instance_size' and create the vtable.
+ (mono_reflection_create_internal_class): If we're an enum type,
+ get the base class from our current corlib.
+
+2004-09-22 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h (MonoResolveTokenError): New type.
+
+ * icall.c (ves_icall_System_Reflection_Module_ResolveMemberToken): New
+ icall.
+
+ * icall.c: Add an 'error' argument to the ResolveToken icalls.
+
+2004-09-22 Lluis Sanchez Gual <lluis@novell.com>
+
+ * icall.c: Support ContextBoundObject proxies in ves_icall_InternalExecute.
+ Support also calling constructors, but only for already allocated objects.
+
+2004-09-17 Geoff Norton <gnorton@customerdna.com>
+
+ * reflection.c (type_get_qualified_name): If the klass is null
+ return the typename to avoid a NullRefEx.
+ (encode_cattr_value): Get the qualified name of the boxed type,
+ not the underlying enumtype. Fixes #62984.
+
+2004-09-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c: Fix problems with previous checkin.
+
+2004-09-21 <vargaz@freemail.hu>
+
+ * marshal.h marshal.c icall.c: Add new icalls for Alloc/FreeHGlobal. Change the
+ existing mono_marshal_alloc/free functions to use CoTaskMemAlloc/Free under windows.
+
+ * marshal.c: Allocate marshaller memory using mono_marshal_alloc/free.
+
+2004-09-21 Geoff Norton <gnorton@customerdna.com>
+
+ * icall.c (ves_icall_MonoType_GetElementType): GetElementType
+ should only return a type for pointers, arrays, and passbyref types.
+ Fixes bug #63841.
+
+2004-09-21 Martin Baulig <martin@ximian.com>
+
+ * domain.c (mono_debugger_check_runtime_version): New public
+ function.
+
+ * icall.c (ves_icall_MonoDebugger_check_runtime_version): New icall.
+
+2004-09-20 Sebastien Pouliot <sebastien@ximian.com>
+
+ * reflection.c: Added missing sort to the declarative security
+ attributes table. MS implementation stops seeing the attributes if the
+ token number regress in the table (as shown by ildasm and permview).
+
+2004-09-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * object-internals.h (MonoReflectionModule): Add 'token' field.
+
+ * reflection.c (mono_reflection_get_token): Add support for Module
+ and Assembly.
+ (mono_module_get_object): Set 'token' field.
+ (mono_module_file_get_object): Set 'token' field.
+
+ * icall.c: Add new Assembly and Module icalls.
+
+ * appdomain.c: Bump corlib version.
+
+2004-09-19 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.h loader.c class.h class.c: Add helper functions for obtaining
+ tokens of metadata objects.
+
+ * reflection.h reflection.c (mono_reflection_get_token): New function
+ to obtain the token of a metadata object.
+
+ * icall.c: Add icalls for MetadataToken and ModuleHandle methods.
+
+2004-09-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.c (mono_lookup_pinvoke_call): Try the underscore prefixed name as well.
+
+ * loader.c (mono_lookup_pinvoke_call): Add support for stdcall name mangling.
+
+2004-09-16 Sebastien Pouliot <sebastien@ximian.com>
+
+ * appdomain.c: Bumped MONO_CORLIB_VERSION to 25.
+ * object-internals.h: Added 3 MonoArray* members to MonoReflection
+ AssemblyBuilder to access the permissions set in the class lib.
+ * reflection.c: Added security attributes encoding step in
+ mono_image_build_metadata.
+ * tabledefs.h: Added new security actions defined in 2.0:
+ LinkDemandChoice, InheritanceDemandChoice and DemandChoice.
+
+2004-09-16 Lluis Sanchez Gual <lluis@novell.com>
+
+ * threads.c: Fixed SET_CURRENT_OBJECT macros, they were ignoring the
+ macro parameter.
+
+2004-09-16 Lluis Sanchez Gual <lluis@novell.com>
+
+ * locales.c: nullify the ICU_collator member of CompareInfo when it is
+ finalized. There where random SIGSEVs at program termination, when
+ an object being finalized was trying to do a string comparison and
+ the current culture was already finalized.
+
+2004-09-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c: call thread_cleanup before finishing the thread if we get
+ there.
+
+2004-09-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (ves_icall_System_AppDomain_createDomain): Load all
+ assemblies from the parent. Fixes #65665.
+
+2004-09-15 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.c (mono_metadata_parse_type): Fix parsing of custom
+ modifiers.
+
+2004-09-14 Bernie Solomon <bernard@ugsolutions.com>
+
+ * reflection.h: add prototype for mono_get_dbnull_object
+ * reflection.c: add prototypes for get_default_param_value_blobs
+ and mono_get_object_from_blob for fussier compilers
+
+2004-09-14 Lluis Sanchez Gual <lluis@novell.com>
+
+ * object.c: Added a "done" flag to TypeInitializationLock. This avoids
+ false deadlock checks in class initialization.
+
+2004-09-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.c (mono_image_addref): Fix comment.
+
+ * metadata.c (mono_metadata_parse_type): Avoid memory allocations if
+ possible.
+
+2004-09-12 Jambunathan K <kjambunathan@novell.com>
+
+ * reflection.c (mono_param_get_objects): Modified to return
+ ParameterInfo.DefaultValue object.
+
+ (get_default_param_value_blobs):
+ (mono_get_object_from_blob):
+ (mono_get_dbnull_object): New helper routines.
+
+ * object.c (mono_get_constant_value_from_blob): New helper routine
+ carved out from get_default_field_value ()
+
+ * object-internals.h (mono_get_constant_value_from_blob): Added
+ function declaration.
+
+2004-09-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c assembly.h icall.c class.c appdomain.c: Lazily load
+ referenced assemblies. Fixes #62135.
+
+ * exception.h exception.c (mono_get_exception_file_not_found2): New
+ helper function.
+
+2004-09-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.h class.c: Add mono_type_get_underlying_type ().
+
+2004-09-09 Geoff Norton <gnorton@customerndna.com>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetTypes):
+ Fix GetTypes() to support dynamically created assemblies.
+
+2004-09-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (reflection_methodbuilder_to_mono_method): Remove TODO.
+
+ * reflection.c (reflection_methodbuilder_to_mono_method): Fix bug in
+ previous patch.
+
+ * reflection.h reflection.c loader.c: Allow dynamic construction of
+ pinvoke methods. Fixes #65571.
+
+ * reflection.c (mono_reflection_get_type): Revert previous change since
+ it causes regressions.
+
+2004-09-08 Martin Baulig <martin@ximian.com>
+
+ * class.c (class_compute_field_layout): Don't call
+ mono_class_layout_fields() for open generic instances.
+
+2004-09-08 Bernie Solomon <bernard@ugsolutions.com>
+ * threads.c appdomain.c: fix typo in GC macro
+
+2004-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c: don't call mono_thread_detach() in start_wrapper(),
+ avoiding a possible hang in GetCurrentThreadId(0). Fixes bug #65379.
+
+2004-09-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.c (mono_image_close): Applied patch from
+ vasantha.paulraj@honeywell.com (Vasantha selvi). Fix crash when an
+ assembly is loaded multiple times from data.
+
+ * image.c (mono_image_open): Fix warning.
+
+2004-09-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h reflection.c icall.c: Only call TypeResolve handlers
+ once. Fixes #58334.
+
+ * reflection.c (mono_reflection_create_runtime_class): Initialize
+ klass->nested_classes. Fixes #61224.
+
+Tue Sep 7 14:35:26 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c: sched_yield() on exit, to allow threads to quit.
+
+2004-09-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_unhandled_exception): Remove leftover debug code.
+
+2004-09-07 Atsushi Enomoto <atsushi@ximian.com>
+
+ * appdomain.c, threads.c : don't use GC_CreateThread when with-gc=none
+
+2004-09-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (emit_marshal_array): Really null terminate string arrays.
+
+ * marshal.c (emit_marshal_string): Fix freeing of unicode strings.
+
+2004-09-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (emit_marshal_array): Null terminate string arrays.
+
+ * marshal.c (raise_auto_layout_exception): Fix warning.
+
+ * reflection.c (mono_param_get_objects): Initialize the default value
+ with DBNull.Value, not null. Fixes #62123.
+
+2004-09-01 Miguel de Icaza <miguel@ximian.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Remove FIXME and
+ throw an exception with a cute explanation.
+
+2004-09-06 Dick Porter <dick@ximian.com>
+
+ * process.c (ves_icall_System_Diagnostics_Process_Start_internal):
+ Close the new process's thread handle, as we don't use it. The
+ handle stays around forever otherwise.
+
+2004-09-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (arith_overflow): Fix warning.
+
+ * reflection.c (mono_image_get_methodref_token): Do not emit unmanaged
+ calling conventions in method refs. Fixes #65352.
+
+ * reflection.c: Fix warnings.
+
+2004-09-06 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * icall.c: Add a new icall for Array.Clear
+
+2004-09-06 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * object.c: When allocating an array, we have to throw
+ an overflow exception if any of the lengths are < 0.
+
+2004-09-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.h marshal.c: Free unmanaged memory allocated by managed code
+ properly. Also move implementation of string array marshalling to
+ managed code. Fixes #42316.
+
+2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * assembly.c: provide more information when loading an assembly fails.
+
+2004-09-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * filewatcher.c: don't expect the development fam package to be
+ installed.
+
+2004-09-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c: Make a copy of the signature cookie since it will be
+ freed by the caller.
+
+ * marshal.c (mono_delegate_to_ftnptr): Fix bug in previous patch.
+
+ * marshal.c (mono_delegate_to_ftnptr): Fix memory leaks.
+
+ * metadata.c (mono_metadata_free_marshal_spec): New function to free
+ marshal specs.
+
+ * marshal.c: More refactoring.
+
+ * marshal.c: Refactor the mono_marshal_get_native_wrapper function into
+ smaller functions.
+
+2004-09-03 Lluis Sanchez Gual <lluis@novell.com>
+
+ * object.c: In mono_message_invoke, fill the output parameter array after
+ calling the managed method (it was done before the call). This fixes
+ bug #59299.
+
+2004-09-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_alloc): Return a valid pointer on size 0
+ as well.
+
+2004-09-02 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_instance_size): Don't allow generic type
+ definitions or open generic instances.
+ (mono_class_array_element_size): If we're a value type, call
+ mono_class_instance_size() on the original class.
+
+ * metadata.c (mono_type_size, mono_type_stack_size): Correctly
+ handle generic instances.
+
+ * mono-debug-debugger.c (write_type): Handle generic instances
+ like classes.
+
+2004-09-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_alloc): Raise an OutOfMemory exception if
+ the allocation request fails. Fixes #65089.
+
+ * object.c (mono_runtime_free_method): Do not call mono_free_method.
+
+ * object.c (mono_runtime_free_method): New function to free a dynamic
+ method.
+
+ * marshal.c (mono_delegate_free_ftnptr): New function to free the
+ delegate trampoline.
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Mark managed wrapper
+ with hasthis as dynamic,
+
+ * icall.c (ves_icall_System_Delegate_FreeTrampoline): New icall.
+
+ * domain.c (mono_jit_info_table_remove): New function to remove an
+ entry from the jit info table.
+
+ * class-internals.h (MonoMethod): Add 'dynamic' field.
+
+ * loader.c: Fix warnings.
+
+2004-09-01 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.c, debug-mono-symfile.c: Use mono_loader_lock()
+ instead of mono_debugger_lock() because the latter one is a no-op
+ unless running in the debugger.
+
+2004-09-01 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (class_compute_field_layout): Classes with auto-layout or
+ reference fields are not blittable.
+
+2004-09-01 Dick Porter <dick@ximian.com>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_get_location): Use
+ mono_image_get_filename() to get the assembly location.
+
+ * icall.c:
+ * metadata.h: Fix compile warnings
+
+2004-09-01 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (class_compute_field_layout): System.Object is blittable.
+
+ * marshal.c (mono_marshal_get_native_wrapper): Pass blittable classes
+ as in/out. Fixes #59909.
+
+2004-09-01 Martin Baulig <martin@ximian.com>
+
+ * metadata.h (MONO_TYPE_ISREFERENCE): Call
+ mono_metadata_generic_inst_is_valuetype() if we're a generic
+ instance to check whether our underlying type is a reference type.
+
+2004-09-01 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (mono_type_size): If we're a generic instance, call
+ mono_class_value_size() for value types.
+
+2004-08-31 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c: Implement more custom marshalling functionality. Fixes
+ #64915.
+
+Tue Aug 31 17:55:15 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * mono-debug.c, debug-mono-symfile.c: add some locking love.
+
+2004-08-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * domain-internals.h domain.c: Add a per-domain jump trampoline hash.
+
+ * icall.c (ves_icall_System_Reflection_MethodBase_GetMethodFromHandle): Rename to ...Internal.
+
+ * icall.c: Fix some warnings.
+
+ * threads.c (abort_appdomain_thread): Fix unref errors.
+ (mono_thread_current): Fix THREAD_DEBUG define.
+
+2004-08-29 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.h (MONO_TYPE_ISSTRUCT): Fix warning.
+
+ * icall.c (ves_icall_System_Reflection_MethodBase_GetMethodFromHandle): New icall.
+
+2004-08-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Add support for byref
+ string arrays.
+
+2004-08-28 Martin Baulig <martin@ximian.com>
+
+ * metadata.c
+ (mono_metadata_generic_inst_is_valuetype): New public function.
+
+ * metadata.h (MONO_TYPE_ISSTRUCT): Call
+ mono_metadata_generic_inst_is_valuetype() if we're a generic
+ instance to check whether our underlying type is a valuetype.
+
+2004-08-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_ptr_class_get): Fix name of pointer classes. Fixes
+ #63768.
+
+2004-08-25 Martin Baulig <martin@ximian.com>
+
+ * loader.c (mono_get_method_from_token): Abstract methods can also
+ be generic and thus have type parameters.
+
+ * metadata-internals.h
+ (MonoDynamicImage): Added `GPtrArray *gen_params'.
+
+ * reflection.c (mono_image_get_generic_param_info): Don't create a
+ metadata row, just add an entry to the `gen_params' array.
+ (build_compressed_metadata): Sort the `gen_params' array and then
+ actually create the metadata.
+
+2004-08-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: remove unneeded 'if' around mono_monitor_enter.
+
+2004-08-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * debug-helpers.c: Handle MONO_TYPE_GENERICINST.
+
+2004-08-24 Martin Baulig <martin@ximian.com>
+
+ * class.cs (mono_class_is_subclass_of): Like an interface, a
+ generic instance also derives from System.Object.
+
+2004-08-23 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.c (mono_metadata_parse_type): Alloc pinned, byref and
+ custom modifiers to be in any order. Fixes #61990.
+
+2004-08-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c: Register mono_object_new_fast icall.
+
+ * object.c (mono_class_get_allocation_ftn): Return to calling
+ mono_object_new_fast, since it seems faster to compute the object
+ size in unmanaged code than passing it as a parameter.
+
+ * object.c (mono_class_get_allocation_ftn): Add marshalbyref case.
+
+ * gc-internal.h gc.c: Add mono_gc_out_of_memory () function. Register
+ this function with Boehm as the oom handler, so we don't have to check
+ the result of GC_malloc.
+
+ * object.c: Remove checks for oom.
+
+ * object.h object.c (mono_class_get_allocation_ftn): New function to
+ return the icall which can be used to allocate an instance of a given
+ class.
+
+ * object.c: Handle common allocation requests using GC_gcj_fast_malloc.
+
+ * class-internals.h: Add 'enabled' field.
+
+2004-08-19 Zoltan Varga <vargaz@freemail.hu>
+
+ * domain.c (mono_init_internal): Call MONO_GC_PRE_INIT ().
+
+2004-08-18 Jambunathan K <kjambunathan@novell.com>
+ * tabledefs.h: Corretced PARAM_ATTRIBUTE_OPTIONAL to the right
+ value 0x0010.
+
+2004-08-18 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * appdomain.c: use the Tls function for appdomain too,
+ at Zoltan's request. Actually return in mono_context_get
+
+ * appdomain.c, profiler.c, threads.c: use __thread
+
+2004-08-18 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c threads.c: Call GC_CreateThread on windows.
+
+ * Makefile.am (libmetadata_la_LIBADD): Avoid linking libmonoos into
+ multiple libraries since this don't work on windows.
+
+2004-08-18 Martin Baulig <martin@ximian.com>
+
+ * class-internals.h
+ (MonoMethodNormal): Moved `MonoGenericParam *gen_params' here from
+ MonoMethodHeader.
+
+ * metadata.h (MonoMethodHeader): Moved the `gen_params' field to
+ MonoMethodNormal since we also need it for abstract and interface
+ methods.
+
+ * reflection.c
+ (build_compressed_metadata): Sort the GenericParam table.
+ (mono_image_create_token): Added `gboolean create_methodspec'
+ argument; this is false when generating a MethodImpl token.
+ (reflection_methodbuilder_to_mono_method): Abstract and interface
+ methods may also have generic parameters.
+
+2004-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * appdomain.c: thread local alloc
+
+2004-08-17 Martin Baulig <martin@ximian.com>
+
+ * appdomain.c: Bumped MONO_CORLIB_VERSION to 24.
+
+ * icall.c
+ (ves_icall_System_MonoType_getFullName): Added `gboolean full_name'
+ argument.
+
+ * class.c (mono_type_get_full_name): New public function.
+ (mono_type_get_name): Don't include the type arguments.
+
+2004-08-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * Makefile.am: Build static versions of libmetadata and libmonoruntime
+ for inclusion into the mono executable.
+
+2004-08-16 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (do_mono_metadata_parse_generic_inst): Store the
+ MonoGenericInst, not the MonoType in the `generic_inst_cache'.
+
+2004-08-14 Martin Baulig <martin@ximian.com>
+
+ * class.c (dup_type): Also copy the `byref' field.
+
+2004-08-15 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (create_dynamic_mono_image): Revert the last change
+ since it breaks bootstrap.
+
+2004-08-14 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (create_dynamic_mono_image): Set ref_count to 1.
+
+ * image.c (mono_image_close): Dynamic images are GC_MALLOCed, so do
+ not free them with g_free.
+
+2004-08-11 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_setup_internal_class): Also call
+ mono_class_setup_mono_type() if we already have a `tb->type.type'.
+
+2004-08-09 Sebastien Pouliot <sebastien@ximian.com>
+
+ * appdomain.c: Fix ves_icall_System_AppDomain_getDomainByID when
+ called during default (first) AppDomain creation. Keep track of
+ Evidence when loading assemblies.
+
+Mon Aug 9 14:41:45 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * opcodes.c, opcodes.h: reduce runtime relocations.
+
+Mon Aug 9 13:30:53 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * culture-info.h, locales.c: fixes and chages to sue the new
+ optimized format of the locale data.
+ * culture-info-tables.h: regenerated.
+
+2004-08-06 Geoff Norton <gnorton@customerdna.com>
+
+ * filewatcher.c: If HAVE_KQUEUE return mode 3 to use the new kqueue watcher
+
+2004-08-05 Sebastien Pouliot <sebastien@ximian.com>
+
+ * appdomain.c: Bumped MONO_CORLIB_VERSION to 23. Added new icall
+ ves_icall_System_AppDomain_getDomainByID to get an AppDomain by Id.
+ * domain-internals.h: icall declaration.
+ * icall.c: icall registration.
+ * object-internals.h: New fields in MonoAssembly for CAS.
+
+2004-08-05 Duncan Mak <duncan@ximian.com>
+
+ * verify.c: Renamed CEE_STELEM to CEE_STELEM_ANY and CEE_LDELEM to
+ CEE_LDELEM_ANY.
+
+Thu Aug 5 17:11:44 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fix to deal with object[] arrays in custom ctors
+ (bug #62550).
+
+2004-08-05 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_array_element_size): Added support for
+ generic instances and correctly handle "recursive" types.
+
+2004-08-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c: Fix warnings.
+
+2004-08-04 Martin Baulig <martin@ximian.com>
+
+ * class.c
+ (mono_type_get_name_recurse): Added `gboolean include_arity'
+ argument specifying whether or not we should include the generic
+ arity in the type name.
+ (_mono_type_get_name): New static function.
+ (mono_class_setup_vtable): If we're a generic instance, don't
+ include the generic arity in the names of explicit method
+ implementations.
+
+2004-08-03 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_type_get_name_recurse): Enclose the generic type
+ arguments in `<', '>'.
+
+Tue Aug 3 17:54:17 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: make GC warning messages use the trace API, they are just
+ noise to most of the users.
+
+2004-08-03 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c (read_string): Correctly read the string.
+
+2004-07-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (signature_dup_add_this): Fix bug in previous patch.
+
+ * marshal.c (mono_marshal_get_icall_wrapper): Add support for vararg
+ icalls.
+ (mono_marshal_get_runtime_invoke): Correctly handle valuetype methods.
+
+2004-07-30 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c, mono-debug.c, mono-debug-debugger.c:
+ Reflect latest symbol writer changes.
+
+Fri Jul 30 16:49:05 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: always create an object if null is passed
+ to Invoke() where a valuetype is expected.
+
+2004-07-29 Bernie Solomon <bernard@ugsolutions.com>
+
+ * marshal.c (mono_marshal_init): make managed
+ signatures match native ones better for 64bits.
+
+2004-07-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: hack to build correctly the private bin path on windows.
+ Fixes bug #61991.
+
+2004-07-28 Lluis Sanchez Gual <lluis@novell.com>
+
+ * assembly.c: Load mscorlib from the correct framework directory
+ (mono/<version>/mscorlib.dll).
+ * appdomain.h: Added prototypes for new functions.
+ * internals.h: Added some prototypes.
+ * domain.c: When initializing the runtime, get from the executable and
+ the configuration files the runtime version that the app supports.
+ Added support methods for reading app.exe.config. Added list of versions
+ supported by the JIT. Added two new methods: mono_init_from_assembly,
+ which initializes the runtime and determines the required version from
+ the provided exe file, and mono_init_version, which initializes
+ the runtime using the provided version.
+ * icall.c: Get machine.config from version-specific directory.
+ * reflection.c: When generating an image, embed the version number
+ of the current runtime.
+
+2004-07-28 Dick Porter <dick@ximian.com>
+
+ * socket-io.c
+ (ves_icall_System_Net_Sockets_Socket_RecvFrom_internal): Check
+ returned sockaddr size before creating the remote address object.
+ Patch by Nick Vaughan (dev@6wardlaw.freeserve.co.uk), fixes bug
+ 61608.
+
+2004-07-28 Dick Porter <dick@ximian.com>
+
+ * locales.c (string_invariant_compare_char): Fix invariant char
+ compares between upper and lower cases. Fixes bug 61458.
+
+2004-07-27 Ben Maurer <bmaurer@ximain.com>
+
+ * marshal.c: actually cache stelem.ref wrappers.
+
+Tue Jul 27 16:56:55 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, image.c, loader.c, cil-coff.h: lazily mmap the image
+ sections and remove the mono_cli_rva_map () function.
+
+Tue Jul 27 15:58:19 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * debug-mono-symfile.c: fix one more endianess issue, from a patch
+ by Geoff Norton (<gnorton@customerdna.com>).
+
+Tue Jul 27 15:47:17 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: fix class loads for pointer types (typeof(int) !=
+ typeof(int*)).
+
+2004-07-27 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c (mono_debug_open_mono_symbol_file): Support
+ reading the debugging information from an external ".mdb" file.
+
+2004-07-24 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_image_get_type_info): Only write a class
+ layout entry if we actually have a size or a packing size.
+
+2004-07-21 Bernie Solomon <bernard@ugsolutions.com>
+
+ * reflection.c (type_get_fully_qualified_name):
+ insert cast to get type checking of ?: with non-gcc compilers
+
+2004-07-21 Bernie Solomon <bernard@ugsolutions.com>
+
+ * rand.c: use g_getenv for both lookups of
+ MONO_EGD_SOCKET
+
+2004-07-17 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_bind_generic_method_parameters):
+ Set `gmethod->reflection_info'.
+
+2004-07-17 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_create_from_typedef): Insert the newly
+ created class into the hash table before computing the interfaces
+ since we could be called recursively.
+
+2004-07-16 Ben Maurer <bmaurer@ximain.com>
+
+ * marshal.[ch] (mono_marshal_get_stelemref): a new wrapper
+ function to implement stelem.ref in managed code
+ * class-internals.h, debug-helpers.c: a new wrapper type
+ for the above.
+
+Wed Jul 14 19:26:05 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: allow GC handles to work even when no GC is compiled in.
+ Fix part of bug #61134 (GetAddrOfPinnedObject).
+
+2004-07-13 Peter Williams <peter@newton.cx>
+
+ * process.c (complete_path): Make sure we don't attempt to execute
+ directories.
+
+2004-07-12 Geoff Norton <gnorton@customerdna.com>
+
+ * DateTime.cs: Patch for bug #61112. Our DateTime wasn't roundtripping over timezone
+ boundaries properly. This patch checkes ToLocalTime() to see if we're tripping over a boundary
+ and will add/subtract the hour if needed
+
+2004-07-12 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_field_get_object): If we have
+ `field->generic_info', take the attributes from
+ `field->generic_info->generic_type'.
+
+2004-07-12 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.c (mono_debug_init): Don't take a `MonoDomain *'.
+ This function must be called before initializing the runtime.
+ (mono_debug_init_1): New function; call this after initializing
+ the runtime, but before loading the assembly. It tells the
+ debugger to load corlib and the builtin types.
+
+ * mono-debug-debugger.c: Did some larger changes in the debugging
+ code; support recursive class declarations, make sure we actually
+ add all classes.
+
+2004-07-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * debug-helpers.c: undo my previous patch and fixed the real issue in
+ ../mini/exceptions-x86.c
+
+2004-07-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * debug-helpers.c: prevent SIGSEGV. It happened running xsp on monodoc
+ when no HOME env. variable was set and a NullRef was thrown in a .cctor
+ called from other .cctors.
+
+2004-07-09 Miguel de Icaza <miguel@ximian.com>
+
+ * loader.c: Removed the mono_loader_wine_init hack now that we are
+ doing a managed version of Windows.Forms.
+
+2004-07-09 Ben Maurer <bmaurer@ximian.com>
+
+ * domain.c, gc.c, marshal.c, mono-debug-debugger.c,
+ threadpool.c, threads.c: remove static data from rootset.
+
+2004-07-09 Dick Porter <dick@ximian.com>
+
+ * locales.c (ves_icall_System_String_InternalReplace_Str_Comp):
+ Don't do any more processing if the matched length was 0. It was
+ increasing the size of the string before. Fixes bug 61167.
+
+2004-07-09 Dick Porter <dick@ximian.com>
+
+ * socket-io.h:
+ * socket-io.c
+ (ves_icall_System_Net_Sockets_Socket_GetSocketOption_obj_internal):
+ Add support for SO_PEERCRED if its available.
+
+2004-07-09 Peter Bartok <pbartok@novell.com>
+ * loader.c: winelib.exe.so error message is now only displayed if
+ MONO_DEBUG is set. To help us avoid questions when people are trying
+ out the new Managed.Windows.Forms.
+
+2004-07-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * class-internals.h debug-helpers.c marshal.c: Add new wrapper types
+ for isinst and castclass wrappers.
+
+ * class-internals.h icall.c: Move registration and lookup of JIT icalls
+ to libmetadata from the JIT, so they could be used by the marshalling
+ code and the interpreter.
+
+ * marshal.c: Register marshalling related JIT icalls here instead of
+ in mini.c. Use CEE_MONO_ICALL instead of the family of
+ CEE_MONO_PROC<x> opcodes to call marshalling functions.
+
+ * metadata.h: Remove unneeded marshalling conversions.
+
+ * opcodes.c: Update for new opcodes.
+
+2004-07-08 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.c: Check for `handle->symfile' being non-NULL everywhere.
+ (mono_debug_get_domain_data): Make this function static.
+
+Wed Jul 7 12:32:29 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c, object.h: add nice GC handle API for embedders.
+
+2004-07-06 Ben Maurer <bmaurer@ximian.com>
+
+ * reflection.c: more changes for the new api
+
+ * object.c: When we reflect on a field w/ a constant value, it
+ will not have a memory location, so we must access metadata. Also,
+ allow easier reading of strings so that we can read them from
+ the constant data.
+
+ * class.c (mono_class_layout_fields): no need for literal fields here.
+
+ * class-internals.h: api changes for const fields
+
+ * icall.c (ves_icall_get_enum_info): use new apis for const fields
+
+2004-07-06 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.h: Increment version number to 44.
+
+ * mono-debug.c (mono_debug_add_wrapper): The second argument is
+ now a gpointer, rewrote this whole method.
+
+ * mono-debug-debugger.c (mono_debugger_add_wrapper): New
+ function. Add information about the wrapper in a new "misc table".
+
+ * mono-debug-debugger.h (MonoDebuggerSymbolTable): Added fields
+ for the new misc table.
+
+2004-07-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata-internals.h image.c: Add a cache for helper signatures.
+
+ * monosn.c: Applied patch from "grompf" (grompf@sublimeintervention.com). Fix compilation under OSX.
+
+2004-07-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Handle returning
+ delegates from a delegate. Fixes #61033.
+
+ * marshal.c: Fix managed->native stringbuilder marshalling. Implement
+ marshalling of stringbuilder arrays. Fixes #59900.
+
+2004-07-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c: Add EnumBuilder:setup_enum_type icall.
+
+2004-06-30 Ben Maurer <bmaurer@ximian.com>
+
+ * icall.c: Added a new icall for the property version of
+ OffsetOfStringData.
+
+2004-06-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * class-internals.h (MonoVTable): Make max_interface_id a guint32 so
+ it has a constant size across platforms.
+
+ * marshal.c (mono_delegate_end_invoke): Avoid crash when there is no
+ stack trace.
+
+2004-06-29 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.c (mono_debug_add_method): Protect the whole function
+ in mono_debugger_lock(), not just parts of it.
+
+Fri Jun 25 21:36:26 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: make sure padding bytes in heaps are zeroed.
+
+2004-06-24 David Waite <mass@akuma.org>
+
+ * appdomain.c, class.c, domain.c, file-io.c, gc.c, icall.c,
+ image.c, loader.c, locales.c, marshal.c, metadata.c,
+ mono-debug.[ch], object.c, reflection.c, security.c, socket-io.c,
+ string-icalls.c, threads.c: change to C90-style comments from C99 /
+ C++ -style
+
+2004-06-24 Dick Porter <dick@ximian.com>
+
+ * threads.c
+ (ves_icall_System_Threading_Mutex_CreateMutex_internal): Correctly
+ return createdNew. Fixes bug 60412.
+
+ * threads-types.h:
+ * icall.c: Add createdNew parameter to CreateMutex icall
+
+Thu Jun 24 16:06:41 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c, object-internals.h: save default value in params.
+
+2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: for paths in PrivateBinPath that are absolute, there's
+ no need to build a new path combining that with the application base.
+ Fixes bug #60442.
+
+Wed Jun 23 18:36:58 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fixed minor standard compliance issues.
+
+Wed Jun 23 17:59:29 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fixed issue with encoding some custom attributes
+ (arrays in properties and fields, bug #60411).
+
+2004-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c: fix start address when copying the public key token.
+
+2004-06-23 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_unhandled_exception): Store
+ the `exc' object in a static object to put it into the GC's root set.
+
+Wed Jun 23 15:37:31 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: make mono_reflection_setup_internal_class ()
+ callable a second time to setup a new parent class.
+
+2004-06-23 Dick Porter <dick@ximian.com>
+
+ * threads.c: Check for WAIT_IO_COMPLETION return values.
+
+2004-06-22 Sebastien Pouliot <sebastien@ximian.com>
+
+ * appdomain.c: Removed the g_free on the public key token. Now copy
+ the pk token string into the MonoAssemblyName buffer using g_strlcpy.
+ * assembly.c: Added public key token string value when loading
+ assemblies. Fix bug #60439.
+ * icall.c: Added missing informations (like public key) in
+ GetReferencedAssemblies. Fix #60519.
+ * image.h: Changed definition for public key token from const char*
+ public_tok_value to guchar public_key_token [17];
+ * reflection.c: Updated for changes to public key token.
+
+2004-06-22 Lluis Sanchez Gual
+
+ * icall.c: In ves_icall_InternalExecute, when setting a filed, also look
+ for the field in base classes.
+
+Tue Jun 22 16:48:02 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * mono-debug.h, mono-debug-debugger.h, debug-mono-symfile.h:
+ mark headers as not supported, they are installed only for use by the
+ debugger.
+
+Tue Jun 22 16:32:03 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * *.c, *.h: avoid namespace pollution in public headers.
+
+2004-06-21 Martin Baulig <martin@ximian.com>
+
+ * exception.c (mono_get_exception_security): It's in
+ "System.Security", not in "System".
+
+ * mono-debug-debugger.c (mono_debugger_add_builtin_types): Add all
+ the exception classes.
+
+2004-06-21 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_unhandled_exception):
+ Protect the exception object from being finalized.
+
+2004-06-21 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.h (mono_debugger_unhandled_exception): New
+ public function.
+
+2004-06-21 Sebastien Pouliot <sebastien@ximian.com>
+
+ * reflection.c: Load the assembly in mono_reflection_type_from_name,
+ if it was not loaded before. Fix parts of #60439.
+
+Mon Jun 21 16:04:43 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c, icall.c, object.c, image.c: fix the runtime_invoke ()
+ code that was broken since Ben's change: wrappers are now
+ dependent on the method signature only again.
+
+2004-06-21 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (write_class): Cleaned this up a bit and
+ added interface support.
+
+2004-06-21 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_vtable_get_static_field_data): New public method.
+
+2004-06-20 Atsushi Enomoto <atsushi@ximian.com>
+
+ * filewatcher.c : Windows build fix to be compliant with API changes.
+
+Sat Jun 19 19:04:50 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * class.h, class.c: more accessors.
+ * metadata.h, metadata.c: prepare for hiding MonoType and
+ MonoMethodSignature: people should use the accessors from now on
+ outside of the tree.
+
+Sat Jun 19 17:56:50 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * *.c, *.h: more API cleanups.
+
+2004-06-18 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: Trace loading assemblies.
+ * loader.c: Trace loading native libraries.
+ * mono-config.c: Trace loading config files.
+
+2004-06-18 Dick Porter <dick@ximian.com>
+
+ * locales.c: Tell ICU the lengths of strings, it can cope with
+ embedded \0 then. Fixes bug 59274, and doesn't break bug 55822.
+
+Fri Jun 18 11:59:57 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * image.c: swapped name/filename;
+
+2004-06-18 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (write_class): Write the parent class at
+ the end of the header.
+
+Thu Jun 17 16:50:44 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * *.c, *.h, Makefile.am: more API cleanups and bugfixes.
+
+2004-06-17 Raja R Harinath <rharinath@novell.com>
+
+ * Makefile.am (PLATFORM_LIB): New. Possibly refer to ../os/libmonoos.la.
+ (bundle_obj): New conditional define.
+ (BUILT_SOURCES): Remove.
+ ($(bundle_srcs)): Make parallel-make safe.
+ (libmonoruntime_la_LIBADD): Make unconditional.
+ (libmetadata_la_LIBADD): Make unconditional. Refer to $(bundle_obj).
+ (libmetadata_la_SOURCES): Don't refer to $(bundle_srcs).
+
+2004-06-17 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: It was inconsistent with the latest
+ supp info files.
+
+2004-06-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c (mono_assembly_open): Fix crash when the assembly can't
+ be loaded.
+
+ * threads.c (ves_icall_System_Threading_Thread_Resume): Fix compilation
+ with gcc 2.95.
+
+Wed Jun 16 18:23:45 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * threads.h, icall.c, object.c, threadpool.c, threads-types.h:
+ cleaned up public header threads.h.
+
+Wed Jun 16 18:11:41 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * Makefile.am, *.c, *.h: more API cleanups.
+
+Wed Jun 16 14:33:22 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * Makefile.am: removed monosn from compilation.
+ * appdomain.c, assembly.c, assembly.h, blob.h, class.c,
+ debug-helpers.c, debug-mono-symfile.c, domain.c, icall.c,
+ image.c, image.h, loader.c, marshal.c, metadata-internals.h,
+ metadata.c, metadata.h, mono-config.c, mono-debug-debugger.c,
+ mono-debug.c, object.c, opcodes.c, opcodes.h, pedump.c, process.c,
+ reflection.c, reflection.h, verify.c: more API cleanups and fixes.
+
+2004-06-15 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: Make locales lower case when searching the GAC for
+ assemblies. gacutil will always make locales lowercase when
+ installing so this effectively makes them case insensitive.
+
+2004-06-15 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * locales.c, threadpool.c: use mono_monitor_enter instead of mono_monitor_try_enter.
+ * monitor.c: New method mono_monitor_try_enter_internal, which takes a new
+ parameter which allows to choose whether the wait can be interrupted or
+ not. Also added the method mono_monitor_enter(), which locks the monitor
+ using an infinite wait and without allowing interruption.
+ In the Monitor.Enter and Wait icalls, retry the lock if the wait is
+ interrupted.
+ * object.h: Added new fields in MonoThread. suspend_event holds the event
+ used to susped/resume the thread. synch_lock is the lock object to use for
+ modifying the thread state.
+ * threads.c: Use the new synch_lock object for locking, instead of "this",
+ which can generate deadlocks.
+ Moved thread state change in Thread.Sleep and Thread.Join from managed
+ to unmanaged code. This avoids a deadlock when the thread was suspended
+ just after acquiring the thread lock.
+ In general, use mono_monitor_enter instead of mono_monitor_try_enter.
+ Implemented Thread.Suspend using an event instead of ThreadSuspend,
+ which is not fully implemented in the io-layer.
+ * socket-io.c: Only try IPv6 DNS lookup if IPv4 fails.
+
+Tue Jun 15 18:34:21 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * Makefile.am, monitor.h, object.h, threadpool.c, threadpool.h,
+ threads-types.h: more API cleanups.
+
+Tue Jun 15 16:40:19 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * domain-internals.h, Makefile.am, appdomain.c, appdomain.h,
+ domain.c, gc.c, icall.c, mono-debug.c, object.c, reflection.c,
+ threadpool.c, threads.c: first pass at the exported API cleanup.
+
+Tue Jun 15 15:29:47 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: fix signatures of some VolatileRead and VolatileWrite icalls.
+
+2004-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added internalGetHome.
+
+2004-06-14 Dick Porter <dick@ximian.com>
+
+ * file-io.c (ves_icall_System_IO_MonoIO_FindFirstFile): It was
+ possible to return successfully when '.' or '..' were the only
+ entries in a directory, but were skipped. The MonoIOStat was not
+ filled in in that case. Now return ERROR_NO_MORE_FILES instead.
+ Fixes bug 59574.
+
+Mon Jun 14 00:27:15 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: make binaries run on .Net 1.1 by default.
+
+Sun Jun 13 18:22:40 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * threadpool.c, threadpool.h: use the correct return type in SetMinThreads ().
+
+Sun Jun 13 16:44:39 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: keep track of struct size with explicit layout
+ (bug #59979).
+
+2004-06-12 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c: Comment out a debugging g_message().
+
+Sat Jun 12 14:15:02 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c, reflection.h: do not free custom attrs that are cached.
+ * icall.c: use braces to make code clearer.
+
+2004-06-11 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoInflatedField): New type.
+ (MonoClassField): Replaced `MonoType *generic_type' with
+ `MonoInflatedField *generic_info'.
+
+ * icall.c
+ (ves_icall_MonoField_Mono_GetGenericFieldDefinition): New icall.
+
+2004-06-11 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_image_create_method_token): Correctly encode
+ varargs methods.
+
+2004-06-11 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (mono_metadata_parse_method_signature): When parsing
+ a MethodDef which has VarArgs, also set sentinelpos if we don't
+ have any parameters.
+
+2004-06-11 Martin Baulig <martin@ximian.com>
+
+ * verify.c (mono_method_verify): In CEE_CALL, use
+ mono_method_get_signature() to get the method's signature, unless
+ we're a PInvoke method.
+
+2004-06-10 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: Use <path>/lib/mono/gac for the extra paths
+ lookup. Rename MONO_GAC_PATH to MONO_GAC_PREFIX, this is a more
+ logical name as the supplied path is just a prefix to the gac not
+ the direct path to it.
+
+Thu Jun 10 20:10:16 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: make the token for a created method match
+ the token of the MethodBuilder it was created from
+ (IKVM requires this behaviour now).
+
+Thu Jun 10 16:02:27 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * image.c, image.h, appdomain.c, assembly.c, loader.c, metadata.c,
+ reflection.c, socket-io.c: leak fixes.
+
+Wed Jun 9 18:23:59 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: handle sentinel pos in vararg methods in position different
+ from 0.
+
+2004-06-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * culture-info-tables.h: freshly generated.
+
+2004-06-09 Martin Baulig <martin@ximian.com>
+
+ * loader.c (mono_get_method_constrained): Call `mono_class_init
+ (constrained_class)'.
+
+2004-06-08 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * icall.c (ves_icall_MonoType_GetEvent): Handle events without
+ any methods. Fixes #59629.
+
+2004-06-08 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+2004-06-08 Dick Porter <dick@ximian.com>
+
+ * object.h:
+ * locales.c: Fixed compile warnings, including a real bug in
+ CompareInfo_internal_compare.
+
+2004-06-08 Dick Porter <dick@ximian.com>
+
+ * locales.c
+ (ves_icall_System_Globalization_CompareInfo_internal_index):
+ (ves_icall_System_Globalization_CompareInfo_internal_index_char):
+ Double-check the resuls of usearches, because ICU currently
+ ignores most of the collator settings here. Fixes bug 59720.
+
+2004-06-08 Dick Porter <dick@ximian.com>
+
+ * locales.c
+ (ves_icall_System_Globalization_CompareInfo_internal_index_char):
+ Fix memory leak and segfault-causing typo. No idea how this one
+ lasted so long without being noticed.
+
+2004-06-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_Type_GetEvents_internal): Handle events without
+ any methods. Fixes #59629.
+
+2004-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * assembly.c:
+ (mono_assembly_load): search_loaded -> mono_assembly_loaded (we didn't
+ own the critical section before). Removed dead code (that's done
+ in the preload hook).
+
+ (mono_assembly_load_with_partial_name): call the preload hook.
+
+2004-06-08 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (mono_metadata_signature_alloc): Default
+ `sentinelpos' to -1.
+
+ * reflection.c (mono_image_get_array_token): Likewise.
+
+2004-06-08 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_ModuleBuilder_getMethodToken): New icall.
+
+ * metadata.c (mono_metadata_parse_method_signature): When parsing
+ a MethodDef which has VarArgs, set sentinelpos.
+
+ * metadata.h (MonoMethodSignature): Make `sentinalpos' a signed
+ `gint16' since we're using -1 for non-varargs methods.
+
+ * reflection.c
+ (ReflectionMethodBuilder): Added `MonoArray *opt_types'.
+ (method_encode_signature): Added varargs support.
+ (method_builder_encode_signature): Likewise.
+ (mono_image_get_varargs_method_token): New static method.
+ (mono_image_create_method_token): New public method; this is
+ called via an icall instead of mono_image_create_token() when
+ calling a varargs method.
+
+2004-06-08 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * locales.c: Fixed memory leak in Char.ToLower/ToUpper.
+
+2004-06-08 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h : Reflecting the latest locale-builder that
+ fixed empty array representation ({} to {0}).
+
+2004-06-07 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: It should be <MONO_GAC_PATH>/lib/mono/gac when
+ looking up extra gac paths. This allows MONO_GAC_PATH to act
+ exactly like a prefix.
+
+2004-06-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_type_from_name): Make a copy of the
+ type name before modifying it. Fixes #59405.
+
+2004-06-08 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info.h: added fields for "all datetime patterns".
+ * locales.c: ( ves_icall_System_Globalization_CultureInfo
+ _construct_datetime_format ()): fill xxx_patterns fields.
+ * object.h: added fields for "all datetime patterns" to
+ MonoDateTimeFormatInfo.
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+2004-06-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_Type_GetEvents_internal): Handle the case when
+ the event has no add and remove methods. Fixes #59629.
+
+2004-06-05 Sebastien Pouliot <sebastien@ximian.com>
+
+ * object.c: Fixed possible integer overflow when allocating large
+ strings.
+
+2004-06-05 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+2004-06-05 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+2004-06-03 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * threads.c: Made Thread.Sleep abortable.
+
+2004-06-02 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.h (MONO_DEBUGGER_VERSION): Bumped version to 41.
+
+ * debug-mono-symfile.h: Bumped symbol file version number to 37.
+
+2004-05-31 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_runtime_invoke): Fix CR/LFs.
+
+2004-05-30 Jackson Harper <jackson@ximian.com>
+
+ * reflection.c: Do not hardcode assembly versions or public key
+ tokens anymore. All of this except the corlib section was dead
+ code anyways.
+
+2004-05-29 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_runtime_invoke_array): Automatically create boxed
+ objects for byref valuetypes if needed. Fixes #59300.
+
+ * object.c (mono_method_return_message_restore): Handle
+ MONO_TYPE_OBJECT as well.
+
+2004-05-28 Jackson Harper <jackson@ximian.com>
+
+ * reflection.c: The modified type encoding was causing build
+ problems. Reverted for now.
+
+2004-05-28 Jackson Harper <jackson@ximian.com>
+
+ * reflection.c/h: Take an assembly ref so that we dont create
+ fully qualified names when encoding types in the same assembly as
+ the custom attribute being emitted.
+ * appdomain.c: Increment version number.
+
+2004-05-26 Duncan Mak <duncan@ximian.com>
+
+ * icall.c
+ (ves_icall_System_Reflection_Assembly_GetReferencedAssemblies):
+ Set the full version number (major, minor, build, revision).
+
+2004-05-28 Vladimir Vukicevic <vladimir@pobox.com>
+
+ * marshal.c (emit_struct_conv): increment src/dst after blit
+ (mono_marshal_get_managed_wrapper,
+ mono_marshal_get_native_wrapper): make sure we have marshalling
+ info before marshalling params (info computation affects
+ blittable)
+
+ * class.c (class_compute_field_layout): correctly deal with
+ blittable
+ (mono_class_layout_fields): Don't do gc_aware_layout for AUTO
+ value types (as per what windows dows by default)
+ (mono_class_setup_mono_type): System.ValueType is blittable
+ (mono_ptr_class_get, mono_fnptr_class_get): Pointer classes are
+ blittable
+
+ * marshal.c (mono_marshal_load_type_info): flag types as
+ non-blittable if the native layout doesn't match the managed
+ layout
+
+2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: don't add stuff in the private search path that is
+ above the application base. If application base is not set, there's
+ no private search path.
+
+2004-05-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Add proper support for
+ byref struct arguments in native->managed marshalling.
+
+2004-05-28 Patrik Torstensson <totte@hiddenpeaks.com>
+
+ * marshal.c (mono_marshal_get_runtime_invoke): correctly
+ cache methods using signature (special case for methods
+ that are value type or string class)
+
+ * image.c (mono_image_close): clean up allocated GSList's
+ in runtime_invoke_cache.
+
+2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * mono-config.c: set the correct path for mono_cfg_dir on windows when
+ there's no MONO_CFG_DIR environment variable defined.
+
+2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c: windows version must be >= 0x0500 to include OpenThread.
+
+2004-05-28 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * threadpool.c: Really wait for 500ms after the async call, even if the wait
+ is interrumped.
+ * threads.c: In mono_thread_manage, call OpenThread to ref each handle
+ before waiting for it, and call CloseHandle after the wait to unref it.
+ This will make sure that handles are not disposed too early.
+
+2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c:
+ * appdomain.h:
+ * icall.c: removed
+ ves_icall_System_AppDomainSetup_InitAppDomainSetup as it's not
+ needed now.
+
+ * object.c: se the application_base only for the domain that runs
+ Main. Fixes bug #59216,
+
+2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c:
+ * object.c: only the domain in which Main is run have
+ SetupInformation.ConfigurationFile set, so moved a few lines from
+ appdomain.c to object.c.
+
+2004-05-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: we tried to load [name].(dll|exe), but according
+ to bug #57710, we must also try [culture]/[name].(dll|exe) and
+ [culture]/[name]/[name](dll|exe). This patch fixes the bug.
+ There's a test case attached to bug #58922.
+
+2004-05-27 Dick Porter <dick@ximian.com>
+
+ * icall.c:
+ * file-io.c: Implemented icalls for locking and unlocking regions
+ in a file.
+ (ves_icall_System_IO_MonoIO_FindNextFile): FindNextFile() returns
+ FALSE on error (fixes both compiler warning and real bug.)
+
+2004-05-27 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+ (Added missing ChangeLog entry for 05/26)
+
+2004-05-27 Jackson Harper <jackson@ximian.com>
+
+ * locales.c: Fix some cut and paste errors.
+
+2004-05-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * mono-config.c: set the correct path for config. directory on windows.
+
+2004-05-26 Atsushi Enomoto <atsushi@ximian.com>
+
+ * icall.c : Fixed ves_icall_System_DateTime_GetNow() to return utc
+ on win32.
+
+2004-05-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Free strings returned
+ from pinvoke functions.
+
+ * marshal.c (mono_ftnptr_to_delegate): Implement this.
+
+2004-05-26 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+2004-05-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * profiler.c (simple_allocation): Skip icall wrapper methods. Fixes
+ #59086.
+
+2004-05-26 Sebastien Pouliot <sebastien@ximian.com>
+
+ * appdomain.cs: Bumped MONO_CORLIB_VERSION to 20.
+ * icall.c: Modified icalls for RNG.
+ * rand.c|h: Changed RNG interface to allow thread-safe usage under
+ Windows (CryptoAPI).
+
+2004-05-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * locales.c: Fix build.
+
+2004-05-25 Atsushi Enomoto <atsushi@ximian.com>
+
+ * culture-info-tables.h: reflecting locale-builder updates.
+
+2004-05-25 Jackson Harper <jackson@ximian.com>
+
+ * locales.c: When creating the current culture use the $LANGs
+ specific culture. So DateTimeFormat and NumberFormat entries are created.
+
+2004-05-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * string-icalls.{h,c} icalls.c: Add new icalls for Strcpy which take
+ a char array as parameter.
+
+2004-05-24 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * image.c: In mono_image_open(), always use an absolute path name to
+ look for already loaded images.
+
+2004-05-24 Sebastien Pouliot <sebastien@ximian.com>
+
+ * icall.c: Added define for CSIDL_FLAG_CREATE (0x8000) in case it is
+ missing in the windows build (like older cygwin include files).
+
+2004-05-23 Sebastien Pouliot <sebastien@ximian.com>
+
+ * icall.c: Fixed check for possible integer overflow in Buffer_
+ BlockCopy icall. Replaced comments style // by /* */.
+
+2004-05-22 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_ftnptr_to_delegate): Fix warning.
+
+ * marshal.c (mono_marshal_get_proxy_cancast): Move thread interrupt
+ check after MONO_VTADDR. Fixes pinvoke2.exe.
+
+ * marshal.h marshal.c metadata.h: Add beginnings of support for
+ ftnptr -> delegate marshalling.
+
+2004-05-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * threads.c (ves_icall_System_Threading_Thread_ResetAbort): Fix compilation on gcc-2.95.
+ * threads.c: Fix warnings.
+
+2004-05-20 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * appdomain.c, gc.c: Make use of the new WaitForSingleObjectEx.
+ * icall.c: Registered icalls for Suspend and Resume.
+ * locales.c: Beware, mono_monitor_try_enter can now be interrupted by
+ Thread.Abort.
+ * monitor.c: Use WaitForSingleObjectEx. Added some interruption checkpoints.
+ * mono-debug-debugger.c: Use WaitForSingleObjectEx et al.
+ * process.c: Use WaitForSingleObjectEx.
+ * threadpool.c: Use WaitForSingleObjectEx. Added some interruption
+ checkpoints.
+ * threads.c, threads.h: Make use of new Ex wait methods. Improved
+ implementation of Thread.Abort and Thread.ResetAbort icalls. Added icalls
+ for Suspend and Resume. Added new mono_thread_stop, used for stoping
+ background threads. Added basic support for Abort in Windows.
+ Start new threads using a managed delegate invoke wrapper. This wrapper
+ has an interruption checkpoint that is needed since an interruption
+ can be requested before the thread leaves the unmanaged code that starts
+ the thread.
+ * marshal.c: Added interruption checkpoint after every native call, and
+ also before managed calls for wrappers called from unmanaged code to
+ go into managed code.
+ * object.h: Added new field in MonoThread to keep track of interruption
+ requests.
+
+2004-05-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c: Insert SAVE_LMF and RESTORE_LMF opcodes around native
+ calls.
+
+2004-05-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c:
+ * assembly.c:
+ * gc.c:
+ * locales.c:
+ * mono-config.c:
+ * rand.c: getenv -> g_getenv (windows!)
+
+ * process.c: complete_path is also used on non-windows platforms.
+
+2004-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: new signature for Process_Start.
+
+ * process.[ch]: new signature for Process_Start. If we're on windows
+ and UseShellExecute is false, we have to search for the program by
+ ourselves if we don't get a full path.
+
+2004-05-18 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Fix up custom
+ marshalling and call CleanUpNativeData if needed. Fixes #58646.
+
+2004-05-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: field value changed for Int32 from 'value' to 'm_value'.
+ Fixes bug #58373.
+
+2004-05-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * process.c: use double quotes to quote program name and arguments on
+ windows. Fixes bug #58575.
+
+2004-05-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * file-io.c: don't return "." and ".." when using windows Find*File.
+
+2003-05-17 Patrik Torstensson <totte@hiddenpeaks.com>
+
+ * marshal.c: Don't pass wrappers to message init because method
+ addressed used to lookup metadata. part of remoting[2|3] fix.
+
+2004-05-15 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: Remove user gac and implement MONO_GAC_PATH, this
+ path is essentially the same as MONO_PATH except that it points to
+ GACs instead of lib directories.
+ * loader.h: The user gac is gone so we dont need function to
+ enable/disable it.
+ * mono-config.c: user gac option is now gone.
+
+2004-05-15 Jackson Harper <jackson@ximian.com>
+
+ * culture-info.h: Make defines more consistent, add calendar data
+ to the culture info table.
+ * culture-info-tables.h: Add basic calendar data. Basically
+ everyone gets default gregorian until all the data is
+ updated.
+ * locales.c: Use the new consistent defines. Set calendar data for
+ culture info objects.
+ * object.h: add a field for calendar data to CultureInfo
+
+2004-05-14 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * image.c: image->runtime_invoke_cache is keyed on signatures now.
+ * marshal.c (mono_mb_emit_calli): new helper to emit a CEE_CALLI with
+ a signature.
+ (mono_mb_emit_managed_call, mono_mb_emit_native_call): use the above.
+ (mono_marshal_get_runtime_invoke): The runtime invoke method now takes
+ an extra param that is the pointer of the method to invoke. The IL for
+ the invoke method is no longer specific to the method, but to the
+ signature of the method. Thus, we can share the same code for multiple
+ methods. This reduces the number of methods that have to be compiled.
+
+2004-05-14 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_load_with_partial_name): Fix warning.
+
+ * appdomain.c (MONO_CORLIB_VERSION): Bump corlib version.
+
+ * icall.c: Optimize Buffer.BlockCopy.
+
+2004-05-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * culture-info-tables.h: seems like Spanish and Portuguese cultures had
+ DateTimeFormatInfo.YearMonthPattern like "MMMM' yyyy" (note the single
+ quote). Changed them to "MMMM yyyy".
+
+2004-05-12 Miguel de Icaza <miguel@ximian.com>
+
+ * rand.c
+ (ves_icall_System_Security_Cryptography_RNGCryptoServiceProvider_InternalGetBytes): Always close the file.
+
+2004-05-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h: Updated after changes to managed structures.
+
+ * appdomain.c: Bump corlib version.
+
+2004-05-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am: also add libmonoos to libmetadata. Fixes the build on
+ windows.
+
+2004-05-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am: link to ../os/libmonoos.la on windows.
+
+ * assembly.c:
+ -If MONO_DEBUG, warn about non-existing directories in
+ MONO_PATH.
+ -Added mono_assembly_getrootdir() that replaces MONO_ASSEMBLIES
+ compile time variable.
+ -Removed init_default_path and call mono_set_rootdir from
+ libmonoos.a instead (windows only).
+
+ * assembly.h: declare mono_assembly_getrootdir().
+
+ * domain.c:
+ * icall.c: use mono_assembly_getrootdir() instead of MONO_ASSEMBLIES.
+
+ * loader.c: s/getenv/g_getenv/
+
+2004-05-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.{h,c}: Add support for UnmanagedType.AsAny.
+
+ * marshal.c: Use mono_metadata_signature_{alloc,dup} where appropriate.
+
+ * metadata.h: Add new marshalling conversions.
+
+ * metadata.h metadata.c (mono_metadata_signature_dup): New helper
+ function.
+
+ * reflection.c (mono_reflection_get_type): Lookup the type in all
+ modules of a multi-module assembly. Fixes #58291.
+
+2004-05-11 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * threads.c: Before aborting a background, set the StopRequested
+ state. This avoids throwing the Abort exception.
+ In mono_thread_manage, don't continue with the shutdown until all
+ aborted threads have actually stopped.
+
+2004-05-10 Jackson Harper <jackson@ximian.com>
+
+ * locales.c: Remove the modifier from culture names.
+
+2004-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am: monosn is not installed any more. It has been deprecated
+ in favor of sn.
+
+2004-05-07 Jackson Harper <jackson@ximian.com>
+
+ * locales.c
+ (ves_icall_System_Globalization_CultureInfo_internal_get_cultures):
+ Fix array construction, add bailout if the length is 0.
+
+2004-05-07 Dick Porter <dick@ximian.com>
+
+ * socket-io.c (addrinfo_to_IPHostEntry): Don't crash if the
+ machine doesn't have a DNS entry. Patch by Urs Muff
+ (umuff@quark.com), fixes bug 57928.
+
+2004-05-06 Jackson Harper <jackson@ximian.com>
+
+ * reflection.c: Handle null PublicTokens properly. alloc mem for
+ assembly names culture so we dont crash when freeing it.
+
+2004-05-06 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: Check the usergac when loading with partial names.
+
+2004-05-05 Sebastien Pouliot <sebastien@ximian.com>
+
+ * rand.c|h: Added new icall for (optionally) seeding the PRNG. This
+ does nothing for now (not required for Linux/Windows) but the class
+ library can call it (and a newer or modified runtime could need it).
+ * icall.c: Registred icall.
+
+2004-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * loader.c: prints a message on module loading error we set MONO_DEBUG
+ environment variable.
+
+2004-05-05 Jackson Harper <jackson@ximian.com>
+
+ * appdomain.c: Handle PublicKeyToken=null properly.
+
+2004-05-05 Sebastien Pouliot <sebastien@ximian.com>
+
+ * environment.c|h: Added icall ves_icall_System_Environment_
+ GetOSVersionString to get the current OS version as a string.
+ * icall.c: Registred icall.
+
+2004-05-05 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * object.c: in mono_object_get_virtual_method(), take into account that
+ non-virtual methods don't have a slot in the vtable. Check needed when
+ the object is a proxy.
+
+2004-05-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.h marshal.c icall.c: Applied patch from vladimir@pobox.com
+ (Vladimir Vukicevic). Implement UnsafeAddrOfPinnedArrayElement.
+
+ * object.c (mono_class_compute_gc_descriptor): Fix warning.
+
+ * object.c (mono_runtime_invoke_array): Add an assert so null cannot be
+ passed when a valuetype is expected.
+
+ * object.c (mono_unhandled_exception): Only set the exit code if the
+ exception happens in the main thread. Fixes thread5.exe.
+
+ * appdomain.c (get_info_from_assembly_name): Fix infinite loop on
+ invalid names. Fixes #58047.
+
+2004-05-03 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: This line was committed accidently and is unneeded.
+
+2004-05-03 Jackson Harper <jackson@ximian.com>
+
+ * icall.c: Add new icall for Assembly::LoadWithPartialName
+ * assembly.c/.h: new function that probes the GAC to load partial
+ assembly names by Paolo Molaro.
+
+2004-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: use g_strncasecmp when looking for 'Culture=' et al.
+ * reflection.c: use g_strncasecmp when looking for 'Culture=' et al.
+ (type_get_fully_qualified_name): Added PublicKeyToken when building a
+ full type name.
+
+2004-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: fixed check for 'neutral' culture and removed warning.
+ * reflection.c: fix bug when parsing a full type name and Version is not
+ the last thing in the string.
+
+2004-05-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (get_info_from_assembly_name): Strdup "" to prevent
+ crashes when it is freed.
+
+2004-05-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * assembly.c: print the compat warning to stderr.
+
+2004-05-01 Miguel de Icaza <miguel@ximian.com>
+
+ * assembly.c (mono_assembly_load_references): Add a compatibility
+ hack to run old applications that might be still referencing the
+ 3300-based assemblies, only do this for System.xxx.
+
+2004-05-01 Jackson Harper <jackson@ximian.com>
+
+ * appdomain.c: If the culture is neutral we set it to "".
+
+2004-04-29 Jackson Harper <jackson@ximian.com>
+
+ * locales.c: Add some missing MONO_ARCH_SAVE_REGS'.
+
+2004-04-29 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
+
+ * string-icalls.c: added low overhead function for copying chars
+ * icall.c: added needed icall for the above function
+
+2004-04-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: fix return value of get_global_assembly_cache. Implemented
+ Environment.GetLogicalDrives.
+
+2004-04-28 Bernie Solomon <bernard@ugsolutions.com>
+
+ * rand.c: try and talk to egd or prngd
+ for random bytes if opening devices fail.
+
+2004-04-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_load_type_info): Calculate the minimum
+ alignment for the type using the native alignment of its members
+ instead of using klass->min_align.
+
+ * metadata.c (mono_type_stack_size): Fix size of TYPEDBYREF.
+
+2004-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * file-io.c:
+ * socket-io.c: added check for sys/aio.h.
+
+2004-04-28 Dick Porter <dick@ximian.com>
+
+ * threads.c: Don't abort a thread thats already aborting, when
+ terminating everything.
+
+2004-04-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added 2 new async calls for Socket.
+
+ * socket-io.[ch]: fixed some warnings. Added support for asynchronous
+ IO on *nix systems.
+
+ * threadpool.c: removed unused variable.
+
+2004-04-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c: Handle null properly in PtrToString* icalls. Fixes #57706.
+
+Tue Apr 27 15:55:17 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * locales.c: put back string_invariant_tolower () and
+ string_invariant_toupper ().
+
+2004-04-26 David Waite <mass@akuma.org>
+
+ * file-io.h:
+ * socket-io.h:
+ * threads.h:
+ * unicode.h: remove comma from end of enumeration declarations
+
+2004-04-26 David Waite <mass@akuma.org>
+
+ * debug-mono-symfile.h:
+ * decimal.c:
+ * mono_debug.h:
+ * sysmath.c: Define 64 bit constants as long long types (i.e. 10ULL)
+
+
+2004-04-26 Jackson Harper <jackson@ximian.com>
+
+ * appdomain.c: Increment version number.
+
+2004-04-26 Jackson Harper <jackson@ximian.com>
+
+ * appdomain.c: Set assembly references public token value when
+ PublicKeyToken is specified, not the hash_value. Free public token
+ values when free assembly name data. Previously the public key
+ token was hex decoded, however we are using hex encoded public key
+ tokens, so this is not neccasary.
+ * assembly.c: Lookup assemblies in the gac if their public token
+ value is set. Add function to allow enabling user gac
+ lookups. Specify whether or not the assembly was loaded from the
+ GAC. Compare full assembly names when checking the cache for
+ assemblies (Temporarily disabled see comment in code). Remove
+ mscorlib -> corlib mapping cruft. Add trace-loading. When a user
+ specifies trace-loader they get extra info to stdout on the
+ loading of assemblies.
+ * image.h: Add a field for an assembly references public token
+ value to MonoAssemblyname. Add a field to MonoAssembly to specifiy
+ whether an assembly has been loaded from the GAC.
+ * image.c: Remove a corlib -> mscorlib name mapping.
+ * loader.h: Add function to enable/disable the user gac.
+ * mono-config.c: Check if the usergac is enabled in the config
+ file.
+ * icall.c: New icall to determine whether or not an assembly has
+ been loaded from the GAC. Remove some mscorlib -> corlib mappings.
+ * tabldefs.h: Add constant for assemblyref flag that specifies a
+ full public key is used instead of a public token.
+ * reflection.c: Remove mscorlib -> corlib mappings. Set
+ PublicTokenValue instead of hash value. This value is a hex
+ string so it does not need to be expanded.
+
+2004-04-26 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_initialize): Set
+ `mono_debugger_initialized' before calling mono_debug_lock().
+
+2004-04-42 Robert Shade <rshade@dvsconsulting.com>
+
+ * icall.c: icalls for Char.ToUpper/ToLower are now hooked to
+ InternalToUpper/InternalToLower.
+ * locales.c: (ves_icall_System_{Char,String}_InternalTo{Upper,Lower}_Comp)
+ removed invariant culture shortcut. This is now done in managed code.
+ * locales.c: (string_invariant_toupper/tolower) removed.
+
+2004-04-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added GetSupportsAsync for Socket (same as MonoIO).
+ Added Poll internal call.
+
+ * socket-io.[ch]: _wapi_socket == WSASocket. Added internal
+ call for Poll. Select was too heavy for polling a single socket.
+
+ * threadpool.[ch]: added mono_threadpool_cleanup.
+ * threads.c: use it. Don't use Thread_Abort on windows.
+
+2004-04-23 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_lookup_assembly): New function.
+
+2004-04-23 Sebastien Pouliot <sebastien@ximian.com>
+
+ * icall.c: Registred new icalls for key pair protection and added an
+ icall for Environment.GetFolderPath on Windows.
+ * security.c|h: Added new icalls for key pair protection.
+
+2004-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: don't display the non-supported family warning for known
+ families. Now this is not displayed on windows when checking support
+ for IPv4/IPv6.
+
+2004-04-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * class.c: don't display the layout warning for static fields.
+
+2004-04-21 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * icall.cs: Registered new icalls for Char.ToLower and Char.ToUpper.
+ * locales.c, locales.h: Added new icalls for culture-specific
+ Char.ToLower and Char.ToUpper.
+
+2004-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c: the 2nd argument when aborting a thread is NULL now. Patch
+ by David Waite.
+
+2004-04-20 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_lookup_type): Make a copy
+ of the type name before passing it to mono_reflection_type_from_name().
+
+2004-04-19 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Handle different string
+ encodings here. Fixes #56965.
+
+2004-04-18 Bernie Solomon <bernard@ugsolutions.com>
+
+ * icall.c (ves_icall_System_Text_Encoding_InternalCodePage):
+ fix test on strstr result not that I can see anything that
+ relies on the result.
+
+2004-04-18 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.c (mono_type_to_unmanaged): Handle MONO_NATIVE_FUNC as well.
+ Fixes #57081.
+
+ * marshal.c (mono_marshal_get_string_encoding): New helper function.
+
+ * marshal.c (mono_marshal_get_native_wrapper): Use the new helper
+ function to determine which marshalling to use for strings. Fixes
+ #56965.
+
+ * marshal.c (mono_marshal_string_array_to_unicode): Fix warning.
+
+ * reflection.c (encode_marshal_blob): Add support for LPARRAY.
+
+2004-04-15 Bernie Solomon <bernard@ugsolutions.com>
+
+ * icall.c: #include mono-config.h
+
+2004-04-15 Jackson Harper <jackson@ximian.com>
+
+ * culture-info-tables.h: Fix date formats for en-US culture.
+
+2004-04-15 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * icall.c: Registered icalls for ThreadPool.GetMinThreads and
+ ThreadPool.SetMinThreads.
+ * threadpool.c: Implemented ThreadPool.GetMinThreads and
+ ThreadPool.SetMinThreads.
+
+Thu Apr 15 15:36:40 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * mono-config.c: also load the .config file in the directory
+ where the assembly was found.
+
+Thu Apr 15 14:24:49 CEST 2004 Paolo Molaro <lupus@ximian.com>
+
+ * assembly.c: load per-assembly config files.
+ * icall.c: decrapified code to get the config dir and moved to
+ mono-config.c.
+ * image.h, loader.c, loader.h, mono-config.c, mono-config.h: allow
+ per-assembly config files. When doing a dll map lookup give precedence
+ to the per-assembly data.
+
+2004-04-14 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.h (MonoDebuggerEvent): Removed
+ MONO_DEBUGGER_EVENT_TYPE_ADDED and MONO_DEBUGGER_EVENT_METHOD_ADDED
+ and added MONO_DEBUGGER_EVENT_RELOAD_SYMTABS.
+
+ * mono-debugger-debugger.c: While the debugger is locked, remember
+ whether the symbol tables have changes and send one single
+ MONO_DEBUGGER_EVENT_RELOAD_SYMTABS when releasing the lock.
+
+2004-04-14 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.h: Add STRARRAY_STRWLPARRAY marshalling convention.
+
+ * marshal.h marshal.c (mono_marshal_string_array_to_unicode): New
+ function.
+
+ * marshal.c (mono_marshal_get_native_wrapper): Take CharSet into
+ account when marshalling string arrays. Fixes #56965.
+
+2004-04-13 Sebastien Pouliot <sebastien@ximian.com>
+
+ * icall.c: Add new icalls mapping for security.
+ * security.c|h: Add internal calls for WindowsIdentity,
+ WindowsImpersonationContext and WindowsPrincipal.
+
+2004-04-13 Gert Driesen (drieseng@users.sourceforge.net)
+
+ * class.c: Added comment to ensure the System.MonoDummy class
+ is removed when no longer necessary
+
+2004-04-13 Miguel de Icaza <miguel@ximian.com>
+
+ * appdomain.c: Pass arguments to the bootstraping exceptions to
+ minimize JITed methods at boot
+
+ * metadata.c (mono_exception_from_name_two_strings): Allow for the
+ second string to be null.
+
+ * icall.c (ves_icall_System_Text_Encoding_InternalCodePage):
+ Change the protocol to minimize the JIT methods at startup. Now
+ it Returns the internal codepage, if the value of "int_code_page"
+ is 1 at entry, and we can not compute a suitable code page
+ number, returns the code page as a string.
+
+2004-04-13 Jackson Harper <jackson@ximian.com>
+
+ * culture-info-tables.h: Fix number of decimal digits for all
+ english locales.
+
+2004-04-13 Jackson Harper <jackson@ximian.com>
+
+ * icall.c: Clairfy out of sync error message. It is not always
+ your corlib that is out of sync.
+
+2004-04-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_Type_GetPropertiesByName): Avoid duplicate
+ properties when only the set accessor is overriden. Fixes #55874.
+
+2004-04-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c (mono_assembly_load_references): Make this thread safe.
+ Fixes #56327.
+
+2004-04-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * monosn.c: Add missing initialization calls.
+
+2004-04-08 Bernie Solomon <bernard@ugsolutions.com>
+
+ * locales.c:
+ ves_icall_System_Globalization_CultureInfo_construct_number_format
+ Fix g_assert so it compiles on fussier compilers re int/ptr
+ mismatch
+
+2004-04-08 Dick Porter <dick@ximian.com>
+
+ * socket-io.h:
+ * socket-io.c: Don't set SO_REUSEADDR on windows. Fixes bug
+ 53992. Also rearrange the code so that the internal calls return
+ an error value and exceptions are thrown from managed code.
+
+ * icall.c: Add type info to the socket icalls.
+
+2004-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.h: synchronize MonoCompareInfo with CompareInfo class. Someone
+ owes me a beer.
+
+2004-04-07 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_from_generic_parameter): Don't default
+ `klass->parent' to `mono_defaults.object_type'.
+
+2004-04-07 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_initialize_generic_parameter): Set
+ `param->pklass->reflection_info'.
+
+2004-04-07 Jackson Harper <jackson@ximian.com>
+
+ * culture-info-tables.h: Fix date separator symbol.
+
+2004-04-07 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_GetGenericArguments): Moved this icall
+ from System.Type to System.MonoType.
+
+2004-04-07 Martin Baulig <martin@ximian.com>
+
+ * reflection.h
+ (MonoReflectionGenericParam): Added `has_reference_type' and
+ `has_value_type' fields.
+
+ * reflection.c (mono_image_get_generic_param_info): Encode the
+ correct flags if we have the `class' or `struct' constraint.
+
+2004-04-07 Martin Baulig <martin@ximian.com>
+
+ * reflection.h
+ (MonoReflectionGenericParam): Added `MonoBoolean has_ctor_constraint'.
+
+2004-04-07 Jackson Harper <jackson@ximian.com>
+
+ * appdomain.c: Revert extra patches, just wanted to bump the
+ version number.
+
+2004-04-07 Jackson Harper <jackson@ximian.com>
+
+ * Makefile.am: Add culture-info private headers.
+ * icall.c: Add new icalls for contructing locales.
+ * locales.c: Construct CultureInfo objects from lookup tables instead of using ICU.
+ * locales.h: Declare new culture info construction methods.
+ * object.h: Add new fields used to avoid the CultureMap to
+ MonoCultureInfo.
+ * culture-info.h: Definition of structs used in the culture info
+ tables.
+ * culture-info-tables.h: Autogenerated tables that contain culture
+ info data. This file was generated with the locale-builder tool.
+ * appdomain.c: Incement corlib version number.
+
+2004-04-07 Bernie Solomon <bernard@ugsolutions.com>
+
+ * appdomain.c: (mono_runtime_init) move mono_thread_init
+ to before mono_object_new calls so critical sections
+ are initialized before use.
+
+2004-04-07 Martin Baulig <martin@ximian.com>
+
+ * icall.c
+ (ves_icall_TypeBuilder_define_generic_parameter): Removed.
+ (ves_icall_MethodBuilder_define_generic_parameter): Removed.
+ (ves_icall_MonoGenericParam_initialize): Removed.
+ (monogenericparam_icalls): Removed.
+ (generictypeparambuilder_icalls): Added new table for
+ System.Reflection.Emit.GenericTypeParameterBuilder.
+
+ * reflection.c
+ (mono_reflection_define_generic_parameter): Removed.
+ (mono_reflection_initialize_generic_parameter): This is now called
+ from GenericTypeParameterBuilder's .ctor.
+
+2004-04-06 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_init): Don't inflate nested classes in a
+ generic instance.
+ (mono_type_get_name_recurse): Include the generic arguments for
+ generic instances and generic type declarations.
+ (inflate_generic_type): Correctly inflate MONO_TYPE_SZARRAY.
+ (_mono_class_get_instantiation_name): Removed.
+ (mono_class_create_generic): Always use `gklass->name' as our name.
+
+ * class.h (MonoGenericInst): Removed `nested_in', and `nested'.
+
+ * icall.c (ves_icall_MonoGenericInst_GetDeclaringType): Removed.
+ (ves_icall_MonoGenericInst_GetNestedTypes): Removed.
+ (ves_icall_MonoMethod_GetGenericParameters): Renamed to
+ ves_icall_MonoMethod_GetGenericArguments() and correctly handle
+ closed generic methods here.
+
+ * reflection.c
+ (mono_reflection_generic_inst_get_nested_types): Removed.
+ (inflate_mono_method): Copy the generic parameters from the
+ MonoMethodHeader into out MonoGenericMethod.
+
+2004-04-06 Martin Baulig <martin@ximian.com>
+
+ * row-indexes.h
+ (MONO_GENERICPARAM_DEPRECATED_CONSTRAINT): Removed.
+
+ * metadata.c (GenericParamSchema): Removed "DeprecatedConstraint".
+
+ * reflection.c (build_compressed_metadata): If we have any entries
+ in the GenericParam, MethodSpec or GenericParamConstraint tables,
+ set the header version to 1.1.
+
+2004-04-06 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_init): If we're a generic instance,
+ initialize our nested classes, too.
+ (_mono_class_get_instantiation_name): Deal with the new `!%d'
+ suffix.
+
+2004-04-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * process.c: quote the argument passed to the shell on windows.
+
+2004-04-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * threads.c (mono_alloc_special_static_data): Allow this to be
+ called during startup.
+
+2004-04-02 Martin Baulig <martin@ximian.com>
+
+ * icall.c
+ (ves_icall_MonoGenericInst_GetDeclaringType): New icall.
+
+2004-04-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c: Fix build.
+
+2004-04-02 Sebastien Pouliot <sebastien@ximian.com>
+
+ * Makefile.am: Added security.c|h.
+ * icall.c: Added icall for get_UserName;
+ * security.c: New file for security related icalls. Added function
+ get_UserName for System.Environment (fix #56144).
+ * security.h: New. Header file for security.c
+
+2004-04-02 Dick Porter <dick@ximian.com>
+
+ * icall.c: Deleted the icalls that were obsoleted some time ago
+ by the ICU string code, and which were mixed into the icall
+ rearranging. Fixes bug 55969.
+
+ * string-icalls.h:
+ * string-icalls.c: Deleted the code that those icalls reference.
+
+2004-04-01 Martin Baulig <martin@ximian.com>
+
+ * metadata.h (MONO_CLASS_IS_INTERFACE): New macro.
+
+ * class.c (mono_class_from_generic_parameter): Don't set
+ TYPE_ATTRIBUTE_INTERFACE.
+ (my_mono_class_from_generic_parameter): Likewise.
+
+2004-04-01 Martin Baulig <martin@ximian.com>
+
+ * loader.c (find_method): Added an optional `MonoClass *ic'
+ argument to search in a specific interface.
+ (mono_get_method_constrained): New public function.
+
+2004-04-01 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_image_get_generic_field_token): Use the
+ `handleref' cache here.
+
+2004-04-01 Martin Baulig <martin@ximian.com>
+
+ * reflection.h (MonoDynamicImage): Added `GHashTable *typespec'.
+
+ * reflection.c (create_generic_typespec): Use the `typespec' hash
+ here, not the `typeref' one.
+
+2004-04-01 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_inflate_generic_type): Moved the
+ functionality into a new static inflate_generic_type() which
+ returns NULL if it didn't do anything. Only increment the
+ `mono_stats.inflated_type_count' if we actually inflated
+ something.
+ (mono_class_get_full): Check the classes type to see whether we
+ need to inflate it; also inflate MONO_TYPE_(M)VAR.
+
+2004-04-01 Jackson Harper <jackson@ximian.com>
+
+ * reflection.c: Set culture for assembly references.
+
+2004-04-01 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * reflection.[ch], icall.[ch], Fix support for pinning variables.
+
+2004-04-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * assembly.c:
+ (do_mono_assembly_open): the critical section also covers
+ mono_image_open and mono_image_open_from_data. Fixes bug #56327.
+
+2004-03-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c:
+ (mono_manage_threads): abort the background threads when finishing.
+ Fixes bug #47232.
+
+2004-03-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * gc.c: only close the done_event handle if there was no timeout.
+ C-ified comments.
+
+2004-03-30 Martin Baulig <martin@ximian.com>
+
+ * icall.c (icall_entries): It's called "System.Activator", not
+ "System.Activation".
+
+2004-03-30 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_ldtoken): Added `MonoGenericContext *' argument.
+ (mono_class_create_from_typespec): Likewise.
+
+2004-03-30 Martin Baulig <martin@ximian.com>
+
+ * reflection.h (MonoReflectionGenericParam): Use MonoBoolean for
+ `has_ctor_constraint' and `initialized'.
+
+2004-03-30 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (encode_new_constraint): New static function to add
+ the constructor constraint attribute to a type parameter.
+ (encode_constraints): Call encode_new_constraint() if necessary.
+
+ * reflection.h
+ (MonoReflectionGenericParam): Added `guint32 has_ctor_constraint'.
+
+ * row-indexes.h: Added CUSTOM_ATTR_GENERICPAR.
+
+2004-03-29 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * reflection.c, icall.c: add support for pinning variables.
+
+2004-03-29 Bernie Solomon <bernard@ugsolutions.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper):
+ init bool local with zero rather than null.
+
+2004-03-29 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_MonoMethod_get_HasGenericParameters): Show
+ the "official" behavior here.
+ (ves_icall_MonoMethod_get_Mono_IsInflatedMethod): New interncall.
+
+2004-03-29 Martin Baulig <martin@ximian.com>
+
+ * icall.c: Reflect latest API changes.
+
+2004-03-29 Martin Baulig <martin@ximian.com>
+
+ * loader.c (mono_get_method_from_token): Also call
+ mono_metadata_load_generic_params () for abstract and interface
+ methods; replace the type arguments in the method signature with
+ the ones which are loaded from the metadata.
+
+2004-03-29 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * monitor.c: In mono_monitor_exit(), don't throw an exception if the owner
+ of the lock is not the current thread. MS.NET don't do it, in spite of
+ what the documentation says. See bug #56157.
+
+2004-03-28 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_init): Don't call init_properties() and
+ init_events() for generic instances; set `prop->parent' when
+ inflating properties.
+
+ * reflection.c (mono_generic_inst_get_object): Call
+ `mono_class_init (ginst->klass)'.
+ (mono_type_get_object): Only create a MonoGenericInst if your
+ generic type is a TypeBuilder.
+ (do_mono_reflection_bind_generic_parameters): Only set
+ `ginst->is_dynamic' if our generic type is a TypeBuilder.
+
+2004-03-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (unload_thread_main): Do not clear proxy_vtable_hash.
+ Fixes #56091.
+
+2004-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added Kill_internal icall.
+ * process.[ch]: added Kill_internal icall.
+
+2004-03-25 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoStats): Added `generic_instance_count',
+ `inflated_method_count', `inflated_type_count' and
+ `generics_metadata_size'.
+
+2004-03-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c: no warnings now.
+
+2004-03-25 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_get_full): New public function; does a
+ mono_class_get(), but also takes a `MonoGenericContext *'.
+
+ * loader.c (mono_field_from_memberref): Renamed to
+ `field_from_memberref', made static and added `MonoGenericContext *'
+ argument.
+ (mono_field_from_token): Added `MonoGenericInst *' argument.
+ (method_from_memberef): Likewise.
+ (mono_get_method_from_token): Likewise.
+ (mono_get_method_full): New public function; does a
+ mono_get_method(), but also takes a `MonoGenericContext *'.
+
+ * verify.c (mono_method_verify): Get the method's generic context
+ and pass it to mono_field_from_token(), mono_get_method_full() and
+ mono_class_get_full().
+
+2004-03-25 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_inflate_generic_type): Take a
+ `MonoGenericContext *' instead of a `MonoGenericInst *' and a
+ `MonoGenericMethod *'.
+
+2004-03-25 Martin Baulig <martin@ximian.com>
+
+ * loader.h (MonoMethodInflated): Store the MonoGenericContext
+ instead of the MonoGenericMethod here.
+
+2004-03-25 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericInst): Added `MonoGenericContext *context';
+ each time we create a new MonoGenericInst, we also create a new
+ context which points back to us.
+
+ * class.c (inflate_method): Use `ginst->context' instead of
+ creating a new context.
+
+ * loader.c (method_from_memberref): Use
+ `klass->generic_inst->context' instead of creating a new context.
+
+2004-03-25 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericContext): New struct.
+ (MonoGenericMethod): Removed `generic_inst'.
+
+ * class.c (mono_class_inflate_generic_method): Take a
+ `MonoGenericContext *' instead of a `MonoGenericMethod *'.
+
+2004-03-25 Martin Baulig <martin@ximian.com>
+
+ * loader.h (MonoMethodInflated): New typedef.
+
+ * metadata.h (MonoMethodSignature): Removed `gen_method', make
+ `generic_param_count' consume just 30 bits, added `is_inflated'
+ and `has_type_parameters' flags (one bit each).
+
+ * class.c (mono_class_inflate_generic_method): Create a
+ MonoMethodInflated instead of a MonoMethodNormal and set
+ `is_inflated' in the method signature.
+
+ * class.h (MonoGenericMethod): Removed `generic_method'.
+
+2004-03-25 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * image.c: Make sure the name of a MonoImage is always an absolute path.
+ This fixes bug #54415.
+
+2004-03-24 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_setup_vtable): If we're a generic instance,
+ use our generic type's vtable size.
+
+2004-03-24 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalUnload): Add
+ MONO_NO_UNLOAD env var as a temporary workaround for unloading
+ problems.
+
+2004-03-23 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoDynamicGenericInst): Added `int count_events' and
+ `MonoEvent *events'.
+
+ * icall.c (ves_icall_MonoGenericInst_GetEvents): New interncall.
+ (typebuilder_icalls): Added "get_event_info"; calls
+ mono_reflection_event_builder_get_event_info().
+
+ * reflection.c (mono_reflection_generic_inst_initialize): Added
+ `MonoArray *events'.
+ (mono_reflection_event_builder_get_event_info): New function.
+
+2004-03-23 Bernie Solomon <bernard@ugsolutions.com>
+
+ * object.h: add mono_type_initialization_init
+
+ * object.c (mono_runtime_class_init):
+ implement class constructor synchronization rules
+ to cope with threading issues.
+ add mono_type_initialization_init
+
+ * appdomain.c (mono_runtime_init): call
+ mono_type_initialization_init
+
+ * class.h: removing initializing field from MonoVTable
+
+2004-03-23 Martin Baulig <martin@ximian.com>
+
+ * class.c (my_mono_class_from_generic_parameter): Use
+ `param->name' if it's not NULL.
+
+2004-03-22 Ben Maurer <bmaurer@users.sourceforge.net>
+
+ * class.c: do not insert non-virtual methods in the vtable.
+ * icall.c, mono-debug-debugger.c, object.c: if method->slot == -1,
+ that means the method is non-virtual. This never would have
+ happened before.
+
+2004-03-22 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * profiler.c: Added lock for accessing coverage_hash.
+
+2004-03-22 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_MethodInfo_get_IsGenericMethod): Use
+ `method->method->signature->generic_param_count != 0' to make it
+ work for interface methods.
+
+2004-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * process.c: quote the string passed to the shell using g_shell_quote.
+
+2004-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c:
+ (mono_threads_manage): don't remove the finalizer thread and self
+ from the threads hash table so that mono_thread_manage can be called
+ more than once.
+
+2004-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * process.c: quote the arguments when UseShellExecute is true. Fixes
+ bug #55790.
+
+2004-03-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c: set mono_thread_detach as a cleanup routine for every
+ thread. This way it's always executed upon thread termination, either
+ aborted or finished normally. No more xsp hangs!
+
+2004-03-17 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericInst): Replaced the `GList *nested' with an
+ `int count_nested' and a `MonoType **nested'.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Moved
+ most of the functionality into a new static
+ do_mono_reflection_bind_generic_parameters() and don't take a
+ `MonoType *nested_in' argument any more. Don't compute nested
+ types here.
+ (mono_reflection_generic_inst_get_nested_types): New public method
+ to get nested types.
+
+ * class.c (mono_class_create_generic): Set `klass->nested_in' if
+ we're a nested class.
+
+ * icall.c (ves_icall_MonoGenericInst_GetNestedTypes): Call
+ mono_reflection_generic_inst_get_nested_types() to compute the
+ nested types.
+
+2004-03-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * threads.c (ves_icall_System_Threading_Thread_Abort): Add a more
+ descriptive error message under windows.
+
+2004-03-17 Martin Baulig <martin@ximian.com>
+
+ * class.c (dup_type): Added `const MonoType *original' argument;
+ copy the attrs from the original type.
+
+2004-03-17 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (do_mono_metadata_parse_generic_inst): Use the
+ `m->generic_inst_cache' here.
+
+2004-03-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * exception.h exception.c: Add stack_overflow_exception.
+
+2004-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c:
+ (overlapped_callback): call SetEvent *after* invoking the callback.
+ No need to call CloseHandle.
+
+2004-03-16 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_image_get_fieldref_token): Take a
+ `MonoReflectionField *' instead of a `MonoClassField *' and a
+ `MonoClass *'; store the `MonoReflectionField *' in the hash.
+
+2004-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: don't add the culture to the filename we're looking for
+ if it's neutral or NULL. Fixes bug #53788. Removed redundant memset.
+
+2004-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * locales.c: don't ignore symbols when doing case insensitive compares.
+ Thanks Dick! Fixes bug #54046.
+
+ * threads.c: surround 'threads' usage with enter/leave in
+ mono_thread_manage.
+
+2004-03-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Char arrays are
+ implicitly marshalled as [Out]. Fixes #55450.
+
+ (mono_marshal_get_runtime_invoke): Zero out the result if there is
+ an exception.
+
+2004-03-16 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_from_generic_parameter): Use the actual
+ parameter name.
+
+2004-03-16 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (type_get_signature_size): New static function.
+ Compues the size of the type in a method signature.
+ (method_get_signature_size): New static function; calls
+ type_get_signature_size() to compute the actual size of the
+ method's signature.
+ (method_encode_signature): Use method_get_signature_size() to get
+ the signature's size rather than using `nparams * 10'.
+
+2004-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * file-io.h: define here WapiOverlapped on windows. I don't want the
+ regular OVERLAPPED one.
+
+ * file-io.c:
+ * threadpool.c: somehow, BindIoCompletionCallback is not found.
+ Disabling AIO on windows.
+
+2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * marshal.c: Marshal.SizeOf throws an exception for AutoLayout. Fixes
+ bug #55385.
+
+2004-03-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: upgraded corlib version.
+
+ * file-io.c: implemented new icalls: GetSupportsAIO, BeginRead
+ and BeginWrite. Allow opening files for asynchrnous operations.
+
+ * file-io.h: new struct that maps FileStreamAsyncResult.
+ * icall.c: added new icalls.
+ * process.[ch]: support setting child process environment variables
+ and use the SHELL or COMSPEC when UseShellExecute is true.
+
+ * threadpool.[ch]: fixed warnings, moved ThreadPool icalls here. The
+ callback for async. IO is here and also BindHandle.
+
+ * threads.[ch]: added mono_thread_detach and removed ThreadPool icalls
+ from here.
+
+2004-03-14 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (create_custom_attr): Allow len == 0.
+
+ * object.c (mono_class_compute_gc_descriptor): Fix descriptor
+ computation on big-endian machines.
+
+2004-03-13 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericInst): Added `int count_ifaces'.
+
+ * iclass.c (ves_icall_MonoGenericInst_GetInterfaces): Use
+ `ginst->count_ifaces' instead `klass->interface_count' since we
+ may get called before the vtable is created.
+
+ * loader.c (mono_method_get_param_names): If we're a generic
+ instance, return and don't initialize the class.
+
+ * reflection.c (mono_reflection_setup_generic_class): Don't call
+ ensure_runtime_vtable().
+ (mono_reflection_bind_generic_parameters): Set
+ `ginst->count_ifaces'.
+
+2004-03-11 Jackson Harper <jackson@ximian.com>
+
+ * icall.c:
+ * unicode.c:
+ * unicode.h: Remove unused System.Char icalls.
+
+2004-03-11 Miguel de Icaza <miguel@ximian.com>
+
+ * loader.c (mono_lookup_pinvoke_call): Call the Windows.Forms init
+ code when we P/Invoke the first library in Windows.Forms, instead
+ of when we first open the assembly.
+
+ * assembly.c: Drop the lookup from here.
+
+2004-03-10 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_get_custom_attrs): Use the correct
+ class for properties, fields and events. Finally fixes #54945.
+
+2004-03-10 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (mono_metadata_class_equal): New static function;
+ checks whether two generic instances or two generic parameters are
+ equal.
+ (mono_metadata_type_equal): Use mono_metadata_class_equal() to
+ compare classes.
+
+2004-03-10 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericMethod): Added `gpointer reflection_info'.
+
+ * reflection.c (inflate_mono_method): Added `MonoObject *obj'
+ argument and write it into the `reflection_info' field.
+
+ * icall.c
+ (ves_icall_MethodBase_GetGenericMethodDefinition): New interncall.
+ (ves_icall_MethodBase_get_HasGenericParameters): New interncall.
+
+2004-03-09 Jackson Harper <jackson@ximian.com>
+
+ * char-conversions.h: use 8 bits for numeric data its all we need
+ * icall.c: numeric data is only 8 bits now.
+
+2004-03-09 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoProperty, MonoEvent): Added `MonoClass *parent'.
+
+ * class.c (init_properties, init_events): Initialize the new
+ `parent' field.
+
+ * reflection.c (typebuilder_setup_properties): Likewise.
+ (typebuilder_setup_events): Likewise.
+
+ * reflection.h (MonoEventInfo): Replaced `parent with
+ `declaring_type' and `reflected_type'.
+
+ * icall.c (ves_icall_get_property_info): Distinguish between
+ declaring and reflected type.
+ (ves_icall_get_event_info): Likewise.
+
+2004-03-09 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_GetTypeCode): Added MONO_TYPE_GENERICINST.
+ (ves_icall_Type_GetField): Correctly set field->klass.
+
+2004-03-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.h: Fix warning.
+
+2004-03-08 Miguel de Icaza <miguel@ximian.com>
+
+ * loader.c, loader.h (mono_loader_wine_init): Loads the Wine/Lib
+ library routine if present. Notice that it will still continue
+ executing even if its missing, for those working on the Gtk#
+ edition of Windows.Forms.
+
+ * assembly.c (do_mono_assembly_open): If loading the
+ System.Windows.Forms call mono_loader_wini_init.
+
+2004-03-04 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * class.h: Added MonoRemoteClass struct.
+ * domain.c: Changed hash function for proxy_vtable_hash. It now uses a
+ function for MonoStrings.
+ * icall.c: In GetTransparentProxy, assign a MonoRemoteClass to the proxy.
+ Added internal call for getting the proxy type.
+ * marshal.c: Get the type of transparent proxies from its remote_class.
+ Added methods that generate the IL for type checks and casts:
+ mono_marshal_get_isinst, mono_marshal_get_castclass,
+ mono_marshal_get_proxy_cancast.
+ * marshal.h: Declaration of the previous new methods.
+ * object.c: Added new moethods for creating and updating MonoRemoteClass
+ instances: mono_remote_class, mono_upgrade_remote_class,
+ * object.h: Added MonoRemoteClass reference in MonoTransparentProxy.
+ * verify.c: FIx transparent_proxy_fields layout.
+ * appdomain.c: Bump corlib version.
+
+2004-03-04 Jackson Harper <jackson@ximian.com>
+
+ * icall.c: Add icall to access char conversion tables.
+ * char-conversions.h: Character conversion tables.
+ * Makefile.am: Add char-conversions.h private header file.
+
+2004-03-04 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (unload_thread_main): Increase unloading timeout to
+ 10 sec as a temporary workaround for Nant problems.
+
+2004-02-29 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c: Add checks for GC_enable and GC_disable.
+
+ * string-icalls.c locales.c: Applied patch from Jaroslaw Kowalski
+ (jaak@zd.com.pl). Fix memory corruption in String.Replace
+ (bug #54988).
+
+2004-02-27 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Take a
+ `MonoReflectionType *' instead of a `MonoType *'.
+
+2004-02-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c (run_finalize): Avoid finalizing the object representing the
+ finalizer thread.
+ (finalizer_thread): Fix warning.
+
+2004-02-25 Martin Baulig <martin@ximian.com>
+
+ * class.c (_mono_class_get_instantiation_name): Added `int offset'
+ argument for nested types.
+ (mono_class_create_generic): Added support for nested generictypes.
+
+ * class.h (MonoGenericInst): Added `MonoType *nested_in' and
+ `GList *nested'.
+
+ * icall.c (ves_icall_MonoGenericInst_GetNestedTypes): New icall.
+
+ * reflection.c (method_encode_signature): Increase the minimum
+ value of `size' from 10 to 11.
+ (mono_reflection_bind_generic_parameters): Take `int type_argc'
+ and `MonoType **types' arguments instead of the `MonoArray
+ *types'; added `MonoType *nested_in'. Recursively instantiate
+ nested classes.
+
+2004-02-23 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.h (MonoDomain): Add preallocated null_reference_ex and
+ stack_overflow_ex members which are used by exception handling.
+
+ * appdomain.c (mono_runtime_init): Initialize the new members.
+
+ * gc.c (mono_gc_enable): New helper function.
+ * gc.c (mono_gc_disable): New helper function.
+
+2004-02-23 Martin Baulig <martin@ximian.com>
+
+ * icall.c: I must have been really stupid - make it actually work
+ this time ;-)
+
+2004-02-23 Martin Baulig <martin@ximian.com>
+
+ * loader.c (method_from_memberref): Only inflate the method if
+ it's in another klass.
+
+2004-02-23 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_inflate_generic_type): Fixed two bugs.
+ (mono_class_init): If we're a generic instance and an interface,
+ compute `class->interface_id'; also create `class->interfaces'
+ here and inflate them.
+
+ * metadata.c (do_mono_metadata_parse_generic_inst): Compute
+ `ginst->is_open'.
+ (mono_type_stack_size): Fix for MONO_TYPE_GENERICINST.
+
+ * reflection.c (mono_image_create_token): Allow "MonoGenericInst".
+
+2004-02-15 Miguel de Icaza <miguel@ximian.com>
+
+ * reflection.c (method_encode_code): Improved the error message
+ generated by the exception.
+
+2004-02-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: Martin did not do what he said in the ChangeLog for
+ 2004-02-18, but put back the changes for properties and events.
+ Commenting those changes out again and adding comment to bug #54518.
+
+ * process.c: removed warning.
+
+2004-02-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (emit_struct_conv): Print an error message instead of
+ asserting when a type does not have the StructLayout attribute.
+
+2004-02-20 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_type_get_object): Also use the cache for
+ generic instances.
+ (mono_reflection_bind_generic_parameters): Always compute
+ `ginst->ifaces'.
+
+2004-02-20 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericMethod): Removed `klass'.
+
+ * class.c (mono_class_inflate_generic_method): Added `MonoClass
+ *klass' argument.
+
+2004-02-20 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (method_encode_methodspec): Actually use the
+ uninflated signature for the memberref.
+
+2004-02-20 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericMethod): Removed `declaring'.
+
+ * class.c (mono_class_inflate_generic_method): If `gmethod->klass'
+ is NULL, compute it here.
+
+2004-02-20 Martin Baulig <martin@ximian.com>
+
+ * image.h (MonoImage): Added `GHashTable *generic_inst_cache'.
+
+ * metadata.c (mono_metadata_generic_inst_hash): New method.
+ (mono_metadata_generic_inst_equal): New method.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Use the
+ `klass->image->generic_inst_cache' cache to avoid creating
+ duplicate MonoGenericInst's.
+
+ * class.c (mono_class_inflate_generic_type): Use the cache.
+
+Thu Feb 19 19:39:09 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: fixed gc descriptor calculation for embedded valuetypes.
+
+2004-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added Socket.WSAIoctl icall.
+
+ * socket-io.[ch]: implemented
+ ves_icall_System_Net_Sockets_Socket_WSAIoctl.
+
+2004-02-19 Atsushi Enomoto <atsushi@ximian.com>
+
+ * icall.c: removed IsDigit, IsSeparator, IsWhiteSpace from char_icalls.
+
+2004-02-18 Urs C Muff <umuff@quark.com>
+
+ * debug-mono-symfile.c, mono-debug-debugger.c, mono-debug.c: Make
+ this work on PPC and other big-endian architectures.
+
+ * debug-mono-symfile.h: Prepended the names of all the `guint32'
+ fields with an underscore to make sure they're only accessed by
+ the read32() macro.
+
+2004-02-18 Martin Baulig <martin@ximian.com>
+
+ * icall.c: Put the klass->refclass changes back for methods and
+ fields, but not for properties and events. We're currently not
+ distinguishing between DeclaringType and ReflectedType for
+ properties and events, that's what caused the regressions.
+
+2004-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c:
+ (mono_async_result_new): the handle can be NULL.
+
+ * threadpool.c: Use an event instead of a semaphore, don't initialize
+ it until needed. This saves quite a few semaphores from being created
+ when using the threadpool.
+
+2004-02-18 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_string_is_interned_lookup): Fix interning of long
+ strings. Fixes #54473.
+
+ * domain.c (ldstr_equal): Optimize if the two strings are equal.
+
+ * icall.c: Revert the klass->refclass changes since they introduce
+ regressions (bug #54518).
+
+2004-02-18 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_init): If we're a generic instance and don't
+ come from a TypeBuilder, inflate our members here.
+ (mono_class_from_generic): Removed; just use `ginst->klass' instead.
+ (mono_class_create_generic): New public method.
+ (mono_class_initialize_generic): Removed.
+ (get_instantiation_name): Renamed to
+ _mono_class_get_instantiation_name() and made it public.
+
+2004-02-18 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_inflate_generic_type): Clear the new
+ instance's `nginst->klass' when inflating a generic instance.
+ (mono_class_is_subclass_of): Added (basic) support for generic
+ instances.
+
+Tue Feb 17 21:40:16 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h, domain.c: use a MonoCodeManager instead of a
+ MonoMempool to hold compiled native code.
+
+2004-02-17 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoDynamicGenericInst): Added `count_properties' and
+ `properties'.
+
+ * reflection.c (mono_reflection_generic_inst_initialize): Added
+ `MonoArray *properties' argument.
+
+ * icall.c (ves_icall_MonoGenericInst_GetProperties): New interncall.
+
+2004-02-17 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_GetFields): Renamed to
+ ves_icall_Type_GetFields_internal() and added a
+ `MonoReflectionType *rtype' argument; pass it to
+ mono_field_get_object() to set the field's "reflected" type.
+ (ves_icall_Type_GetConstructors): Likewise.
+ (ves_icall_Type_GetEvents): Likewise.
+ (ves_icall_Type_GetMethodsByName): Added `MonoReflectionType *rtype'
+ argument; pass it to mono_method_get_object() to set the method's
+ "reflected" type.
+
+2004-02-17 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoDynamicGenericInst): New type.
+ (MonoGenericInst): Added `dynamic_info' and `is_dynamic' fields.
+
+ * icall.c (ves_icall_MonoGenericInst_GetMethods): New interncall.
+ (ves_icall_MonoGenericInst_GetConstructors): New interncall.
+ (ves_icall_MonoGenericInst_GetFields): New interncall.
+
+ * class.c (mono_class_from_generic): Don't call
+ mono_class_initialize_generic() if this is a dynamic instance;
+ ie. it's being created from a TypeBuilder.
+ Use MONO_TYPE_GENERICINST for `class->this_arg.type' and
+ `class->byval_arg.type'.
+
+ * reflection.c (mono_reflection_inflate_method_or_ctor): Renamed
+ to `inflate_method' and made static.
+ (mono_reflection_inflate_field): Removed.
+ (mono_reflection_generic_inst_initialize): New public method.
+
+ * reflection.h (MonoReflectionGenericInst): Removed `methods',
+ `ctors' and `fields'; added `initialized'.
+
+2004-02-14 Zoltan Varga <vargaz@freemail.hu>
+
+ * debug-helpers.c (mono_method_full_name): Fix output for empty
+ namespaces.
+
+2004-02-12 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoClassField): Added `MonoType *generic_type'.
+
+ * reflection.c (mono_image_get_fieldref_token): Added support for
+ instantiated generic types.
+ (field_encode_inflated_field): Removed.
+ (mono_image_get_inflated_field_token): Removed.
+ (mono_reflection_inflate_field): Return a `MonoReflectionField *'.
+
+ * reflection.h (MonoReflectionInflatedField): Removed.
+
+2004-02-12 Martin Baulig <martin@ximian.com>
+
+ * metadata.h (MonoMethodHeader, MonoMethodSignature): Moved the
+ `gen_method' field from MonoMethodHeader to MonoMethodSignature.
+
+ * reflection.c (mono_image_get_methodspec_token): Take a
+ `MonoMethod *' instead of a `MonoReflectionInflatedMethod *'.
+ (mono_image_create_token): Check whether we have a
+ `method->signature->gen_method' and call
+ mono_image_get_methodspec_token() if appropriate.
+ (inflated_method_get_object): Removed.
+ (mono_reflection_bind_generic_method_parameters): Return a
+ `MonoReflectionMethod *', not a `MonoReflectionInflatedMethod *'.
+ (mono_reflection_inflate_method_or_ctor): Likewise.
+
+ * reflection.h (MonoReflectionInflatedMethod): Removed.
+
+2004-02-12 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Implement proper support
+ for custom valuetype marshalling.
+
+ * icall.c (icall_entries): Diagnostic -> Diagnostics. Fixes #54261.
+
+2004-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: fixed WSAGetLastError_internal name.
+
+2004-02-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * threads.c (mono_thread_attach): Allow this to be called multiple
+ times for a thread.
+
+ * threads.c (build_wait_tids): Do not wait for ourselves.
+
+ * threads.c (mono_thread_pop_appdomain_ref): Avoid crash if the
+ appdomain list is empty.
+
+ * marshal.c (mono_marshal_get_native_wrapper): Do not free the
+ memory returned by mono_string_builder_to_utf16, since it points into
+ managed memory. Thanks to Bernie Solomon for noticing this.
+
+ * icall.c: Add AppDomainSetup icalls.
+
+ * reflection.h (MonoReflectionMethodAux): Add 'param_cattr' field.
+
+ * reflection.c (mono_custom_attrs_from_param): Add support for dynamic
+ types.
+
+ * reflection.c (reflection_methodbuilder_to_mono_method): Save
+ custom attributes to the method_aux struct. Also fix array indexes etc.
+
+ * loader.c (mono_method_get_param_names): Make dynamic case work again.
+
+Tue Feb 10 17:03:04 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c, loader.c: icall cleanup: we save quite a bit of memory
+ (both static and runtime) and reduce startup time.
+
+2004-02-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Throw an exception on
+ AsAny marshalling conversion instead of crashing.
+
+ * marshal.c: Fix warnings.
+
+2004-02-09 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericMethod): Added `MonoMethod *declaring'.
+
+ * reflection.h (MonoReflectionInflatedMethod): Removed the
+ `declaring' field, it's now in the unmanaged MonoGenericMethod.
+
+ * reflection.c (method_encode_methodspec): Removed the `method'
+ argument; we get it from `gmethod->declaring'.
+ (inflated_method_get_object): Removed the `declaring' argument.
+
+2004-02-09 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericMethod): New type.
+ (MonoGenericInst): Remove `mtype_argc', `mtype_argv' and
+ `generic_method'.
+
+ * metadata.h (MonoMethodHeader): Replaced the `geninst' field with
+ a `MonoGenericMethod *gen_method' one.
+
+ * class.c (mono_class_inflate_generic_type): Take an additional
+ `MonoGenericMethod * argument. This is only non-NULL if we're
+ inflating types for a generic method.
+ (mono_class_inflate_generic_signature): Renamed to
+ inflate_generic_signature() and made static; take a
+ `MonoGenericMethod *' argument instead of a `MonoGenericInst *'.
+ (inflate_generic_header): Take a `MonoGenericMethod *' argument
+ instead of a `MonoGenericInst *' one.
+ (mono_class_inflate_generic_method): Likewise.
+
+ * reflection.c (encode_generic_method_sig): Take a
+ `MonoGenericMethod *' argument instead of a `MonoGenericInst *'.
+ (method_encode_methodspec): Likewise.
+ (inflated_method_get_object): Likewise.
+
+ * reflection.h (MonoReflectionGenericInst): Replaced the `ginst'
+ field with a `MonoGenericMethod *gmethod' one.
+
+2004-02-08 Bernie Solomon <bernard@ugsolutions.com>
+
+ * class.h (mono_class_has_parent): add parens to expansion
+ so you can ! this.
+
+2004-02-08 Martin Baulig <martin@ximian.com>
+
+ * image.h (MonoImage): Removed `generics_cache'.
+
+ * class.c (mono_class_from_generic): Take a `MonoGenericInst *'
+ instead of a `MonoType *' argument; removed the `inflate_methods'
+ argument. Don't inflate methods here.
+
+ * loader.c (find_method): If it's a generic instance, call
+ mono_class_init() on the `sclass->generic_inst->generic_type'.
+
+ * metadata.c (mono_type_size): Make this work on uninitialized
+ generic instances; call it on the `ginst->generic_type's class.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Call
+ mono_class_from_generic() to create the `ginst->klass'.
+
+2004-02-08 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoClass): Changed type of `generic_inst' from
+ `MonoType *' to `MonoGenericInst *'.
+
+2004-02-08 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_BindGenericParameters): Just call
+ mono_type_get_object(), this is now creating a `MonoGenericInst'
+ for MONO_TYPE_GENERICINST.
+ (ves_icall_MonoGenericInst_GetParentType): Likewise.
+ (ves_icall_MonoGenericInst_GetInterfaces): Likewise.
+
+ * reflection.c (mono_type_get_object): Return a `MonoGenericInst'
+ instead instead of a `MonoType' for MONO_TYPE_GENERICINST.
+ (inflated_method_get_object): Added `MonoClass *refclass' argument.
+ (mono_reflection_inflate_method_or_ctor): Correctly set declaring
+ and reflected type.
+
+ * reflection.h (MonoReflectionInflatedMethod): Removed
+ `declaring_type' and `reflected_type'.
+
+2004-02-08 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericInst): Added `MonoType *parent' and
+ `MonoType **ifaces'.
+
+ * reflection.h (MonoReflectionGenericInst): Removed `klass',
+ `parent' and `interfaces'.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Take a
+ `MonoType *' argument and return a `MonoType *'.
+
+ * icall.c
+ (ves_icall_MonoGenericInst_GetParentType): New interncall.
+ (ves_icall_MonoGenericInst_GetInterfaces): Likewise.
+
+2004-02-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Add support for custom
+ valuetype marshalling.
+
+2004-02-06 Martin Baulig <martin@ximian.com>
+
+ * class.c
+ (mono_class_from_generic_parameter): Added TYPE_ATTRIBUTE_PUBLIC.
+ (my_mono_class_from_generic_parameter): Likewise.
+
+2004-02-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * debug-mono-symfile.c debug-mono-symfile.h mono-debug.c: Read the
+ contents of the symbol files lazily.
+
+ * object.h (MonoThread): Add 'name' and 'name_len' fields.
+
+ * threads.h threads.c icall.c: New icalls for getting and setting the
+ threads name.
+
+2004-02-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalPushDomainRefByID):
+ Raise an exception when the domain is not found.
+
+2004-02-03 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_image_get_methodspec_token): Use the
+ uninflated signature; fixes gen-33.
+
+2004-02-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c threads.c: Make the finalizer thread a normal managed thread so
+ the finalizer code can use thread functionality.
+
+ * gc.c (ves_icall_System_GC_WaitForPendingFinalizers): Fix check for
+ the finalizer thread.
+
+ * threads.c: Make some functions more robust.
+
+ * loader.c (mono_lookup_pinvoke_call): Another attempt at fixing #22532.
+
+ * metadata.h: Add new marshalling conventions.
+
+ * marshal.c (mono_marshal_get_native_wrapper): Add support for unicode
+ stringbuilder marshalling. Fixes #53700.
+
+ * reflection.h (MonoReflectionTypeBuilder): Add 'permissions' field.
+
+ * reflection.c (mono_image_get_type_info): Save declarative security
+ info.
+
+ * reflection.c (mono_image_get_field_info): Handle uninitialized
+ unmanaged fields as well.
+
+ * appdomain.c: Bump corlib version.
+
+2004-02-01 Martin Baulig <martin@ximian.com>
+
+ * loader.c (method_from_methodspec): Use `ginst->mtype_argc/v' for
+ method type arguments.
+
+2004-01-30 Duncan Mak <duncan@ximian.com>
+
+ * marshal.h: Add prototype for
+ "ves_icall_System_Runtime_InteropServices_Marshal_AllocCoTaskMem"
+ and
+ "ves_icall_System_Runtime_InteropServices_Marshal_FreeCoTaskMem" to
+ fix the build.
+
+2004-01-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (ves_icall_System_Runtime_InteropServices_Marshal_AllocCoTaskMem): New icall.
+ (ves_icall_System_Runtime_InteropServices_Marshal_FreeCoTaskMem): New icall.
+
+2004-01-29 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Add support for
+ custom marshalling of valuetypes.
+
+ * marshal.c: Fix some warnings.
+
+2004-01-29 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericInst): Added `mtype_argc' and `mtype_argv'
+ for generic method parameters.
+
+ * reflection.c (method_encode_methodspec): Write the uninflated
+ signature into the methodspec table.
+ (mono_reflection_inflate_method_or_ctor): Ensure `res->declaring'
+ is always the uninflated method.
+ (reflection_methodbuilder_to_mono_method): Copy the generic
+ parameters from the MethodBuilder into `header->gen_params'.
+
+2004-01-29 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_class_from_generic_parameter): Fix warning.
+
+2004-01-27 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_from_generic_parameter): Don't create
+ `klass->methods' here.
+
+2004-01-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.c (mono_lookup_pinvoke_call): Disable trimming of .dll
+ extension since it does not work with libraries named lib<FOO>.dll.so.
+
+2004-01-25 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_inflate_generic_type): Added support for
+ MONO_TYPE_GENERICINST.
+
+ * reflection.c (mono_reflection_inflate_method_or_ctor): Also
+ inflate methods on open constructed types.
+
+2004-01-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c: fire ProcessExit event in the root AppDomain after running
+ Main. Fixes bug #53299.
+
+Fri Jan 23 21:27:40 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * socket-io.c: include the new socket-wrappers.h header.
+ Use the wrappers instead of the unix socket functions to make the code
+ more clear.
+
+2004-01-23 Zoltan Varga <vargaz@freemail.hu>
+
+ * profiler.c (merge_methods): Fix merging of profile info. Fixes #53010.
+
+ * loader.c (mono_lookup_pinvoke_call): Strip .dll from library names.
+ Fixes #22532.
+
+2004-01-22 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_image_create_pefile): Handle the case when the
+ entry point is not a MethodBuilder.
+
+ * reflection.h (MonoReflectionAssemblyBuilder): Change 'entry_point'
+ field to ReflectionMethod since it is not allways a builder.
+
+ * reflection.c (type_get_fully_qualified_name): New helper function to
+ return the fully qualified name of a type.
+
+ * reflection.c (encode_marshal_blob): Always emit the fully qualified
+ type name for custom marshallers.
+
+ * reflection.c (mono_marshal_spec_from_builder): Ditto.
+
+ * class.c (mono_class_setup_vtable): If a parent class already
+ implements an interface, use the implementing methods from that class.
+ Fixes #53148.
+
+2004-01-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: just return instead of ExitThread to allow for thread
+ clean up earlier.
+
+2004-01-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Module_Close): Prevent assertion
+ when closing resource modules.
+
+ * reflection.c (mono_image_create_pefile): Handle the case when the
+ entry point is not a MethodBuilder.
+
+ * reflection.h (MonoReflectionAssemblyBuilder): Change 'entry_point'
+ field to ReflectionMethod since it is not allways a builder.
+
+2004-01-20 Bernie Solomon <bernard@ugsolutions.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper):
+ mono_marshal_alloc takes native int so CONV_I
+ the arg for 64bits.
+
+2004-01-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (fixup_cattrs): New function to fixup the methoddef
+ tokens in the cattr table. Fixes #53108.
+
+2004-01-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * loader.c: don't trim ".dll" before looking up in the config file.
+ Don't leak orig_scope. Reopened bug #22532 in the meanwhile.
+
+2004-01-19 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetManifestResourceInternal):
+ Return the module which contains the resource as well.
+ (ves_icall_System_Reflection_Module_Close): New icall.
+
+ * appdomain.c: Bump corlib version number.
+
+ * image.c (mono_image_addref): New public function.
+
+ * assembly.c: Call mono_image_addref.
+
+ * reflection.c (mono_module_get_object): Increase reference count of
+ the image.
+
+ * loader.c (mono_lookup_pinvoke_call): Strip .dll from library names.
+ Fixes #22532.
+
+ * exception.h exception.c loader.h loader.c icall.c marshal.h marshal.c:
+ Applied patch from Bernie Solomon <bernard@ugsolutions.com>. Throw
+ proper exceptions on DllImport problems.
+
+Mon Jan 19 17:50:27 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, metadata.c: eliminate CSIZE macro.
+
+2004-01-19 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * icall.c: Added ves_icall_type_IsInstanceOf internal call.
+ * object.h: Added async_callback field in MonoAsyncResult.
+ * marshal.c: In mono_delegate_begin_invoke, set the value of async_callback.
+ * verify.c: Added async_callback in MonoAsyncResult layout.
+
+2004-01-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_get_custom_attrs): Add support
+ for Modules.
+
+2004-01-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_string_builder_to_utf8): Fix stringbuilder
+ marshalling.
+ (mono_marshal_method_from_wrapper): Add null pointer check.
+
+2004-01-16 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h: Set version number to 36 and reflect
+ latest symbol writer changes.
+
+2004-01-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_bounded_array_class_get): Set 'bounded' to FALSE for
+ multi-dimensional arrays.
+ (mono_class_is_assignable_from): Check vectors<->one dim. arrays.
+ (mono_class_from_mono_type): Use bounded_array_class_get.
+
+ * class.c (mono_bounded_array_class_get): New function which takes
+ a 'bounded' bool argument to distinguish vectors from one dimensional
+ arrays.
+
+ * icall.c (ves_icall_System_Array_CreateInstanceImpl): Call
+ bounded_array_class_get if the array has bounds.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_InternalGetType):
+ Search modules loaded using AssemblyBuilder:AddModule as well.
+
+2004-01-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: increased corlib version.
+ * filewatcher.c: removed g_print.
+ * icall.c:
+ (get_property_info): only allocate what is actually requested.
+ (ves_icall_Type_GetInterfaces): free the bitset in case of early error.
+
+2004-01-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am: added filewatcher.[ch]
+ * filewatcher.[ch]: FileSystemWatcher runtime support.
+ * icall.c: added new FSW icalls.
+
+Tue Jan 13 20:03:17 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * string-icalls.c: fix stringbuilder regression as suggested by
+ Iain McCoy <iain@mccoy.id.au>.
+
+2004-01-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * process.c (process_read_stringtable_block): Recognize '007f' as
+ a language neutral stringtable block.
+
+2004-01-12 Patrik Torstensson
+
+ * object.h (MonoStringBuilder) : Changed layout to support our
+ new stringbuilder class.
+ * marshal.c: Change marshalling to support the new layout of
+ string builder.
+ * appdomain.c: increased version number because new layout of
+ string builder.
+
+2004-01-12 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (ves_icall_System_AppDomain_LoadAssembly): Receive the
+ assembly name as an string instead of an AssemblyName, since it is
+ easier to extract info from it.
+
+ * appdomain.c (mono_domain_assembly_preload): Look for assemblies in
+ the culture subdirectories too. Fixes #52231.
+
+2004-01-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: renamed ves_icall_Type_GetMethods to GetMethodsByName.
+ It takes 2 new parameters with an optional name for the method to look
+ for and case ignoring info.
+
+ * threadpool.c: removed unused variable.
+
+2004-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: renamed ves_icall_Type_GetProperties to GetPropertiesByName.
+ It takes 2 new parameters with an optional name for the property to look
+ for and case ignoring info.
+ Fixes bug #52753.
+
+2004-01-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c: Applied patch from Benjamin Jemlich (pcgod@gmx.net).
+ Fix #52451.
+
+2004-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c:
+ * assembly.c: escape the uri before passing it to g_filename_from_uri.
+ Fixes bug #52630.
+
+2004-01-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c: Add support for more than one unmanaged resource.
+
+ * icall.c (ves_icall_get_enum_info): Store the value of the enum fields
+ in field->def_value, as done in all other cases.
+
+ * reflection.c (mono_reflection_get_custom_attrs): Add support for
+ TypeBuilders.
+
+ * reflection.c (mono_reflection_create_runtime_class): Remove
+ errorneous assignment to klass->element_class, since it is already
+ done in mono_reflection_setup_internal_class.
+
+2004-01-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * gc.c: added missing LeaveCriticalSection.
+ * icall.c: indented a couple of lines.
+ * threadpool.c: remove dangling LeaveCriticalSection. Don't wait forever
+ if we call EndInvoke inside a callback. Fixes bug #52601.
+
+2004-01-07 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.h
+ (MonoDebuggerIOLayer): Added `GetCurrentThreadID'.
+
+2004-01-06 Miguel de Icaza <miguel@ximian.com>
+
+ * appdomain.c: Use messages in NotImplementedException.
+
+ * exception.c (mono_get_exception_not_implemented): Now this takes
+ a message argument.
+
+ * marshal.c (emit_str_to_ptr_conv): g_warning and throw an
+ exception instead of g_asserting an aborting when something is not
+ implemented.
+
+ Add some inline docs.
+
+2004-01-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h: Update after changes to object layout.
+
+ * reflection.c: Implement saving of unmanaged aka win32 resources.
+
+ * appdomain.c: Bump version number.
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalSetDomainByID):
+ Handle missing domains gracefully.
+
+2004-01-05 Atsushi Enomoto <atsushi@ximian.com>
+
+ * file-io.c : On Windows, there are much more invalid_path_chars.
+
+Fri Jan 2 13:35:48 CET 2004 Paolo Molaro <lupus@ximian.com>
+
+ * class.h, object.c: prepare for GetType () speedup.
+
+2003-12-24 Atsushi Enomoto <atsushi@ximian.com>
+
+ * profiler.c: workaround for --profile null reference exception on
+ cygwin. Patch by Patrik Torstensson.
+
+2003-12-22 Bernie Solomon <bernard@ugsolutions.com>
+
+ * marshal.c: (ves_icall_System_Runtime_InteropServices_Marshal_Read/WriteXXX)
+ make work for unaligned access.
+
+Mon Dec 22 18:37:02 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: small cleanup (class->fields [i] -> field).
+ * image.c: check address of metadata is valid.
+
+2003-12-22 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.h assembly.c (mono_assembly_loaded): New public function to
+ search the list of loaded assemblies.
+
+ * reflection.c (mono_reflection_type_from_name): Use
+ mono_assembly_loaded instead of mono_image_loaded.
+
+ * reflection.c: Fix warnings.
+
+2003-12-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.h (MonoImage): Add a new 'dynamic' field to denote that the image
+ is dynamic. This is needed since an assembly can contain both dynamic and
+ non-dynamic images.
+
+ * class.c loader.c metadata.c object.c: Use image->dynamic instead of
+ assembly->dynamic.
+
+ * icall.c reflection.c: Add new AssemblyBuilder:AddModule icall.
+
+ * reflection.h (MonoReflectionAssemblyBuilder): Add 'loaded_modules' field
+ to store modules loaded using AddModule.
+
+ * reflection.c (mono_image_fill_file_table): Generalize this so it works
+ on Modules.
+
+ * reflection.c (mono_image_fill_export_table_from_class): New helper function.
+
+ * reflection.c (mono_image_fill_export_table_from_module): New function to
+ fill out the EXPORTEDTYPES table from a module.
+
+ * reflection.c (mono_image_emit_manifest): Refactor manifest creation code
+ into a separate function. Also handle loaded non-dynamic modules.
+
+ * reflection.c (mono_image_basic_init): Fix memory allocation.
+
+ * appdomain.c (MONO_CORLIB_VERSION): Bump corlib version.
+
+ * assembly.c (mono_assembly_load_references): Make this public.
+
+2003-12-19 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_initialize_generic): Made this static, take
+ a `MonoGenericInst *' instead of a `MonoClass *'.
+ (mono_class_from_generic): Call mono_class_initialize_generic()
+ unless we're already initialized or being called from
+ do_mono_metadata_parse_generic_inst().
+
+ * class.h (MonoGenericInst): Added `initialized' and
+ `init_pending' flags.
+
+ * metadata.c (do_mono_metadata_parse_generic_inst): Don't call
+ `mono_class_init (gklass)' or mono_class_initialize_generic()
+ here; set `generic_inst->init_pending' while parsing the
+ `type_argv'.
+
+2003-12-19 Bernie Solomon <bernard@ugsolutions.com>
+
+ * locales.c: include string.h for memxxx prototypes
+
+2003-12-19 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_MonoField_GetValueInternal): Do not run the class
+ constructor when accessing literal fields.
+
+2003-12-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (MONO_CORLIB_VERSION): Bump corlib version.
+
+ * reflection.c (assembly_add_resource_manifest): New function to fill
+ the MANIFESTRESOURCE table.
+
+ * reflection.c (mono_image_build_metadata): Emit MANIFESTRESOURCE table.
+
+ * reflection.h: Update to changes in class layout.
+
+ * icall.c (ves_icall_System_Environment_get_HasShutdownStarted):
+ Reenable call to mono_runtime_is_shutting_down ().
+
+ * appdomain.c (mono_runtime_is_shutting_down): New helper function to
+ determine if the runtime is shutting down.
+
+2003-12-16 Jackson Harper <jackson@ximian.com>
+
+ * icall.c: comment out call to mono_runtime_is_shutting_down to
+ fix build.
+
+2003-12-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetManifestResourceInternal): Add support for loading resources from modules.
+ (ves_icall_System_Environment_get_HasShutdownStarted): New icall.
+
+2003-12-15 Bernie Solomon <bernard@ugsolutions.com>
+
+ * reflection.c: move definition of swap_with_size
+ to before its first call
+
+2003-12-15 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (mono_runtime_is_shutting_down): New public function.
+
+ * icall.c (ves_icall_System_Environment_get_HasShutdownStarted): New
+ icall.
+
+ * object.c: Fix warnings.
+
+ * icall.c (ves_icall_Type_Get...): Only consider inherited static
+ members if FlattenHierarchy is set.
+
+ * reflection.c (mono_image_add_decl_security): New function to emit
+ declarative security.
+
+ * reflection.h reflection.c: Add support for declarative security.
+
+ * appdomain.c (MONO_CORLIB_VERSION): Bump version number.
+
+2003-12-13 Zoltan Varga <vargaz@freemail.hu>
+
+ appdomain.c (MONO_CORLIB_VERSION): Bump version number.
+
+ * appdomain.c verify.c: Moved corlib version checking into its own
+ function in appdomain.c since it needs to create vtables etc.
+
+2003-12-13 Patrik Torstensson <p@rxc.se>
+
+ * marshal.c (mono_remoting_wrapper): Fix bug 48015, using TP as this
+ instead of unwrapped server.
+
+2003-12-12 Zoltan Varga <vargaz@freemail.hu>
+
+ * verify.c (check_corlib): Fix field index.
+
+2003-12-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c: Applied patch from Todd Berman (tbermann@gentoo.org). New
+ GetGacPath icall.
+
+2003-12-10 Bernie Solomon <bernard@ugsolutions.com>
+
+ * process.c: (ves_icall_System_Diagnostics_Process_GetWorkingSet_internal
+ ves_icall_System_Diagnostics_Process_SetWorkingSet_internal):
+ cope with sizeof(size_t) != sizeof(guint32).
+
+2003-12-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * process.[ch]: the 'pid' field in MonoProcInfo stores GetLastError
+ in case of failure.
+
+2003-12-10 Mark Crichton <crichton@gimp.org>
+
+ * icall.c: removed the GetNonZeroBytes. We now handle this case
+ in managed code.
+
+ * rand.c, rand.h: Same here. Also cleaned up the clode slightly.
+
+Tue Dec 9 15:36:18 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.h, class.c, icall.c, marshal.c, object.c: ignore fields
+ marked as deleted.
+
+2003-12-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * verify.c (check_corlib): Handle the case when the version field is
+ initialized by a static constructor.
+
+2003-12-08 Patrik Torstensson <p@rxc.se>
+
+ * rand.c (InternalGetBytes): Implemented win32 version with cryptapi
+
+2003-12-08 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_TypeBuilder_define_generic_parameter): Return
+ a MonoReflectionGenericParameter, also take the parameter index
+ and name as arguments.
+ (ves_icall_MethodBuilder_define_generic_parameter): Likewise.
+ (ves_icall_MonoGenericParam_initialize): New interncall.
+ (ves_icall_Type_make_byref_type): New interncall.
+
+ * reflection.h (MonoReflectionGenericParam): Derive from
+ MonoReflectionType, not just from MonoObject. Added `refobj' and
+ `index' fields.
+
+ * reflection.c (mono_reflection_define_generic_parameter): Create
+ and return a new MonoReflectionGenericParam; don't initialize the
+ constraints here.
+ (mono_reflection_initialize_generic_parameter): New public method;
+ initializes the constraints and creates the `param->pklass'.
+
+2003-12-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h reflection.c: Use the new fields 'num_types',
+ 'num_fields' and 'num_methods' to track the number of types etc.
+
+ * verify.c (check_corlib): Check corlib version number.
+
+2003-12-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_method_from_wrapper): Remove assert so this
+ function works on all methods.
+
+2003-12-07 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * domain.c, loader.h: Added IRemotingTypeInfo interface in MonoDefaults.
+ * icall.c: in, ves_icall_Remoting_RealProxy_GetTransparentProxy set
+ the custom_type_info flag of the transparent proxy.
+ * object.c: Added method mono_object_isinst_mbyref for casting mbyref
+ objects that supports IRemotingTypeInfo.
+ * object.h: Added custom_type_info field in transparent proxy.
+
+2003-12-06 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_create_from_generic): Removed.
+ (mono_class_from_generic): Check `ginst->klass' before doing
+ anything else. This is important to fully support "recursive"
+ generic types.
+
+ * metadata.c (do_mono_metadata_parse_generic_inst): Create an
+ empty `generic_inst->klass' before doing anything else.
+
+2003-12-06 Dick Porter <dick@ximian.com>
+
+ * verify.c:
+ * object.h:
+ * icall.c:
+ * locales.c: Use C structs to access class fields. Don't do a
+ conversion between MonoString and UChar because both are
+ platform-endian UTF-16. Compare now takes startindex and count
+ parameters. Add a char overload for IndexOf. Speed up the
+ invariant string IndexOf.
+
+2003-12-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * Makefile.am (monosn_LDADD): Fix parallel build.
+
+2003-12-04 Martin Baulig <martin@ximian.com>
+
+ * icall.c
+ (ves_icall_type_GetTypeCode): Added MONO_TYPE_VAR and MONO_TYPE_MVAR.
+ (ves_icall_Type_make_array_type): New interncall.
+
+2003-12-04 Martin Baulig <martin@ximian.com>
+
+ * locales.c: also change it in the !HAVE_ICU case.
+
+2003-12-04 Dick Porter <dick@ximian.com>
+
+ * icall.c:
+ * locales.c: construct_compareinfo is now in CompareInfo, not
+ CultureInfo.
+
+2003-12-04 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.c (mono_image_load_file_for_image): Cache loaded images in the
+ image->files array.
+
+ * image.c (load_class_name): Load class names from the EXPORTEDTYPES
+ table as well.
+
+ * assembly.c (mono_assembly_load_references): Only load references
+ once.
+
+ * class.c (mono_class_from_name): Avoid linear search of the
+ EXPORTEDTYPE table.
+
+ * loader.c (mono_field_from_token): Cache lookups of fieldrefs as well.
+
+2003-12-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.h (MonoImage): Add 'field_cache' field.
+
+ * loader.c (mono_field_from_token): Cache field lookups.
+
+ * reflection.c (mono_module_get_object): Fix name property.
+
+ * icall.c (ves_icall_get_enum_info): Update after changes to
+ mono_metadata_get_constant_index ().
+
+ * icall.c: Get rid of get_type_info icall, use a separate icall for
+ each type property to avoid needless memory allocations. Fixes #51514.
+
+ * metadata.c (mono_metadata_get_constant_index): Add a 'hint' parameter
+ to avoid needless binary searches.
+
+ * class.c (class_compute_field_layout): Move the initialization of
+ field->def_value to mono_class_vtable ().
+
+ * class.c (mono_class_layout_fields): Enable GC aware auto layout for
+ non-corlib types.
+
+ * object.c (mono_object_allocate): Make it inline.
+
+ * object.c (mono_object_allocate_spec): Make it inline.
+
+2003-12-02 Dick Porter <dick@ximian.com>
+
+ * locales.c (create_NumberFormat): NumberFormatInfo construction.
+ Patch by Mohammad DAMT (mdamt@cdl2000.com).
+
+2003-12-01 Dick Porter <dick@ximian.com>
+
+ * threads.c: Fix signature and call in CreateMutex and
+ CreateEvent.
+
+2003-12-01 Dick Porter <dick@ximian.com>
+
+ * icall.c:
+ * locales.c: Implement string compares and searching
+
+ * object.h: Add extra Thread field
+
+2003-11-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (fixup_method): Add support for MonoCMethod.
+
+2003-11-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c: Fix hangs and error messages when GC_DONT_GC is set.
+
+ * reflection.c (assembly_name_to_aname): Allow extra characters in
+ assembly names. Fixes #51468.
+
+2003-11-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * exception.c (mono_exception_from_name_domain): New helper function.
+
+ * appdomain.c (ves_icall_System_AppDomain_createDomain): Create the
+ exception object in the correct domain.
+
+ * appdomain.c (ves_icall_System_AppDomain_LoadAssemblyRaw): Fix
+ formatting + make a copy a the input data.
+
+ * loader.c (mono_get_method_from_token): Methods which contain
+ native code do not have entries in the ImplMap.
+
+ (ves_icall_System_AppDomain_LoadAssemblyRaw): Fix exception throw.
+ Thanks to Gonzalo for spotting this.
+
+ * appdomain.c (ves_icall_System_AppDomain_LoadAssemblyRaw): Applied
+ patch from ztashev@openlinksw.co.uk (Zdravko Tashev). New icall.
+
+ * assembly.h (mono_assembly_load_from): Split the second part of
+ assembly loading into a new public function.
+
+ * exception.h (mono_get_exception_bad_image_format): New function.
+
+2003-11-24 Zoltan Varga <vargaz@freemail.hu>
+
+ icall.c (ves_icall_System_Reflection_Assembly_InternalGetType):
+ Enumerate all modules inside a dynamic assembly. Fixes #51293.
+
+ * icall.c: Add new icall for creating dynamic methods.
+
+ * loader.h debug-helpers.c: Add new wrapper type for dynamic methods.
+
+ * reflection.h (MonoReflectionDynamicMethod): Fix type of bool fields.
+
+ * reflection.c (mono_reflection_create_dynamic_method): New icall to
+ create a dynamic method.
+
+ * reflection.c (resolve_object): New helper function.
+
+ * reflection.c: Generalize ReflectionMethodBuilder and the functions
+ which manipulate it so they can also work on dynamic methods.
+
+ * reflection.c (reflection_method_builder_to_mono_method): Avoid
+ creating the MonoReflectionMethodAux structure if it is not needed.
+
+ * reflection.h verify.c: Update after changes to object layout.
+
+ * reflection.c (method_builder_encode_signature): Fix compilation on
+ gcc 2.95.x.
+
+2003-11-21 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * appdomain.h: Added support for context static fields. Added static_data
+ field to MonoAppContext and renamed thread_static_fields to a more
+ generic special_static_fields in MonoAppDomain, since it can now contain
+ context static fields.
+ * domain.c: Updated hashtable name.
+ * object.c: Replaced field_is_thread_static() for a more generic
+ field_is_special_static() which also checks for context static attribute.
+ In mono_class_vtable(), added support for static context fields.
+ * threads.c: Changed methods that manage thread static fields to more
+ generic methods so they can be reused both for thread and context static
+ data.
+ * threads.h: Declared some new methods.
+
+2003-11-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h: Update after changes to the managed types.
+
+ * reflection.c (encode_custom_modifiers): New helper function.
+
+ * reflection.c (method_encode_signature): Emit custom modifiers.
+
+ * reflection.c (field_encode_signature): Emit custom modifiers.
+
+2003-11-18 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h (MonoReflectionAssemblyName): Applied patch from Laurent Morichetti (l_m@pacbell.net). Fix type of 'flags' field.
+
+ * icall.c (ves_icall_System_ValueType_Equals): New optimized
+ implementation.
+
+ * icall.c (ves_icall_System_ValueType_InternalGetHashCode): New
+ icall.
+
+ * object.c (mono_field_get_value_object): New function.
+
+ * object.c appdomain.h appdomain.c: Make out_of_memory_ex domain
+ specific.
+
+2003-11-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.c (mono_runtime_get_out_of_memory_ex): New function to
+ return a preallocated out-of-memory exception instance.
+
+ * object.c (out_of_memory): Use the new function.
+
+ * metadata.c (mono_metadata_parse_type): Handle the case when the byref
+ flag is before the custom modifiers. Fixes #49802.
+
+2003-11-16 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_is_open_constructed_type): Implemented the
+ MONO_TYPE_GENERICINST case.
+
+2003-11-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c (mono_assembly_fill_assembly_name): New function to
+ fill out the MonoAssemblyName structure.
+ (mono_assembly_open): Use the new function.
+
+ * icall.c (fill_reflection_assembly_name): New helper function.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_FillName): Use the
+ new function.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_InternalGetAssemblyName): New icall.
+
+2003-11-15 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_is_open_constructed_type): New public
+ function; checks whether a type is an open constructed type,
+ ie. whether it still contains type parameters.
+ (mono_class_inflate_generic_type): If we're a type parameter and
+ the inflated type is also a MONO_TYPE_(M)VAR, return the original
+ type.
+
+ * class.h (MonoGenericInst): Added `guint32 is_open'.
+
+ * loader.c (method_from_methodspec): Check whether we're an open
+ or closed constructed type and set `ginst->is_open'.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Check
+ whether we're an open or closed constructed type and set
+ `ginst->is_open'.
+ (mono_reflection_inflate_method_or_ctor): Don't inflate methods
+ from open constructed types.
+
+2003-11-15 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_bind_generic_parameters): If we're
+ a generic instance (instead of a generic type declaration) with
+ unbound generic parameters, bind them to our actual types.
+
+2003-11-14 Martin Baulig <martin@ximian.com>
+
+ * reflection.h (MonoReflectionGenericInst): Added `MonoArray *interfaces'.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): If we're
+ an interface type, populate `res->interfaces' with instantiated
+ versions of all the interfaces we inherit.
+
+2003-11-13 Aleksey Demakov <avd@openlinksw.com>
+
+ * assembly.c (mono_assembly_load): Fixed problem finding mscorlib.dll
+ when MONO_PATH is set but doesn't contain the install dir.
+
+2003-11-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c:
+ (ves_icall_Type_GetInterfaces): don't return an interface twice when
+ it's also implemented in base classes. Fixes bug #50927.
+
+2003-11-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c (ves_icall_System_GC_WaitForPendingFinalizers): Avoid deadlocks
+ if this method is called from a finalizer. Fixes #50913.
+
+2003-11-12 Miguel de Icaza <miguel@ximian.com>
+
+ * threads.c: Implement VolatileRead/VolatileWrite
+
+ * icall.c: Add new icalls for VolatileRead/VolatileWrite
+
+2003-11-12 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetTypes): Applied
+ patch from Danilo Sagan (dsegan@gmx.net). Fix compilation under gcc
+ 2.95.3.
+
+ * assembly.c (mono_assembly_open): Fix windows build. Applied patch
+ from Peter Ross (pro@missioncriticalit.com).
+
+2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * icall.c: Added internal call for System.Environment::GetMachineConfigPath
+
+2003-11-12 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c (mono_assembly_load_references): Disable check because it
+ triggers on older corlibs which lots of people have.
+
+2003-11-12 Jackson Harper <jackson@ximian.com>
+
+ * assembly.c: Change corlib name to mscorlib. Add a temp. hack to
+ load corlib.dll if mscorlib.dll is not found.
+ * assembly.h: Remove corlib name define.
+ * class.c:
+ * domain.c:
+ * image.c: Change corlib name to mscorlib.
+
+2003-11-12 Zoltan Varga <vargaz@freemail.hu>
+
+ * debug-mono-symfile.c: Add patch from FreeBSD ports tree.
+
+2003-11-11 Miguel de Icaza <miguel@ximian.com>
+
+ * appdomain.h: Added loader_optimization here to sync with the C#
+ code, and add disallow_binding_redirects field.
+
+2003-11-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * mono-debug.c (mono_debug_add_method): Ignore unknown modules.
+
+ * reflection.c (mono_image_build_metadata): Fix crash on modules
+ with no types.
+
+ * reflection.h (MonoMethodInfo): Track changes to the managed structure.
+
+ * icall.c (ves_icall_get_method_info): Return callingConvention as
+ well.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetNamespaces): Add
+ namespaces from the EXPORTEDTYPE table as well.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_GetTypes): Merge types
+ from all modules inside the assembly.
+
+2003-11-11 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Make
+ this work for interfaces.
+
+2003-11-11 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.c (mono_debug_add_type): Ignore unknown modules.
+
+2003-11-11 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_inflate_method_or_ctor): Allow
+ "MonoInflatedMethod" and "MonoInflatedCtor".
+
+2003-11-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (resolution_scope_from_image): Use the assembly table
+ from the manifest module, since other modules don't have it.
+
+ * debug-helpers.c (mono_type_full_name): New helper function.
+
+ * image.h (MonoAssembly): Change 'dynamic' to a boolean.
+
+ * image.c (mono_image_load_file_for_image): New public function which
+ is a replacement for the load_file_for_image in class.c.
+
+ * assembly.c (mono_assembly_load_module): A wrapper for the function
+ above which does assembly association and reference loading too.
+
+ * class.c (mono_class_from_name): Call mono_assembly_load_module.
+
+2003-11-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: not all of the attributes for the full assembly name
+ are required and the order doesn't matter. Fixes bug #50787.
+
+2003-11-10 Dick Porter <dick@ximian.com>
+
+ * locales.c: Use platform-endian UTF16
+
+2003-11-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c: Emit FILE and EXPORTEDTYPE tables.
+
+2003-11-10 Martin Baulig <martin@ximian.com>
+
+ * metadata.c
+ (mono_metadata_load_generic_params): Make this actually work.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): If our
+ parent is a generic instance, pass all the `types' to it, no
+ matter whether it has the same number of type parameters or not.
+
+2003-11-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c: Emit FILE and EXPORTEDTYPE tables.
+
+ * assembly.c (mono_assembly_load_references): Move the image<->assembly
+ assignment code to this function so it gets called recursively for all
+ modules.
+
+ * image.c (load_modules): Remove the assembly assignment since it is
+ now done by mono_assembly_load_references.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_InternalGetType):
+ Add 'module' argument.
+ (mono_module_get_types): New helper function.
+ (ves_icall_System_Reflection_Module_InternalGetTypes): New icall.
+
+2003-11-08 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_inflate_generic_method): Interface method
+ don't have a header.
+
+ * reflection.c (mono_image_get_methodspec_token): Take an
+ additional `MonoGenericInst *' argument instead of reading it from
+ the header; this is necessary to support interfaces.
+ (mono_image_create_token): Pass the `MonoGenericInst *' from the
+ MonoReflectionInflatedMethod to mono_image_get_methodspec_token().
+ (inflated_method_get_object): Take an additional `MonoGenericInst *'
+ argument.
+
+ * reflection.h (MonoReflectionInflatedMethod): Added
+ `MonoGenericInst *ginst'.
+
+2003-11-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c (mono_domain_finalize): Fix compilation for no GC case.
+
+2003-11-06 Zoltan Varga <zovarga@ws-zovarga2>
+
+ * appdomain.c (mono_domain_unload): Add a workaround for bug #27663.
+
+2003-11-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c
+ (reflection_methodbuilder_from_method_builder):
+ (reflection_methodbuilder_from_ctor_builder): New helper functions to
+ initialize a ReflectionMethodBuilder structure.
+ (mono_image_get_methodbuilder_token):
+ (mono_image_get_ctorbuilder_token): New functions to emit memberref
+ tokens which point to types in another module inside the same assembly.
+
+ * reflection.c: Use the new helper functions.
+
+ * reflection.c (mono_image_basic_init): Initialize basedir and culture.
+
+ * icall.c loader.c reflection.c: Use ModuleBuilder->dynamic_image
+ instead of AssemblyBuilder->dynamic_assembly in the appropriate places.
+
+ * reflection.c (resolution_scope_from_image): Emit a moduleref if
+ neccesary.
+
+ * reflection.c (mono_image_build_metadata): Emit metadata only for the
+ current module. Emit the manifest only for the main module.
+
+ * reflection.c (mono_image_create_token): Add assertion when a
+ memberref needs to be created.
+
+ * reflection.c reflection.h (MonoDynamicAssembly): Remove unused fields.
+
+ * reflection.c (mono_reflection_get_custom_attrs_blob): Allocate a
+ larger buffer for the custom attribute blob. Fixes #50637.
+
+2003-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: notify listener on async processing handles after
+ invoking the async callback. Thanks to Zoltan.
+
+2003-11-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (create_dynamic_mono_image): Call mono_image_init to
+ avoid code duplication.
+
+ * reflection.h (MonoDynamicImage): New type which is currently unused,
+ but will be used through the ref.emit code in place of
+ MonoDynamicAssembly.
+
+ * reflection.h (MonoReflectionAssemblyBuilder): Track changes to the
+ object layout.
+
+ * reflection.c (create_dynamic_mono_image): Rewrote so it now creates
+ a MonoDynamicImage instead of just a MonoImage.
+
+ * reflection.h reflection.c icall.c: Move nearly all AssemblyBuilder
+ icalls to ModuleBuilder but keep their semantics, so they will work
+ with moduleb->assemblyb. This will change later.
+
+2003-11-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h (MonoReflectionAssemblyBuilder): Track changes to the
+ object layout.
+
+ * reflection.c (mono_image_build_metadata): Avoid creation of a default
+ main module, since it is now done by the managed code.
+
+2003-11-03 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_inflate_method_or_ctor): Set
+ `ginst->klass' here.
+ (method_encode_methodspec): Don't use the `ginst->generic_method's
+ klass if it's a generic instance, use `ginst->klass' in this case.
+
+2003-11-03 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_image_get_generic_method_param_info):
+ Removed, use mono_image_get_generic_param_info() instead.
+ (mono_image_get_type_info): Write the GenericParam table before
+ the Method table. This is neccessary because in the GenericParam
+ table, type parameters of the class (ie. '!0' etc.) must come
+ before the ones from its generic methods (ie. '!!0' etc).
+
+2003-11-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Assembly_FillName): Fill out AssemblyName->codebase. Fixes #50469.
+
+2003-11-02 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (create_generic_typespec): Take a
+ `MonoReflectionTypeBuilder *' instead of a `MonoType *' and get
+ the generic parameters from it.
+
+2003-11-02 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (fieldref_encode_signature): Take a `MonoType *'
+ instead of a `MonoClassField *' since we just need the type.
+ (create_generic_typespec): New static function. Creates a
+ TypeSpec token for a generic type declaration.
+ (mono_image_get_generic_field_token): New static function.
+ (mono_image_create_token): If we're a FieldBuilder in a generic
+ type declaration, call mono_image_get_generic_field_token() to get
+ the token.
+
+2003-11-02 Martin Baulig <martin@ximian.com>
+
+ * reflection.h
+ (MonoReflectionInflatedMethod, MonoReflectionInflatedField): Added
+ `MonoReflectionGenericInst *declaring_type' and
+ `MonoReflectionGenericInst *reflected_type' fields.
+
+ * reflection.c (mono_reflection_inflate_method_or_ctor): Take a
+ `MonoReflectionGenericInst *declaring_type' and a
+ `MonoReflectionGenericInst *reflected_type' argument instead of a
+ single `MonoReflectionGenericInst *type' one. Set
+ `res->declaring_type' and `res->reflected_type' from them.
+ (mono_reflection_inflate_field): Likewise.
+
+2003-11-02 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_setup_vtable): Don't store generic methods
+ in the vtable.
+
+2003-11-02 Martin Baulig <martin@ximian.com>
+
+ * reflection.h (MonoReflectionGenericInst): Added
+ `MonoReflectionType *declaring_type'.
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Use
+ `if (tb->parent)' instead of `klass->parent'.
+
+2003-11-01 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c (mono_assembly_open): Avoid crash if a module is loaded
+ with an empty ASSEMBLY table.
+
+ * reflection.c (mono_image_build_metadata): Avoid using the same loop
+ variable in the inner and outer loops.
+
+2003-10-31 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.h (mono_metadata_make_token): Put parentheses around macro
+ argument.
+
+ * appdomain.h appdomain.c (ves_icall_System_AppDomain_InternalPushDomainRef): Fix signature.
+
+ * appdomain.c appdomain.h icall.c: Get rid of the InvokeInDomain
+ icalls. Instead, do everything in managed code. This is needed since
+ it is hard to restore the original domain etc. in unmanaged code in the
+ presence of undeniable exceptions.
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalPushDomainRef):
+ New icalls to push and pop appdomain refs.
+
+2003-10-31 Martin Baulig <martin@ximian.com>
+
+ * class.c (inflate_generic_type): Renamed to
+ mono_class_inflate_generic_type() and made it public.
+
+ * icall.c ("System.Reflection.MonoGenericInst::inflate_field"):
+ New interncall.
+
+ * loader.c (mono_field_from_memberref): Also set the retklass for
+ typespecs.
+
+ * fielder.c (mono_image_get_inflated_field_token): New static
+ method; creates a metadata token for an inflated field.
+ (mono_image_create_token, fixup_method): Added support for
+ "MonoInflatedField".
+ (fieldbuilder_to_mono_class_field): New static function.
+ (mono_reflection_inflate_field): New public function.
+
+ * reflection.h
+ (MonoReflectionGenericInst): Added `MonoArray *fields'.
+ (MonoReflectionInflatedField): New typedef.
+
+2003-10-30 Bernie Solomon <bernard@ugsolutions.com>
+
+ * socket-io.c (in6_addr ipaddress_to_struct_in6_addr): fix
+ for Solaris and other platforms without s6_addr16
+
+2003-10-30 Martin Baulig <martin@ximian.com>
+
+ * class.c (inflate_generic_type): Take just one `MonoGenericInst *'
+ argument instead of two.
+ (mono_class_inflate_generic_signature): Likewise.
+ (inflate_generic_header): Likewise.
+ (mono_class_inflate_generic_method): Likewise. In addition, if
+ `ginst->klass' is set, it becomes the new `method->klass'.
+
+ * class.h (MonoGenericInst): Removed the `gpointer mbuilder'
+ field.
+
+ * reflection.c (encode_generic_method_sig): Write a 0xa as the
+ first byte. [FIXME]
+ (method_encode_methodspec): If we have generic parameters, create
+ a MethodSpec instead of a MethodRef.
+ (fixup_method): Added support for "MonoInflatedMethod" and
+ "MonoInflatedCtor".
+ (mono_image_create_token): Added support for "MonoInflatedMethod"
+ and "MonoInflatedCtor".
+ (inflated_method_get_object): New static function; returns a
+ managed "System.Reflection.MonoInflatedMethod" object.
+ (mono_reflection_bind_generic_method_parameters): Return a
+ `MonoReflectionInflatedMethod' instead of a `MonoReflectionMethod'.
+ (mono_reflection_inflate_method_or_ctor): Likewise.
+ (mono_image_get_generic_method_param_info): Initialize unused
+ fields to zero.
+ (mono_image_get_generic_param_info): Likewise.
+
+ * reflection.h (MonoReflectionInflatedMethod): New public
+ typedef. Corresponds to the managed "S.R.MonoInflatedMethod" and
+ "S.R.MonoInflatedCtor" classes.
+
+ * loader.c (method_from_memberref): If we're a TypeSpec and it
+ resolves to a generic instance, inflate the method.
+
+2003-10-28 Dick Porter <dick@ximian.com>
+
+ * object.c (mono_runtime_run_main): Convert command-line arguments
+ into utf8, falling back to the user's locale encoding to do so.
+
+2003-10-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.c (mono_get_method_from_token): Avoid looking up the icalls
+ at this time.
+
+ * marshal.c (mono_marshal_get_native_wrapper): Lookup icalls here.
+
+ * reflection.c (reflection_methodbuilder_to_mono_method): Avoid looking
+ up icalls at method definition time. Partially fixes #33569.
+
+2003-10-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Add support for [Out]
+ marshalling of arrays. Fixes #50116.
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalIsFinalizingForUnload): New icall.
+
+ * appdomain.c (unload_thread_main): Clear class->cached_vtable if it
+ points to a vtable in the dying appdomain.
+
+ * appdomain.c (mono_domain_unload): Move the notification of OnUnload
+ listeners into unmanaged code inside the lock.
+
+ * object.c (mono_class_vtable): Turn off typed allocation in non-root
+ domains and add some comments.
+
+2003-10-25 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericInst): Added `MonoClass *klass' field.
+
+ * image.h (MonoImage): Added `GHashTable *typespec_cache'.
+
+ * metadata.c (mono_metadata_parse_generic_inst): Renamed to
+ `do_mono_metadata_parse_generic_inst'; pass it the MonoType we're
+ currently parsing. Create the generic class and store it in
+ `generic_inst->klass' before parsing the type arguments. This is
+ required to support "recursive" definitions; see mcs/tests/gen-23.cs
+ for an example.
+ (mono_type_create_from_typespec): Use a new `image->typespec_cache'
+ to support recursive typespec entries.
+
+ * class.c (mono_class_setup_parent): If our parent is a generic
+ instance, we may get called before it has its name set.
+ (mono_class_from_generic): Splitted into
+ mono_class_create_from_generic() and mono_class_initialize_generic().
+
+2003-10-25 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_BindGenericParameters): Return a
+ `MonoReflectionGenericInst *' instead of a `MonoReflectionType *'.
+ ("System.Reflection.MonoGenericInst::inflate_method"): New interncall.
+ ("System.Reflection.MonoGenericInst::inflate_ctor"): New interncall.
+
+ * reflection.c (my_mono_class_from_mono_type): Added MONO_TYPE_GENERICINST.
+ (create_typespec): Likewise.
+ (mono_reflection_bind_generic_parameters): Return a
+ `MonoReflectionGenericInst *' instead of a `MonoClass *'.
+ (mono_reflection_inflate_method_or_ctor): New public function.
+
+ * reflection.h (MonoReflectionGenericInst): New typedef.
+
+2003-10-24 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_class_proxy_vtable): Run the whole vtable construction
+ inside the domain lock. Fixes #49993.
+
+ * object.c (mono_class_vtable): When typed allocation is used,
+ allocate vtables in the GC heap instead of in the mempool, since the
+ vtables contain GC descriptors which are used by the collector even
+ after the domain owning the mempool is unloaded.
+
+ * domain.c (mono_domain_set): Rename to mono_domain_set_internal.
+
+ * domain.c (mono_domain_unload): Rename to mono_domain_free to better
+ reflect what it does. Also invalidate mempools instead of freeing
+ them if a define is set.
+
+ * appdomain.h (MonoAppDomainState): New enumeration to hold the state
+ of the appdomain.
+
+ * appdomain.h (_MonoDomain): New field 'finalizable_object_hash' to
+ hold the finalizable objects in this domain.
+
+ * appdomain.h (_MonoDomain): New field 'state' to hold the state of the
+ appdomain.
+
+ * appdomain.c (mono_domain_set): New function to set the current
+ appdomain, but only if it is not being unloaded.
+
+ * appdomain.c threads.c threadpool.c object.c: Avoid entering an
+ appdomain which is being unloaded.
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalUnload): Prevent
+ unloading of the root appdomain.
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalInvokeInDomain): New
+ icall to execute a method in another appdomain. Intended as a
+ replacement for InternalSetDomain, which can confuse the code
+ generation in the JIT.
+
+ * appdomain.c (mono_domain_is_unloading): New function to determine
+ whenever an appdomain is unloading.
+
+ * appdomain.c (mono_domain_unload): New function to correctly unload
+ an appdomain.
+
+ * assembly.c (mono_assembly_load_references): Check that an assembly
+ does not references itself.
+
+ * gc.c (mono_domain_finalize): Rewrote so instead of finalizing a
+ domain manually, it asks the finalizer thread to do it, then waits for
+ the result. Also added a timeout.
+
+ * icall.c: Register the new icalls.
+
+ * threads.h threads.c: Export the mono_gc_stop_world and
+ mono_gc_start_world functions.
+
+ * mempool.h mempool.c (mono_mempool_invalidate): New debugging
+ function to fill out the mempool with 0x2a.
+
+2003-10-22 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h (MonoReflectionMethodAux): New structure to store
+ information which is rarely used, thus is not in the MonoMethod
+ structure.
+
+ * reflection.h (MonoDynamicAssembly): New field 'method_aux_hash' to
+ store the aux info.
+
+ * reflection.c (mono_methodbuilder_to_mono_method): Store param names
+ and marshalling info into the aux structure.
+
+ * loader.c (mono_method_get_marshal_info): Retrieve the marshal info
+ from the aux structure.
+
+ * loader.c (mono_method_get_param_names): Retrieve the param names from
+ the aux structure.
+
+2003-10-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * exception.h exception.c: Add AppDomainUnloadedException && fix
+ warning.
+
+2003-10-21 Dick Porter <dick@ximian.com>
+
+ * socket-io.c
+ (ves_icall_System_Net_Sockets_Socket_Select_internal): Applied
+ patch from Laramie Leavitt moving divide out of loop. (Bug 45381).
+
+2003-10-21 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_bind_generic_parameters):
+ `klass->parent' is NULL for interfaces.
+
+2003-10-21 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (create_typespec): Added MONO_TYPE_VAR and MONO_TYPE_MVAR.
+
+2003-10-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * exception.c (mono_exception_from_name_msg): New helper function for
+ creating exceptions and initializing their message field.
+
+ * exception.c: Simplify functions using the new helper.
+
+ * exception.h exception.c (mono_get_exception_cannot_unload_appdomain):
+ New function.
+
+ * object.h object.c: Remove G_GNUC_NORETURN from the signature of
+ mono_raise_exception, since otherwise gcc doesn't generate the function
+ epilog for raise_exception, confusing the stack unwinding in the JIT.
+ Fixes #45043.
+
+ * rawbuffer.c (mono_raw_buffer_load_mmap): Map mmap-ed memory with
+ PROT_EXEC. This seems to prevent segmentation faults on Fedora Linux.
+ Fixes #49499.
+
+2003-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: OutputDebugStringW expects 16-bit unicode characters, not
+ utf8.
+
+2003-10-18 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * icall.c: Removed GetUninitializedObject method because
+ AllocateUninitializedClassInstance does the same.
+
+2003-10-18 Martin Baulig <martin@ximian.com>
+
+ * class.c (inflate_generic_signature): Renamed to
+ mono_class_inflate_generic_signature() and made it public.
+ (my_mono_class_from_generic_parameter): New static function; if we
+ don't already have the generic parameter's MonoClass, create a
+ very simple one which is just used internally in the runtime and
+ not passed back to managed code.
+
+ * class.h (MonoGenericInst): Added `gpointer mbuilder' field.
+
+ * metadata.h (MonoMethodSignature): Moved the
+ `MonoGenericParam *gen_params' to the MonoMethodHeader.
+ (MonoMethodHeader): Moved the `MonoGenericParam *gen_params' here.
+
+ * icall.c (ves_icall_MethodInfo_GetGenericArguments): Renamed to
+ ves_icall_MonoMethod_GetGenericArguments(); this is now an
+ interncall on the MonoMethod class, not on MethodInfo.
+ (ves_icall_MethodInfo_BindGenericParameters): Removed, we're now
+ calling mono_reflection_bind_generic_method_parameters() directly.
+
+ * loader.c (mono_method_get_signature): If this is a MethodSpec;
+ return the already computed `method->signature'.
+ (method_from_methodspec): New static function to load a method
+ from a MethodSpec entry.
+ (mono_get_method_from_token): Call the new method_from_methodspec()
+ for MethodSpec tokens.
+ (mono_get_method_from_token): If we're a generic method, load the
+ type parameters.
+
+ * reflection.c (mono_image_get_memberref_token): Allow
+ MEMBERREF_PARENT_TYPEDEF here; this will be used in the MethodSpec
+ table.
+ (fixup_method): Added support for MONO_TABLE_METHODSPEC.
+ (mono_image_create_token): First check whether it's a generic
+ method (so we'd need to create a MethodSpec), then do the other
+ two alternatives.
+ (mono_reflection_bind_generic_method_parameters): Return a
+ `MonoReflectionMethod *' instead of a `MonoMethod *'; we're now
+ called directly from the interncall.
+
+2003-10-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (load_public_key): Move loading of the public key
+ into managed code.
+
+ * image.h (MonoAssemblyName): Add public_key and hash_alg fields.
+
+ * assembly.c (mono_assembly_open): Fill in public_key and hash_alg
+ fields.
+
+ * icall.c (ves_icall_System_Reflection_Assembly_FillName): Fill in
+ culture, hash_alg and public_key. Fixes #49555.
+
+2003-10-17 Martin Baulig <martin@ximian.com>
+
+ * class.h (MonoGenericInst): Moved this declaration here and added
+ `MonoMethod *generic_method'.
+
+ * icall.c
+ (ves_icall_MethodInfo_GetGenericArguments): New interncall.
+ (ves_icall_MethodInfo_BindGenericParameters): New interncall.
+
+ * metadata.c (mono_metadata_type_equal): Two types of
+ MONO_TYPE_VAR or MONO_TYPE_MVAR equals if they have the same
+ index; ie. don't compare the address of the `MonoGenericParam'
+ structure.
+ (mono_metadata_load_generic_params): Removed the `MonoMethod
+ *method' argument.
+
+ * metadata.h (MonoGenericInst): Moved declaration to class.h.
+ (MonoMethodHeader): Added `MonoGenericInst *geninst'.
+
+ * reflection.c (method_encode_signature): Encode the number of
+ generic parameters.
+ (encode_generic_method_sig): New static function.
+ (method_encode_methodspec): New static function; creates an entry
+ in the MethodSpec table for a generic method.
+ (mono_image_get_methodspec_token): New static function.
+ (mono_image_create_token): Call mono_image_get_methodspec_token()
+ for generic methods.
+ (mono_reflection_bind_generic_method_parameters): New public
+ function. Instantiates a generic method.
+
+2003-10-16 Martin Baulig <martin@ximian.com>
+
+ * metadata.h (MonoMethodSignature): Moved `MonoGenericParam
+ *gen_params' here from MonoMethodHeader.
+
+ * metadata.c (mono_metadata_parse_method_signature): If we have
+ generic parameters, initialize `method->gen_params' and then set
+ the correct `type->data.generic_param' in all the parameters.
+
+2003-10-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * threads.c (mono_threads_get_default_stacksize): New function to
+ return the default stacksize.
+
+ * gc.c (mono_gc_cleanup): Use a separate event for waiting for the
+ termination of the finalizer thread, since the previous method had
+ race conditions. Fixes #49628.
+
+ * gc.c (mono_gc_init): Use the same stacksize for the finalizer thread
+ as for the other managed threads.
+
+2003-10-16 Martin Baulig <martin@ximian.com>
+
+ * class.c (inflate_generic_signature): Copy `generic_param_count'
+ and `gen_params'.
+
+ * icall.c (ves_icall_MethodInfo_get_IsGenericMethodDefinition):
+ New interncall.
+
+ * metadata.c (mono_metadata_parse_method_signature): Actually set
+ the `method->generic_param_count' here.
+ (mono_metadata_load_generic_params): Initialize `pklass' to NULL.
+
+2003-10-15 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.h: Add a new field to TypedRef to simplify the implementation
+ of the REFANY opcodes in the JIT.
+
+ * icall.c: Make use of the new field.
+
+ * metadata.c (mono_type_size): Compute the size of TYPEDBYREF types
+ dynamically.
+
+2003-10-15 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_from_gen_param): Renamed to
+ mono_class_from_generic_parameter() and moved most of the
+ functionality from mono_reflection_define_generic_parameter()
+ here; ie. we create a "real" class here.
+ (mono_class_from_mono_type): Only allow MONO_TYPE_VAR and
+ MONO_TYPE_MVAR if mono_class_from_generic_parameter() has
+ previously been called.
+
+ * class.h (MonoGenericParam): Moved the declaration of this struct
+ here from metadata.h and added `MonoMethod *method'.
+
+ * icall.c (ves_icall_MonoType_get_DeclaringMethod): New
+ interncall.
+
+ * loader.c (mono_get_method_from_token): If we have any generic
+ parameters, call mono_metadata_load_generic_params() to read them
+ from the MONO_TABLE_GENERICPAR.
+
+ * metadata.c (mono_metadata_load_generic_params): Added
+ `MonoMethod *method' argument which is used MONO_TYPE_MVAR.
+
+ * metadata.h (MonoMethodSignature): Replaced
+ `MonoGenericInst *geninst' with `guint16 generic_param_count'.
+ (MonoMethodHeader): Added `MonoGenericParam *gen_params'.
+
+ * reflection.c (mono_reflection_define_generic_parameter): Moved
+ most of the functionality into the new
+ mono_class_from_generic_parameter(); set the `method' field if
+ we're a method parameter.
+
+2003-10-13 Bernie Solomon <bernard@ugsolutions.com>
+
+ * marshal.c (emit_struct_conv): if native size is 0
+ emit no code.
+
+2003-10-14 Martin Baulig <martin@ximian.com>
+
+ * icall.c: The generics API has changed in the spec since it was
+ added to System.Type; these modifications make it match the spec
+ again.
+ (ves_icall_Type_GetGenericParameters): Renamed to
+ `ves_icall_Type_GetGenericArguments'.
+ (ves_icall_Type_get_IsGenericTypeDefinition): New interncall.
+ (ves_icall_MonoType_get_HasGenericParameteres): Renamed to
+ `ves_icall_MonoType_get_HasGenericArguments'.
+ (ves_icall_MonoType_get_IsUnboundGenericParameter): Renamed to
+ `ves_icall_MonoType_get_IsGenericParameter'.
+ (ves_icall_MonoType_get_HasUnboundGenericParameters): Removed;
+ this is no interncall anymore.
+ (ves_icall_TypeBuilder_get_IsUnboundGenericParameter): Renamed to
+ `ves_icall_TypeBuilder_get_IsGenericParameter'.
+
+2003-10-14 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_bind_generic_parameters): Also
+ inflate generic methods if we're reading the class from IL.
+
+2003-10-13 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_define_generic_parameter): This
+ method isn't called directly from the icall anymore; take a
+ `MonoReflectionAssemblyBuilder *' so we can use this for type and
+ method generic parameters.
+ (ReflectionMethodBuilder): Added `MonoArray *generic_param'.
+ (method_builder_encode_signature): Encode generic parameters.
+ (mono_image_get_method_info): Write generic params to the
+ MONO_TABLE_GENERICPARAM table.
+
+ * reflection.h (MonoReflectionMethodBuilder): Added
+ `MonoArray *generic_params'.
+
+ * metadata.h (MonoMethodSignature): Added `MonoGenericInst *geninst'.
+
+ * icall.c (ves_icall_TypeBuilder_define_generic_parameter): Added
+ wrapper for mono_reflection_define_generic_parameter().
+ (ves_icall_MethodBuilder_define_generic_parameter): Likewise.
+
+2003-10-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.h: Add missing function to fix build.
+
+ * marshal.c (mono_marshal_get_native_wrapper): Add support for
+ the SetLastError pinvoke attribute.
+
+ * marshal.c (mono_marshal_set_last_error): New helper function called
+ by the generated code.
+
+ * marshal.c (mono_mb_emit_branch): New helper function.
+
+ * marshal.c (mono_mb_emit_exception): Added exception name parameter.
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Added support for
+ classes as parameters and return values of delegates. Fixes #29256.
+
+2003-10-12 Bernie Solomon <bernard@ugsolutions.com>
+
+ * locales.c: use gint32 in non HAVE_ICU case
+
+2003-10-11 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.c (mono_debug_add_method): Added a workaround for
+ bug #48591.
+
+2003-10-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Under windows,
+ delegates passed to native code must use the STDCALL calling
+ convention. Fixes #35987.
+
+2003-10-10 Martin Baulig <martin@ximian.com>
+
+ * class.c (inflate_generic_type): If we're inflating for a generic
+ type instance (and not for a generic method), return
+ MONO_TYPE_MVAR unchanged.
+
+2003-10-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * string-icalls.c: Join ignores null strings in the source array.
+ * threadpool.[ch]: export busy_worker_threads, not mono_worker_threads.
+ * threads.c: GetAvailableTheads is slightly more accurate.
+
+2003-10-09 Bernie Solomon <bernard@ugsolutions.com>
+
+ * threads.h threads.c : add mono_threads_set_default_stacksize
+ and pass default to CreateThread calls.
+
+2003-10-09 Dick Porter <dick@ximian.com>
+
+ * icall.c:
+ * locales.h:
+ * locales.c: Internal calls for constructing CultureInfo and
+ related objects from libicu (if its available.)
+
+2003-10-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * debug-helpers.c (wrapper_type_names): Add 'unknown' wrapper type.
+
+2003-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: added an argument to async_invoke_thread that is the
+ item to process, pass the MonoAsyncResult to the thread start function
+ when creating a new thread. This way we don't need to acquire any lock
+ when we're creating a new thread. Readded a semaphore for faster
+ response times (instead of that Sleep i added).
+
+2003-10-08 Bernie Solomon <bernard@ugsolutions.com>
+
+ * icall.c (ves_icall_System_CurrentTimeZone_GetTimeZoneData):
+ get daylight change dates better on Windows, fix handling
+ of platforms without tm_gmtoff.
+
+2003-10-06 Martin Baulig <martin@ximian.com>
+
+ * class.c (inflate_generic_method): Renamed to
+ mono_class_inflate_generic_method() and made public.
+ (mono_class_init): Don't inflate the generic methods here.
+ (mono_class_from_generic): Added `gboolean inflate_methods'
+ argument. Inflate the methods here.
+
+ * loader.c (mono_method_get_param_names): Ignore instances of
+ generic types for the moment.
+
+ * reflection.c (fixup_method): Added support for inflated methods.
+ (mono_image_create_token): Use mono_image_get_methodref_token()
+ for inflated methods.
+ (mono_custom_attrs_from_param): Ignore instances of generic types
+ for the moment.
+ (mono_reflection_bind_generic_parameters): New public function.
+ Moved all the functionality from
+ ves_icall_Type_BindGenericParameters() here and added support for
+ dynamic types.
+ (mono_reflection_define_generic_parameter): Initialize
+ `klass->methods' here.
+
+ * icall.c (ves_icall_Type_BindGenericParameters): Moved all the
+ functionality into mono_reflection_define_generic_parameter().
+ (ves_icall_Type_GetGenericTypeDefinition): If we're coming from a
+ TypeBuilder, return that TypeBuilder.
+
+2003-10-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: removed mono_delegate_semaphore.
+
+ * threadpool.c:
+ (mono_thread_pool_add): moved hash table creation inside and the thread
+ creation outside of the critical region.
+ (mono_thread_pool_finish): removed obsolete code.
+ (async_invoke_thread): don't use the semaphore. Use a plain Sleep and
+ continue or exit the thread depending on the queue.
+
+2003-10-07 Bernie Solomon <bernard@ugsolutions.com>
+
+ * metadata.c (mono_type_to_unmanaged): allow bools to marshal as I1
+ marshal.c (emit_ptr_to_str_conv & mono_marshal_get_native_wrapper):
+ handle more bool marshalling options
+
+2003-10-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Fix marshalling of
+ arrays of structs. Also add a more descriptive error message when
+ a structure member is marshalled as LPArray.
+
+2003-10-06 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_get_native_wrapper): Add support for
+ marshalling arrays of complex types. Fixes #29098. Also remove an
+ usused and incomplete function.
+
+Mon Oct 6 15:38:40 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: report heap_size - free_bytes as total memory allocated
+ (bug#49362).
+
+2003-10-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_CurrentTimeZone_GetTimeZoneData): Finally
+ fix timezone handling problems on Windows.
+
+ * icall.c (ves_icall_System_CurrentTimeZone_GetTimeZoneData): Avoid
+ asserts when the year is outside the range handled by ms the functions.
+
+ * class.c (setup_interface_offsets): If the class is an interface,
+ fill out its interface_offsets slot.
+
+2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: mark threadpool threads as background.
+
+2003-10-03 Bernie Solomon <bernard@ugsolutions.com>
+
+ * decimal.c - define DECINLINE to nothing if not using GCC
+
+2003-10-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.c: More refcount fixes.
+
+2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * string-icalls.c: if we're not trimming, return the same string.
+ When not splitting, don't create a new string.
+
+2003-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * image.c:
+ (mono_image_open): increment the ref_count inside the critical section.
+
+2003-10-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.c (mono_image_open): Fix reference counting bug.
+
+2003-09-30 Bernie Solomon <bernard@ugsolutions.com>
+
+ * marshal.c (mono_marshal_type_size) struct alignment changed for
+ 64bit machines. (emit_ptr_to_str_conv) Fix bool conversions for
+ 64bits. Avoid leak in mono_marshal_get_native_wrapper when
+ mono_lookup_pinvoke_call throws.
+
+2003-09-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_parse_type): Fix #49114.
+
+ * file-io.c (ves_icall_System_IO_MonoIO_GetFileAttributes): Add
+ temporary workaround for cygwin header problem.
+
+ * object.c (mono_object_isinst): Synchronize this with the code
+ generated by the JIT for casts.
+
+2003-09-29 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (encode_type): Fix #38332.
+
+2003-09-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_method_from_wrapper): New function to return
+ the original method from the wrapper method.
+
+2003-09-25 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_IsGenericTypeDefinition): Removed this
+ interncall since it was identical to `Type.GetGenericTypeDefinition()'.
+ (ves_icall_Type_get_IsGenericInstance): New interncall.
+
+2003-09-24 Bernie Solomon <bernard@ugsolutions.com>
+
+ * object.c: fix cast warning in big endian code.
+
+2003-09-19 Jackson Harper <jackson@latitudegeo.com>
+
+ * icall.c: Timezone patch from Zoltan Varga (vargaz@freemail.hu)
+
+2003-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * assembly.c: don't call check_env from mono_assembly_load. It's
+ already done once in mono_assemblies_init and may cause headaches when
+ multiple threads are loading assemblies.
+
+2003-09-19 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_define_generic_parameter): Don't
+ allocate `klass->methods', set `klass->flags' to
+ TYPE_ATTRIBUTE_INTERFACE, not TYPE_ATTRIBUTE_ABSTRACT.
+
+2003-09-18 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_init): Don't create `class->methods' if it's
+ already initialized.
+
+ * metadata.c (mono_metadata_load_generic_params): Make this
+ actually work.
+
+ * reflection.c (mono_reflection_define_generic_parameter): Set
+ parent class and interfaces from the constraints.
+
+ * reflection.h (MonoReflectionGenericParam): Added `guint32 flags'
+ to keep this struct in sync with the declaration in TypeBuilder.cs.
+
+2003-09-17 Martin Baulig <martin@ximian.com>
+
+ * metadata.h (MonoType): Replaced the data's `int type_param'
+ field with `MonoGenericParam *generic_param'.
+ (MonoGenericParam): Added `MonoClass *klass'.
+
+ * class.c (mono_class_from_gen_param): Removed the
+ `MonoImage *image' and `int type_num' arguments.
+
+ * metadata.c (mono_metadata_parse_generic_param): New static
+ method; creates a MonoGenericParam which just contains the index.
+ (do_mono_metadata_parse_type): Call
+ mono_metadata_parse_generic_param() for MONO_TYPE_VAR and
+ MONO_TYPE_MVAR.
+
+ * reflection.c (mono_image_typedef_or_ref): Generic type
+ parameters may be in the same assembly, but never use a typedef
+ for them.
+ (mono_reflection_define_generic_parameter): We're now creating a
+ "real" class for the type parameter; it's now safe to call
+ mono_class_from_mono_type() on the class'es type, it'll do the
+ right thing.
+
+2003-09-16 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (allocate_symbol_file_entry): Initialize
+ `symfile->range_entry_size' and `symfile->class_entry_size' here;
+ the `symfile' data structure must be fully initialized before it
+ gets added to the table.
+
+2003-09-15 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_Type_IsArrayImpl): Added MONO_ARCH_SAVE_REGS.
+
+ * appdomain.h domain.c (MonoDomain): Added new hashtable to store the
+ class init trampolines.
+
+2003-09-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * profiler.c (mono_profiler_load): Added '-time' and '-alloc' options
+ to the built-in profiler to turn off time and allocation profiling
+ respectively.
+
+2003-09-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * profiler.c (mono_profiler_coverage_alloc): Use NULL instead of
+ g_direct_equal.
+
+ * debug-helpers.c (mono_method_full_name): Print the wrapper type
+ in human readable form.
+
+2003-09-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c icall.c: Fixed warnings.
+
+ * image.c (load_class_names): Use a temporary hash table to hold the
+ namespaces in order to avoid doing many string comparisons.
+
+ * image.h: Fix typo.
+
+ * image.c class.c rawbuffer.c reflection.c threads.c verify.c domain.c:
+ Pass NULL instead of g_direct_equal to the GHashTable constructor
+ since the NULL case is short-circuited inside g_hash_table_lookup,
+ leading to better performance.
+
+ * metadata.c (mono_metadata_custom_attrs_from_index): New function to
+ obtain the first custom attribute for a given index. Depends on the
+ CustomAttribute table being sorted by the parent field.
+
+ * reflection.c (mono_custom_attrs_from_index): Use the new function
+ for better performance.
+
+2003-09-07 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_init): If we're a generic instance, inflate
+ all our methods instead of loading them from the image.
+ (mono_class_from_generic): Set `class->methods = gklass->methods'.
+
+2003-09-07 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c: Added support for constructors.
+
+2003-09-06 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_TypeBuilder_get_IsUnboundGenericParameter):
+ New interncall.
+
+ * reflection.c (mono_reflection_setup_generic_class): Call
+ ensure_runtime_vtable() to create the vtable.
+
+2003-09-05 Martin Baulig <martin@ximian.com>
+
+ * class.c (mono_class_array_element_size): Added MONO_TYPE_VAR and
+ MONO_TYPE_MVAR.
+
+2003-09-04 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_reflection_define_generic_parameter): Generic
+ parameters start with zero.
+
+2003-09-04 Martin Baulig <martin@ximian.com>
+
+ * metadata.c (mono_type_size): Added MONO_TYPE_VAR and MONO_TYPE_MVAR.
+
+ * reflection.h (MonoReflectionGenericParam): New typedef.
+ (MonoReflectionTypeBuilder): Added `generic_params' fields to get
+ the generic parameters from the managed TypeBuilder.
+
+ * reflection.c (mono_reflection_define_generic_parameter): New function.
+ (mono_reflection_create_runtime_class): Encode generic parameters.
+ (mono_reflection_setup_generic_class): New function; this is
+ called after adding adding all generic params to the TypeBuilder.
+ (encode_type): Added MONO_TYPE_VAR.
+
+2003-09-04 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.h class.c (mono_class_needs_cctor_run): Moved this method
+ here from the JIT.
+
+ * assembly.h assembly.c: Moved the AOT loading code into an assembly
+ load hook.
+
+2003-09-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h reflection.c class.h class.c: Delete duplicate
+ definition of mono_type_get_name () from reflection.c and export the
+ one in class.c.
+
+ * class.c: Class loading fixes from Bernie Solomon
+ (bernard@ugsolutions.com).
+
+ * reflection.c: Endianness fixes from Bernie Solomon
+ (bernard@ugsolutions.com).
+
+2003-09-01 Zoltan Varga <vargaz@freemail.hu>
+
+ * assembly.h assembly.c: Define a file format version for AOT
+ libraries.
+
+ * assembly.c (mono_assembly_open): Fix leaking of MonoImage-s.
+
+ * appdomain.h (MonoJitInfo): New field to determine whenever the
+ code is domain neutral.
+
+2003-08-31 Miguel de Icaza <miguel@ximian.com>
+
+ * marshal.c (emit_struct_conv): Add MONO_TYPE_CHAR
+
+2003-08-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Web_Util_ICalls_get_machine_install_dir):
+ (ves_icall_System_Configuration_DefaultConfig_get_machine_config_path):
+ Avoid caching the result since strings must be domain specific. Fixes
+ #48050.
+
+2003-08-29 Zoltan Varga <vargaz@freemail.hu>
+
+ * marshal.c (mono_marshal_init): Make this callable multiple times
+ since it is hard to find a correct place to call it.
+
+ * object.c (mono_runtime_class_init): Execute static constructors in
+ the correct appdomain.
+
+ * image.c (build_guid_table): Handle the case when multiple images have
+ the same GUID.
+
+2003-08-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added a couple of icalls for System.Web.
+
+2003-08-28 Martin Baulig <martin@ximian.com>
+
+ * icall.c (ves_icall_Type_BindGenericParameters): Use
+ `klass->generic_inst' instead of `&klass->byval_arg' in the
+ mono_type_get_object() call. The returned type must be
+ MONO_TYPE_GENERICINST and not MONO_TYPE_CLASS.
+
+2003-08-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * NOTES: New file.
+
+ * object.c (mono_class_proxy_vtable): Make it thread safe.
+
+ * pedump.c: Fix warning.
+
+ * object.c appdomain.h: Get rid of metadata_section.
+ It is no longer needed and it was causing deadlocks with domain->lock.
+
+ * appdomain.c (add_assemblies_to_domain): Make it thread safe.
+
+2003-08-26 Martin Baulig <martin@ximian.com>
+
+ * pedump.c (main): Don't call mono_image_close() if `verify_pe'.
+
+2003-08-26 Martin Baulig <martin@ximian.com>
+
+ * pedump.c (main): Call mono_metadata_init(),
+ mono_raw_buffer_init(), mono_images_init(), mono_assemblies_init()
+ and mono_loader_init().
+
+2003-08-26 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.h: Add missing include to fix build.
+
+ * image.h: mono_image_load_references is no more.
+
+ * assembly.c: Reworked assembly loading to make it really thread safe.
+ After these changes, the assembly returned by mono_assembly_open is
+ fully initialized, i.e. all its references assemblies are loaded.
+
+ * assembly.c (mono_image_load_references): Renamed to
+ mono_assembly_load_references, and made private, since clients no
+ longer need to call it.
+
+ * class.c: Removed calls to mono_assembly_load_references, since it was
+ a source of deadlocks.
+
+ * loader.h loader.c class.h class.c: Protect data structures using a
+ new lock, the loader lock.
+
+ * class.c (mono_class_setup_vtable): Create temporary hash tables and
+ GPtrArrays only when needed.
+
+ * class.c (mono_class_layout_fields): Ignore the dummy field inserted
+ into empty structures by mcs. Fixes pinvoke7.cs.
+
+ * domain.c (mono_init): Call a new initialization function.
+
+ * appdomain.c (mono_runtime_init): Call the new initializer function
+ of the marshal module.
+
+ * marshal.c (mono_marshal_load_type_info): Ignore the dummy field
+ inserted into empty structures by mcs. Fixes pinvoke7.cs.
+
+ * marshal.h marshal.c: Added locks around the wrapper caches to make
+ this module thread safe.
+
+ * icall.c (ves_icall_InternalInvoke): Method wrappers doesn't require a
+ this argument. Fixes pinvoke1.exe.
+
+2003-08-25 Lluis Sanchez <lluis@ximian.com>
+
+ * object.h: Added call_type field to MonoMethodMessage and the corresponding
+ enumeration of values. Removed fields to store remote call output values in
+ MonoAsyncResult. Not needed any more.
+ * object.c: Initialize call_type and async_result fields in mono_message_init.
+ * marshal.c: mono_delegate_begin_invoke(): for proxies, set call_type before
+ dispatching the message.
+ mono_delegate_end_invoke (): delegate to the proxy the work of waiting for the
+ async call to finish. To do it use a message with EndInvoke call type.
+
+2003-08-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.h loader.c (mono_method_hash_marhal_info): New function which
+ determines whenever a method has marshalling info.
+
+2003-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * assembly.c: fix the build on windows.
+
+2003-08-22 Lluis Sanchez <lluis@ximian.com>
+
+ * object.cs: Fixed bug #47785.
+
+2003-08-22 Jackson Harper <jackson@latitudegeo.com>
+
+ * string-icalls.c (StringReplace): If their are no occurances of
+ the old string found return a reference to the supplied
+ string. This saves some memory and matches MS behavoir.
+
+2003-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: fixed compilation for systems that define AF_INET6
+ and don't define SOL_IP/SOL_IPV6.
+
+2003-08-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_object_isinst): Fix casts to TransparentProxy in
+ the interpreter. Patch by Bernie Solomon (bernard@ugsolutions.com).
+
+ * rawbuffer.c rawbuffer.h: Make this module thread safe.
+
+ * domain.c: Make this module thread safe.
+
+ * domain.c (mono_init): Call new initialization function.
+
+ * icall.c (ves_icall_System_Array_SetValueImpl): Check types for
+ reference types too. Fixes #38812.
+
+ * image.c (mono_image_init): Fixed warnings.
+
+ * class.c (mono_class_from_typeref): Handle assembly load failure
+ correctly.
+
+ * appdomain.c (add_assemblies_to_domain): Handle the case when
+ the references of an assembly are not yet loaded.
+
+ * metadata.c image.c assembly.c: Moved initialization of global
+ variables to a separate function called at startup since lazy
+ initialization of these variables is not thread safe.
+
+ * image.c assembly.c: Made this module thread safe by adding locks in
+ the appropriate places.
+
+ * domain.c (mono_init): Call the new initialization functions of the
+ three modules.
+
+2003-08-20 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * marshal.c: mono_delegate_begin_invoke(): If the target is a proxy,
+ make a direct call. It is proxy's work to make the call asynchronous.
+ mono_delegate_end_invoke(): If the targe is a proxy, just collect
+ the return values.
+ * object.cs: mono_method_call_message_new(): read AsyncResult and
+ state object from parameters list, if this info is requested.
+ * object.h: Added fields to store remote call output values in
+ MonoAsyncResult. Added AsyncResult field in MonoMethodMessage.
+
+Wed Aug 20 12:57:42 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.h: add needed fields to MonoThread.
+ * threads.c, threads.h: allow registering a function to cleanup data
+ allocated per thread by the JIT.
+
+Tue Aug 19 18:22:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * loader.h: portability fix by Bernie Solomon
+ * <bernard@ugsolutions.com>.
+
+2003-08-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h reflection.c (mono_param_get_objects): Changed this to
+ return a MonoArray. This simplifies the code and also ensures that
+ the cache allways contains an object reference as a value.
+
+ * icall.c (ves_icall_get_parameter_info): Simplified using the new
+ function.
+
+2003-08-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: patch by Bernie Solomon <bernard@ugsolutions.com> that
+ fixes a problem with byte ordering when getting the address family for
+ a socket.
+
+2003-08-15 Zoltan Varga <vargaz@freemail.hu>
+
+ * .cvsignore: Added monosn.
+
+ * reflection.h reflection.c loader.c: Added support for parameter
+ marshalling to dynamically created types. Fixes #47295.
+
+Fri Aug 15 11:42:46 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * rand.c: remove useless warnings.
+
+Wed Aug 13 15:49:57 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: implemented ldtoken for methods and fieldrefs.
+
+2003-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: when mono_async_invoke was called, no one took care of
+ monitoring the queue. So if the method invoked took some time and we
+ got new async invoke requests after 500 ms (the thread created waited
+ that long in WaitForSingleObject), the new async invoke was not called
+ until the previous one finished.
+
+ This is fixed now. Thanks to Totte for helping with it.
+
+2003-08-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threadpool.c: set threadpool_thread to TRUE. Patch by totte.
+
+2003-08-11 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_lookup_type): New function.
+
+2003-08-06 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c: Added support for static fields,
+ properties and methods.
+
+2003-08-06 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c: Don't store the MonoString's vtable to
+ make this work for applications with multiple application domains.
+
+2003-08-04 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c: Completely reworked the type support; the
+ most important thing is that we're now just using one single
+ `MonoType' instance per type.
+
+Sat Aug 2 13:05:27 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
+
+ * mono-endian.h, mono-endian.c, icall.c: Added icall
+ ves_icall_System_Double_AssertEndianity to assert double word endianity
+ on ARM (FPA). The icall uses a macro defined in mono-endian.h.
+
+Fri Aug 1 16:51:13 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, class.h, reflection.c, metadata.c, icall.c: more generics
+ support, icalls and fixes.
+
+2003-07-31 Miguel de Icaza <miguel@ximian.com>
+
+ * unicode.c (ves_icall_System_Char_IsPunctuation): The set of
+ classes that are a punctuation character in .NET is not the same a
+ g_unichar_ispunct.
+
+Tue Jul 29 18:07:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * socket-io.c: ipv6 portability fixes from Felix Ortga (guile@lared.es).
+
+2003-07-29 Miguel de Icaza <miguel@ximian.com>
+
+ * icall.c: Add new MemCopy internalcall.
+ (ves_icall_System_Reflection_Assembly_GetManifestResourceInternal):
+ Simplified code; It is not necessary to handle all the cases here,
+ as the C# code takes care of it. Only handle the case of the name
+ resource embedded into the assembly.
+
+ Changed signature to return the data pointer and the size of the
+ data.
+
+2003-07-26 Miguel de Icaza <miguel@ximian.com>
+
+ * reflection.c (mono_image_get_method_info): Allow for 0x40 to be
+ encoded. (Partition II.22.1.7: PInvokeAttribute:SupportsLastErr).
+
+2003-07-29 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * socket-io.c: ignore EINTR error in select.
+
+Tue Jul 29 15:25:01 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.h, class.c: removed unused subclasses field in MonoClass.
+
+2003-07-29 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * icall.c: improve fix of get_base_definition(). If the parent class
+ doesn't have the mehod, look at the parent of the parent.
+ * object.c: mono_message_init(): use the attribute PARAM_ATTRIBUTE_OUT
+ to check if a parameter is an in or out parameter
+ (PARAM_ATTRIBUTE_IN is not set by default).
+ mono_method_return_message_restore(): Use mono_class_value_size to
+ get the size of a value type. mono_type_stack_size (parameterType)
+ does not return the correct value if parameterType is byRef.
+ mono_load_remote_field(), mono_load_remote_field_new(),
+ mono_store_remote_field(), mono_store_remote_field_new():
+ raise exception if the remote call returns an exception.
+
+2003-07-28 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_runtime_invoke): New
+ method. This is a wrapper around mono_runtime_invoke() which
+ boxes the instance object if neccessary.
+
+Fri Jul 25 19:14:13 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, class.h, image.c, image.h, loader.c, metadata.c,
+ metadata.h, row-indexes.h, verify.c: first cut of generics support.
+
+Thu Jul 24 11:34:20 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: disable mcs bug workaround.
+
+2003-07-21 Miguel de Icaza <miguel@ximian.com>
+
+ * object.c (mono_runtime_class_init): Take the metadata_section
+ mutex before obtaining the domain mutex.
+
+ * appdomain.h: Added definition of metadata_section mutex here.
+
+ * object.c: define metadata_mutex here.
+
+2003-07-24 Ravi Pratap <ravi@ximian.com>
+
+ * icall.c: Remove the FIXED_MCS_45127 workarounds - this has been
+ fixed.
+
+2003-07-24 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * reflection.c: Fix bug #46669
+
+2003-07-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * exception.c:
+ * exception.h:
+ * icall.c:
+ * object.h: fill in the type name for TypeLoadException.
+
+2003-07-23 Ravi Pratap <ravi@ximian.com>
+
+ * class.c: Fixes from Paolo in response to bug #45415 (Subclass
+ relationship between TypeBuilders while compiling corlib) and bug
+ 45993 (Array types returned from the runtime while compiling
+ corlib were from the loaded corlib).
+
+2003-07-22 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c: Reworked the type support a bit more;
+ distinguish between types and classes.
+
+Tue Jul 22 15:48:50 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: add IsArrayImpl icall.
+
+2003-07-22 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_class_layout_fields): Fix gc aware auto layout by
+ initializing real_size only once. Also fix bug #46602.
+
+2003-07-21 Jerome Laban <jlaban@wanadoo.fr>
+
+ * object.c: Renamed mono_metadata_section to metadata_section.
+
+2003-07-21 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * icall.c: in MS.NET ves_icall_Type_GetInterfaces returns an
+ empty array if the type is an array. Fixed.
+ ves_icall_MonoMethod_get_base_definition: if the base method
+ is abstract, get the MethodInfo from the list of methods of
+ the class.
+ * reflection.c: ParameterInfo.PositionImpl should be zero-based
+ and it was 1-based. Fixed in mono_param_get_objects.
+
+2003-07-20 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.h: Set version number to 31.
+ (mono_debug_init): Added `MonoDomain *' argument.
+
+ * mono-debug-debugger.c: Reworked the type support; explicitly
+ tell the debugger about builtin types; pass the `klass' address to
+ the debugger.
+
+2003-07-20 Jackson Harper <jackson@latitudegeo.com>
+
+ * image.c: Allow new metadata tables to be loaded without a
+ warning. Also update the warning message to give the new constant value.
+
+Fri Jul 18 13:12:21 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, class.h, debug-helpers.c, icall.c, image.c, marshal.c,
+ metadata.c, metadata.h, mono-debug-debugger.c, object.c, reflection.c:
+ array type representation changes.
+
+Fri Jul 18 11:26:58 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c, appdomain.h, appdomain.c: support full runtime shutdown
+ on Environment.Exit () call.
+
+Thu Jul 17 17:21:57 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c, reflection.h, reflection.c, verify.c: cleanups,
+ requires a matching corlib.
+
+2003-07-17 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * Changelog: My editor decided to add a CR to each line. Sorry about that.
+ Committed again without the CRs.
+
+2003-07-17 Lluis Sanchez Gual <lluis@ximian.com>
+
+ * socket-io.c: Get system_assembly using mono_image_loaded(), instead
+ getting it from the "this" socket instance. Did not work
+ if the socket is a subclass of Socket.
+ Also fixed bug #35371.
+
+Thu Jul 17 13:39:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c: fixed size for TypedByRef.
+ * loader.c: when searching for a method, consider the vararg amrker.
+ * unicode.c, decimal.c: constify some arrays.
+
+2003-07-15 Dick Porter <dick@ximian.com>
+
+ * socket-io.c: Fixed compilation for gcc < 3.2.
+
+ Fixed compilation for machines that don't have AF_INET6 (thanks to
+ Bernie Solomon <bernard@ugsolutions.com> for that part.)
+
+ Fixed compile warnings.
+
+ Fixed formatting and line endings.
+
+2003-07-14 Jerome Laban <jlaban@wanadoo.fr>
+
+ * socket-io.h:
+ * socket-io.c: Added IPv6 support.
+
+2003-07-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_class_is_assignable_from): New function to implement
+ the is_assignable_from logic. Used by mono_object_isinst,
+ Type::IsAssignableFrom () and the interpreter.
+
+ * class.c (mono_class_is_subclass_of): Make all classes a subclass of
+ Object, even interfaces.
+
+ * object.c (mono_object_isinst): Implement in terms of
+ is_assignable_from.
+
+ * icall.c (ves_icall_type_is_assignable_from): New icall.
+
+2003-07-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * domain.c (foreach_domain): fix compiler warning.
+
+2003-07-11 Dietmar Maurer <dietmar@ximian.com>
+
+ * image.c (load_metadata_ptrs): use g_strndup because strndup is
+ not available on all plattforms
+
+2003-07-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.h image.c: Store the metadata version string in MonoImage.
+ * icall.c: New icall to retrieve the image version.
+ * reflection.c (create_dynamic_image): Fill in the image version field
+ * reflection.c (build_compressed_metadata): Use the image version
+ from the image structure.
+
+2003-07-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: modified comment.
+ * gc.c: finalizer_thread can call finalizers even when finished == TRUE.
+ That will be its last iteration when mono_gc_cleanup is called from
+ mono_runtime_cleanup and before the domain is unloaded.
+
+ Fixes bug #45962.
+
+2003-07-04 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): fixes for [out]
+ attributes.
+
+Thu Jul 3 17:22:20 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.c, file-io.c, metadata.c, mono-endian.h, reflection.c,
+ rawbuffer.c: more 64 bit and picky (or old) compiler fixes from
+ Bernie Solomon <bernard@ugsolutions.com>.
+
+Thu Jul 3 17:17:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.c, object.h: provide mono_object_new_fast() for faster
+ allocation in some special cases.
+
+Wed Jul 2 13:21:26 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.h, reflection.h, verify.c: fixes for some 64bit issues,
+ mostly from a patch by Laramie Leavitt <lar@leavitt.us>.
+
+Tue Jul 1 21:24:14 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * threadpool.c: fix leaks.
+
+2003-07-01 Dick Porter <dick@ximian.com>
+
+ * threadpool.c (mono_async_invoke): Use mono_g_hash_table_remove when
+ using MonoGHashTables. Fixes threadpool bug posted to list.
+
+Tue Jul 1 11:45:40 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * image.h, image.c: added support to load an assembly from a byte array.
+ * Makefile.am, assembly.c, make-bundle.pl, sample-bundle: added
+ assembly bundle support.
+
+2003-06-27 Dietmar Maurer <dietmar@ximian.com>
+
+ * threadpool.c (mono_thread_pool_add): keep a reference to the
+ AsyncResult to prevent GC
+
+Thu Jun 26 12:13:25 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: leak fix.
+
+2003-06-25 Dick Porter <dick@ximian.com>
+
+ * threadpool.c (mono_thread_pool_add): Don't set up a finaliser
+ for the async object, the WaitHandle object will close the handle.
+ Fixes bug 45321.
+
+Wed Jun 25 18:12:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: in mono_array_class_get (), lookup from the hash with the
+ same type we insert: this works around a bug in
+ mono_metadata_type_hash() with SZARRAY and fixes a leak reported by
+ lluis. The real fix will have to wait for after the release.
+
+Wed Jun 25 13:14:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: fix memory leak when getting type members.
+
+Mon Jun 23 16:12:48 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: added more pubtoken special cases.
+
+Mon Jun 23 15:29:06 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: handle field offset correctly when class size
+ is set (bug# 45182, partially from a patch by jlaban@wanadoo.Fr (Jerome Laban)).
+
+2003-06-20 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.h (MonoDebuggerSymbolFile): Added `MonoImage
+ *image' field.
+
+2003-06-20 Martin Baulig <martin@ximian.com>
+
+ * image.h, mono-debug-debugger.h: Fixed compiler warnings.
+
+2003-06-20 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.h (MONO_DEBUG_VAR_ADDRESS_MODE_STACK): Removed. We
+ just distinguish between variables in registers and variables at
+ an offset relative to a register.
+
+2003-06-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: #ifdef out latest changes until mcs is fixed.
+
+Thu Jun 19 11:03:42 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: return members in metadata order.
+
+Wed Jun 18 15:26:58 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: avoid infinite loop in GetTimeZoneData.
+
+Wed Jun 18 12:47:43 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: added Marshal.Prelink/All icalls.
+
+Wed Jun 18 12:17:48 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.c, object.h: fix warnings and do some overflow checking
+ when creating arrays.
+
+2003-06-17 Dick Porter <dick@ximian.com>
+
+ * file-io.h:
+ * file-io.c: File attributes need to be tweaked slightly when
+ passed from the managed to the w32 world.
+
+2003-06-17 Zoltan Varga <vargaz@freemail.hu>
+ * profiler.h profiler-private.h profiler.c: Rework last patch
+ based on suggestion by Paolo.
+
+2003-06-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * profiler.h profiler-private.h profiler.c: Added infrastructure for
+ instruction level coverage data collection.
+ * profiler.h profiler.c (: Added new callback function which can be
+ used by the profiler to limit which functions should have coverage
+ instrumentation.
+ * profiler.c (mono_profiler_load): Call g_module_build_path to
+ generate the file name of the profiler library.
+
+Mon Jun 16 18:11:13 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * profiler.c, profiler.h, profiler-private.h: added basic block
+ coverage profiling API.
+
+2003-06-15 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_create_runtime_class): Add support
+ for events in dynamically generated code.
+
+ * gc.c: Start GCHandle indexes from 1, since 0 means the handle is
+ not allocated.
+
+Sat Jun 14 19:01:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: when getting timezone info, return reasonable values if we
+ can't get the actual data.
+
+2003-06-14 Dick Porter <dick@ximian.com>
+
+ * threads.c (start_wrapper): Remove the reference to the thread
+ object in the TLS data, so the thread object can be finalized.
+ This won't be reached if the thread threw an uncaught exception,
+ so those thread handles will stay referenced :-( (This is due to
+ missing support for scanning thread-specific data in the Boehm GC
+ - the io-layer keeps a GC-visible hash of pointers to TLS data.)
+
+Sat Jun 14 13:16:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: ensure streams and tables are first allocated with
+ ALLOC_ATOMIC (GC_realloc uses plain GC_malloc otherwise).
+
+Sat Jun 14 13:13:20 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: fixed GetElementType for byrefs (bug# 44792).
+
+2003-06-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_create_runtime_class): Add support for
+ properties to dynamically created classes.
+ * reflection.c: Fix a few places where non-MonoObjects were inserted
+ into the tokens hashtable.
+
+Fri Jun 13 19:10:55 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: some support to handle out of memory exceptions.
+
+2003-06-12 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): support reference
+ return types
+
+Wed Jun 11 18:32:51 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.h, object.c: more portability stuff from Bernie Solomon.
+ Unexport mono_object_allocate(). Added mono_object_unbox ().
+ Set exitcode when an unhandled exception is thrown.
+
+2003-06-11 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): use custom
+ marshaler for return types.
+
+2003-06-10 Dick Porter <dick@ximian.com>
+
+ * socket-io.c: Don't assume that one of struct ip_mreqn or struct
+ ip_mreq is available
+
+Tue Jun 10 17:35:03 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * debug-mono-symfile.c, marshal.c, metadata.c, monitor.c,
+ mono-debug-debugger.c, mono-debug.c, process.c: portability fixes
+ by Bernie Solomon <bernard@ugsolutions.com>.
+
+2003-06-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c (mono_gc_init): Avoid error message on shutdown when
+ GC_DONT_GC=1 is used.
+
+ * icall.c (ves_icall_System_Reflection_Module_GetGuidInternal):
+ New icall to return the GUID of a module.
+
+Mon Jun 9 19:33:51 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: ensure instance size always includes the parent's size
+ even whem class size is set explicitly (fixes bug#44294).
+
+Thu Jun 5 19:51:49 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * profiler.h, profiler.c: made the simple profiler thread-safe,
+ get more accurate timing info. Allow the loading of an
+ externally-developed profiler module.
+
+2003-06-05 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): improved
+ class/byref arguments.
+ (mono_marshal_get_native_wrapper): better string marshaling support.
+
+Wed Jun 4 18:01:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: ensure .pack and .size are handled correctly and
+ simplified layout of static fields.
+
+2003-06-04 Dietmar Maurer <dietmar@ximian.com>
+
+ * appdomain.c
+ (ves_icall_System_AppDomainSetup_InitAppDomainSetup): fix for bug 42934
+
+ * loader.c (mono_lookup_pinvoke_call): look for modules in the
+ current directory (fix bug 44008)
+
+2003-06-03 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): started support for
+ custom marshalers.
+ (mono_delegate_to_ftnptr): consider marshalling specifications
+
+Tue Jun 3 11:17:02 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c, reflection.h: emit custom marshal info.
+
+2003-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c: free the GError.
+ * icall.c: added CloseEvent_internal.
+ * threads.[ch]:
+ (ves_icall_System_Threading_Events_CloseEvent_internal): new internal
+ call.
+
+2003-06-01 Zoltan Varga <vargaz@freemail.hu>
+
+ * loader.c (mono_method_get_signature): Add support for dynamic
+ assemblies.
+
+Sat May 31 15:22:07 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fixed bug #43905.
+
+Fri May 30 12:56:29 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, domain.c, icall.c, metadata.h, object.h: support for
+ handling TypedReference and ArgIterator.
+ * loader.c, loader.h: added function to get signature at call site.
+
+Thu May 29 11:34:55 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c, metadata.h, private.h, tokentype.h, loader.c: make more
+ data readonly. Buglets and warning fixes. Some MethodSpec support.
+
+Tue May 27 16:34:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.h, class.c, object.c: remove relative numbering support.
+
+2003-05-26 Miguel de Icaza <miguel@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): For now, do not
+ free the string, until we get a chance to fix Gtk#
+
+2003-05-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * marshal.c: revert last patch.
+
+Mon May 26 20:21:52 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: updates for new mono_class_vtable() not calling
+ the type constructor anymore.
+
+Mon May 26 12:10:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.h, object.c: separate vtable creation from type
+ initialization. Make running the .cctor thread safe.
+
+2003-05-26 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): free string return values.
+
+2003-05-21 Dietmar Maurer <dietmar@ximian.com>
+
+ * loader.c (mono_get_method): consider calling convention
+
+2003-05-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_Module_GetGlobalType): New icall
+ to return the invisible global type for a module.
+
+ * reflection.c (mono_image_build_metadata): Emit global fields too.
+
+2003-05-20 Peter Williams <peterw@ximian.com>
+
+ * loader.c (mono_lookup_internal_call): Add a few newlines.
+
+2003-05-20 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_lookup_dynamic_token): Intern dynamic
+ literal strings.
+
+ * appdomain.c (set_domain_search_path): Recalculate search path when
+ AppDomainSetup.PrivateBinPath changes.
+
+ * object.c (mono_class_compute_gc_descriptor): It turns out some
+ parts of the class libs (like System.Thread) holds pointers to
+ GC_MALLOC()-d memory in IntPtrs, which is wrong. The workaround is
+ to treat native int a pointer type here.
+
+Tue May 20 17:18:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h, domain.c: add hashtable for jump target resolution.
+
+2003-05-19 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h reflection.c icall.c: Added new icalls
+ GetManifestResourceInfoInternal, GetModulesInternal and support
+ infrastructure.
+
+2003-05-16 Dick Porter <dick@ximian.com>
+
+ * icall.c:
+ * file-io.h:
+ * file-io.c: Implement System.IO.MonoIO::GetTempPath
+
+2003-05-14 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * object.c: mono_store_remote_field: little fix to previous patch.
+
+Wed May 14 18:10:42 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: add constructors to array classes.
+ * icall.c: special case array construction for InternalInvoke (),
+
+2003-05-14 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.h class.c reflection.c object.c: Added support for field
+ defaults in dynamically generated classes.
+
+Wed May 14 13:35:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: properly encode charset for ddlimport.
+
+Wed May 14 11:14:54 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c: allow compiling without GC.
+
+Tue May 13 16:41:49 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h, object.c, object.h, threads.c, threads.h: added
+ handling of thread static data.
+
+Tue May 13 16:36:08 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.h, reflection.c: added mono_custom_attrs_free ().
+
+2003-05-13 Dietmar Maurer <dietmar@ximian.com>
+
+ * class.c (mono_array_class_get): always set the serializable flags
+ (mono_array_class_get): always set the SEALED attribute for array types
+
+2003-05-12 Dietmar Maurer <dietmar@ximian.com>
+
+ * loader.c (mono_lookup_pinvoke_call): consider Ansi/Unicode
+ attributes (fix for bug 42021).
+
+2003-05-12 Dick Porter <dick@ximian.com>
+
+ * gc.c: Don't run finalizers when the finalizer thread is
+ finishing up, because the default domain has already been
+ destroyed.
+
+2003-05-11 Miguel de Icaza <miguel@ximian.com>
+
+ * string-icalls.c (ves_icall_System_String_ctor_chara_int_int): if
+ value is null, we should throw an exception. This is slightly
+ different than the other conventions used for the constructor.
+
+2003-05-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: fixed windows build.
+
+2003-05-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: patch by Jerome Laban that fixes bug #42393.
+
+2003-05-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_string_new_wrapper): Compatibility fix for MS
+ compilers.
+
+2003-05-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_class_layout_fields): Add experimental GC aware
+ auto layout facility. Requires class library changes to work correctly.
+
+ (mono_class_setup_vtable): Avoid overriding explicit interface
+ method implementations. Fixes iface3.exe test.
+
+ * object.c (mono_class_compute_gc_descriptor): Type I can't hold an
+ object reference.
+ (mono_array_new_specific): Add MONO_ARCH_SAVE_REGS.
+ (mono_string_new_wrapper): Add MONO_ARCH_SAVE_REGS.
+
+ * metadata.h: Add new type classification macro which determines
+ whenever the type holds an object reference.
+
+2003-05-08 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): cleanups
+
+2003-05-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * gc.c (finalizer_thread): Work around a GC bug.
+
+2003-05-07 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (emit_struct_conv): allow unions
+
+ * class.c (class_compute_field_layout): added patches from Jerome Laban <jlaban@wanadoo.fr>
+
+2003-05-06 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): free strings after pinvoke
+
+2003-05-06 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.h: #include <mono/io-layer/io-layer.h>.
+
+2003-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c:
+ (Select_internal): allow NULLs, don't create arrays if not needed.
+ Coupled with Socket.cs changes.
+
+ * threadpool.c:
+ (mono_thread_pool_add): use GC_MALLOC to allocate the ASyncCall and
+ register a finalizer for it that will close the semaphore handle. This
+ fixes the leak and make Lupus' test run with > 4080 loops.
+
+2003-05-05 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_struct_to_ptr): added fixes from
+ Jerome Laban (bug #42287)
+
+2003-05-02 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h
+ (MonoSymbolFile): Moved declaration into mono-debug.h.
+ (MonoDebugMethodJitInfo): Likewise.
+ (mono_debug_open_mono_symbol_file): Take the MonoDebugHandle as
+ argument.
+ (_mono_debug_address_from_il_offset): Take a
+ MonoDebugMethodJitInfo instead of a MonoDebugMethodInfo.
+
+ * mono-debug.h
+ (MonoDebugDomainData): New struct.
+ (mono_debug_get_domain_data): New function.
+ (mono_debug_add_method): Take an additional `MonoDomain *'
+ argument.
+ (mono_debug_source_location_from_address): Likewise.
+ (mono_debug_il_offset_from_address): Likewise.
+ (mono_debug_address_from_il_offset): Likewise.
+
+Thu May 1 19:40:37 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: one more check for null type in custom attrs.
+
+2003-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c: avoid warning (comparison is always false due to limited
+ range of data type).
+
+2003-05-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: throw an exception in Type.GetField if the argument 'name'
+ is NULL.
+
+Wed Apr 30 10:53:09 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fixed handling of enums in named arguments to custom
+ attributes (bug #42123).
+
+Tue Apr 29 19:15:10 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: use the right array element type and handle
+ a null for a Type argument, too.
+
+Tue Apr 29 15:46:00 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: handle arrays as arguments to custom attributes.
+
+Tue Apr 29 11:43:01 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: handle a string value in a custom attr
+ ctor that takes an object.
+
+2003-04-29 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_mb_emit_restore_result): support MONO_TYPE_PTR
+ (fix bug #42063)
+
+2003-04-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_Type_GetNestedType): Fixed warnings.
+
+2003-04-27 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.h (MonoDebuggerEvent): Renamed
+ MONO_DEBUGGER_EVENT_BREAKPOINT_TRAMPOLINE to
+ MONO_DEBUGGER_EVENT_BREAKPOINT.
+ (mono_breakpoint_trampoline_code): Removed.
+ (mono_debugger_event_handler): The last argument is now a
+ `guint32'.
+ (mono_debugger_insert_breakpoint_full): Removed the
+ `use_trampoline' argument.
+ (mono_debugger_method_has_breakpoint): Likewise.
+ (mono_debugger_trampoline_breakpoint_callback): Renamed to
+ mono_debugger_breakpoint_callback(); take the method and
+ breakpoint number as arguments.
+
+Sat Apr 26 19:25:31 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c: fix off by one when loading parameters attributes.
+
+2003-04-24 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c (mono_debugger_io_layer): Put this back.
+
+2003-04-24 Martin Baulig <martin@ximian.com>
+
+ * mono-debug-debugger.c: Moved all code which interacts with the
+ Mono Debugger here.
+
+ * debug-mono-symfile.c: This code now just deals with the symbol
+ file itself, the debugger code is now in mono-debug-debugger.c.
+
+2003-04-23 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.c (mono_debug_source_location_from_il_offset):
+ New method; like mono_debug_source_location_from_address(), but
+ takes an IL offset instead of a machine address.
+
+2003-04-23 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h (MonoDebugLineNumberEntry): Removed the
+ `line' field; this is now computed by the debugger.
+
+2003-04-23 Martin Baulig <martin@ximian.com>
+
+ * mono-debug.[ch]: New files. This is the new debugging interface.
+
+ * mono-debug-debugger.[ch]: New files. Moved all code which
+ interacts with the Mono Debugger here.
+
+2003-04-22 Dietmar Maurer <dietmar@ximian.com>
+
+ * domain.c (mono_init): initialize mono_defaults.monitor_class
+
+2003-04-21 Miguel de Icaza <miguel@ximian.com>
+
+ * reflection.c (method_encode_code): Add a spicy exception to help
+ future compiler authors.
+
+2003-04-21 Martin Baulig <martin@ximian.com>
+
+ * icall.c
+ (ves_icall_System_Reflection_Assembly_GetReferencedAssemblies):
+ Make this work with relative pathnames; g_filename_to_uri() needs
+ an absolute filename.
+
+2003-04-18 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c: Track name changes in Object and ValueType.
+
+2003-04-18 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.c (mono_type_stack_size): size should be a multiple of
+ sizeof (gpointer)
+
+2003-04-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * gc.c:
+ (internal_domain_finalize): moved into mono_domain_finalize. No need
+ to create another thread because the finalizers will be run in the
+ finalizer thread.
+
+ (ves_icall_System_GC_WaitForPendingFinalizers): implemented.
+ (finalizer_notify): if shutting down, wait 2 seconds for the finalizers
+ to be run (MS does this too).
+
+2003-04-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_class_compute_gc_descriptor): Update comment.
+
+ * loader.h marshal.h marshal.c: Added synchronized method wrappers.
+
+ * image.h: Add synchronized wrapper cache.
+
+ * image.c (do_mono_image_open): Initialize cache.
+
+ * reflection.c (create_dynamic_mono_image): Initialize cache.
+
+2003-04-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: patch by Jerome Laban <jlaban@wanadoo.fr> that fixes
+ ves_icall_System_Buffer_ByteLengthInternal.
+
+Tue Apr 15 13:56:55 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: setup klass->nested_in earlier. Allow
+ a dash in the assembly name.
+
+2003-04-15 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.c (mono_type_to_unmanaged): dont access
+ type->data.klass for MONO_TYPE_OBJECT
+ (mono_type_to_unmanaged): consider System.Delegate class
+
+Tue Apr 15 11:16:05 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: just setup supertypes in the proper place instead of
+ initializing the full element class for arrays.
+
+Tue Apr 15 11:03:25 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: ensure the element class of arrays is initialized.
+ Setup the supertype info for array classes, too.
+
+2003-04-14 Miguel de Icaza <miguel@ximian.com>
+
+ * icall.c (ves_icall_Type_GetNestedType): Add new internal call.
+
+2003-04-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am: re-added -m option when running cygpath. This way,
+ MONO_ASSEMBLIES and MONO_CFG_DIR will contain '/' as directory
+ separator.
+ * mono-config.c: same codepath for locating mono config file for WIN32
+ and the rest.
+ * assembly.c: if mono_assembly_setrootdir is called, don't override
+ the value set.
+
+2003-04-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am: patch by Urs Muff <umuff@quark.com> that fixes
+ MONO_ASSEMBLIES variable.
+
+Fri Apr 11 12:44:15 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: added Assembly::GetNamespaces() icall.
+
+2003-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c: fix from Jaak <jaak@zd.com.pl>.
+
+2003-04-10 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * appdomain.c,appdomain.h,icall.c: Added internal method that returns the process guid
+ * object.c: fixed bug in the construction of vtable for proxies
+
+2003-04-10 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c (mono_array_new): Mark mono_array_new as an icall.
+
+2003-04-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * class.c: fixed test for public method when overriding interfaces.
+ Closes bug #40970.
+
+Wed Apr 9 15:19:41 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h, domain.c: added mono_domain_foreach() to
+ be able to access the currently loaded appdomains.
+ * object.c: make string interning work across sppdomains.
+ Mark some functions for use as icalls.
+
+2003-04-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c reflection.c: Fix memory leaks reported by ccmalloc.
+
+ * reflection.h reflection.c: Allocate long living data using
+ GC_MALLOC_ATOMIC so the collector does not need to scan it.
+
+ * reflection.c: Double the allocation size in streams instead of
+ increasing it, to prevent unneccesary copying on large assemblies.
+
+ * reflection.c (mono_reflection_create_runtime_class): Avoid vtable
+ creation if the assembly does not have the Run flag set.
+
+Tue Apr 8 11:19:53 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.h: avoid the C++ keywords in header files (Jerome Laban
+ spotted and fixed this).
+
+2003-04-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c:
+ (mono_unhandled_exception): fill in the arguments for the
+ UnhandledException event. Only trigger that event for the default
+ domain (as MS does).
+
+2003-04-04 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c: Improve typed allocation stuff based on suggestions from
+ Paolo. Also turn it on if the GC library supports it.
+
+2003-04-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.c object.h class.h: Added experimental typed allocation
+ facility using the interfaces in gc_gcj.h.
+
+ * os/gc_wrapper.h: Added new include files.
+
+2003-04-03 Martin Baulig <martin@ximian.com>
+
+ All the following changes are conditional to `WITH_INCLUDED_LIBGC'
+ which is not yet enabled by default.
+
+ * gc.c (mono_gc_init): Set the gc_thread_vtable to our thread
+ functions.
+ (mono_gc_lock, mono_gc_unlock): New static functions.
+
+ * threads.c (mono_gc_stop_world, mono_gc_start_world): New public
+ functions; stop/start the world for the garbage collector. This
+ is using the windows API; we need to complete the SuspendThread()/
+ ResumeThread() implementation in the io-layer to make this work on Unix.
+ (mono_gc_push_all_stacks): New public function; tells the garbage
+ collector about the stack pointers from all managed threads.
+
+2003-04-03 Martin Baulig <martin@ximian.com>
+
+ * object.h (MonoThread): Added `gpointer stack_ptr'.
+
+ * threads.c (start_wrapper): Save the stack pointer in `stack_ptr'.
+
+2003-04-03 Martin Baulig <martin@ximian.com>
+
+ * Makefile.am: It's called `cygpath -w', not `cygpath -m'.
+
+2003-04-03 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (typebuilder_setup_fields): Initialize field.first and
+ field.last.
+
+2003-04-02 Miguel de Icaza <miguel@ximian.com>
+
+ * loader.c (mono_lookup_internal_call): Report the corlib that is
+ out of sync.
+
+2003-03-05 Aleksey Demakov <avd@openlinksw.com>
+
+ * icall.c (ves_icall_type_GetTypeCode): fixed check for
+ System.DBNull (it's class not valuetype).
+
+Wed Apr 2 18:37:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: set table_idx in MonoReflectionArrayMethod object even
+ if the array method was already assigned a token (fixes bug#40646).
+
+2003-04-02 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_get_type): Attempt type resolve even
+ if no assembly is given.
+
+2003-04-01 Miguel de Icaza <miguel@ximian.com>
+
+ * metadata.h: Added the new tables.
+
+ * row-indexes.h: Added definitions for new tables.
+
+ * metadata.c: Add schemas for new tables, and add support for
+ computing the sizes of them.
+
+ * class.c: Update for handling the new type cases.
+
+2003-04-01 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.h (MONO_TYPE_IS_VOID): new macro
+
+2003-03-31 Martin Baulig <martin@ximian.com>
+
+ * threads.h (MonoThreadCallbacks): Added `thread_created'.
+
+ * threads.c (mono_thread_new_init): Call `thread_created' in the
+ mono_thread_callbacks.
+
+2003-03-31 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * loader.h: added marshalbyrefobject_class to mono_defaults
+ * domain.c: added initialization of mono_defaults.marshalbyrefobject_class
+ * icall.c: ves_icall_InternalExecute: fixed bug in field setter and in the
+ generation of output parameters.
+ ves_icall_Remoting_RealProxy_GetTransparentProxy: added support for interfaces.
+ * marshal.c: mono_remoting_wrapper(): avoided call through proxy when the type is
+ contextbound and the target object belongs to the context of the caller.
+ * object.h: added context and unwrapped_server variables in MonoRealProxy.
+ * object.c: Implemented support for interfaces and abstract classes
+ in mono_class_proxy_vtable. Fixed several methods to avoid unneeded calls through
+ proxy. Fixed problem when dealing with output parameters in mono_runtime_invoke_array.
+
+2003-03-30 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.h class.c (mono_class_is_subclass_of): New function.
+
+ * icall.c (ves_icall_System_Array_FastCopy): Added optimized copy
+ routines for most common case (calls from ArrayList::ToArray).
+
+ * icall.c (ves_icall_System_Environment_Exit): Call profiler shutdown
+ routine so programs which call Environment::Exit() can be profiled.
+
+ * icall.c (ves_icall_System_Reflection_FieldInfo_internal_from_handle):
+ Added MONO_ARCH_SAVE_REGS.
+
+ * icall.c (ves_icall_type_is_subtype_of): Use new function.
+
+2003-03-29 Miguel de Icaza <miguel@ximian.com>
+
+ * blob.h: Add a couple of new MonoType types definitions.
+
+ * tabledefs.h: Add a couple of new call convs.
+
+2003-03-27 Zoltan Varga <vargaz@freemail.h>
+
+ * reflection.h (MonoReflectionDynamicAssembly): track changes in
+ the layout of the class.
+
+ * reflection.c (alloc_table): double the size on overflow to avoid
+ unnecessary copying.
+
+ * reflection.h reflection.c: If AssemblyBuilderAccess is Run, then
+ avoid filling out metadata tables and blobs. Also set mb->ilgen to
+ null so it can be garbage collected.
+
+2003-03-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_get_type): Return the resolved type
+ only if it is in the assembly we searched.
+
+ * reflection.c (ensure_runtime_vtable): Initialize method slots.
+
+ * class.c (mono_class_setup_vtable): Set the slot of the overriding
+ method.
+
+2003-03-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c:
+ (set_domain_search_path): allow 'file://blah'. It's an invalid URI,
+ the right one is 'file:///blah', but MS allows it.
+ * assembly.c:
+ (mono_assembly_open): allow 'file://blah'
+
+ Fixes bug #40306. Thanks to Mitko Iliev (imitko@openlinksw.co.uk).
+
+2003-03-26 Aleksey Demakov <avd@openlinksw.com>
+
+ * socket-io.c: fixes bug #40310.
+
+2003-03-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_parse_type): handle deeply nested
+ types correctly.
+
+ * reflection.c (mono_image_create_token): Use unique token values
+ since they will be put into a hash table.
+
+ * class.c (mono_class_setup_vtable): If a method occurs in more than
+ one place in the vtable, and it gets overriden, then change the
+ other occurances too.
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Added support for
+ object as return type.
+
+2003-03-22 Pedro Mart�nez Juli� <yoros@wanadoo.es>
+
+ * icall.c: Deleted "ToString" implementation for double and float
+ because they are full implemented in managed code.
+
+Wed Mar 19 18:05:57 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c, reflection.h: implemented and exported functions
+ to retrieve info about custom attributes.
+
+2003-03-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: moved Uri handling to assembly.c
+ * assembly.c: use g_filename_from_uri (). This makes assembly.LoadFrom
+ work when using a file Uri in *nix and windows.
+
+ * icall.c: fixed Assembly.CodeBase to return a valid Uri. The same for
+ GetReferencedAssemblies.
+
+2003-03-18 Dick Porter <dick@ximian.com>
+
+ * icall.c: Rename a couple of internal calls
+
+ * threads.c: Set the thread state to Stopped when a thread exits.
+ Fixes bug 39377.
+
+2003-03-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_System_Reflection_FieldInfo_internal_from_handle):
+ New icall.
+
+ * object.c (mono_class_vtable): fix warning.
+
+2003-03-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c (ves_icall_type_is_subtype_of): Avoid vtable creation.
+
+ * reflection.c (mono_blob_entry_hash): Avoid reading uninitialized
+ memory.
+ (method_encode_clauses): Create exception info structures in the right
+ order.
+ (mono_reflection_setup_internal_class): Initialize supertypes field.
+
+ * class.c object.c: Handle interfaces which implement other interfaces
+ correctly.
+
+ * class.h class.c: Move the supertypes array initialization code into
+ a separate function so it can be used for dynamic types too. Also call
+ it earlier, in mono_class_init(), since it can be used before the
+ type is initialized.
+
+2003-03-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am:
+ * assembly.c:
+ * icall.c: make MONO_ASSEMBLIES and MONO_CFG_DIR work on windows.
+
+ * appdomain.c:
+ * appdomain.h:
+ * marshal.c:
+ * object.c: remove warnings.
+
+2003-03-13 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h (MonoSymbolFileLexicalBlockEntry): New type.
+ (MonoDebugLexicalBlockEntry): New types.
+
+ * debug-mono-symfile.c
+ (_mono_debug_address_from_il_offset): Moved here from ../jit/debug.c.
+
+2003-03-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * process.c: ret can be any non-zero value accroding to MS doc.
+
+2003-03-07 Miguel de Icaza <miguel@ximian.com>
+
+ * class.c (mono_marshal_load_type_info): Fix buglet: Noticed when
+ fixing a warning for a miss-used prototype, would have cause
+ random memory corruption.
+
+2003-03-07 Martin Baulig <martin@ximian.com>
+
+ * marshal.c (mono_marshal_free_array): That "TESTFREE %p" was
+ getting really annoying ....
+
+2003-03-07 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (fixup_method): added support for array methods.
+
+Tue Mar 4 18:03:27 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * socket-io.c: handle case when AF_INET6 and AF_IPX are not defined
+ (pointed out by Michael Adams).
+
+2003-03-04 Dick Porter <dick@ximian.com>
+
+ * icall.c: Temporarily reverted the Double and Single ToString()
+ change, because it broke nunit.
+
+Tue Mar 4 12:40:58 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.h, threads.h: make include files compatible with C++
+ (patch by Jerome Laban <jlaban@wanadoo.fr>).
+
+2003-03-04 Pedro Mart�nez Juli� <yoros@wanadoo.es>
+
+ * icall.c: Erased ToString helper functions for Double and Single.
+ Now, that implementations ar all in managed code (Double and Single
+ Formatters).
+
+2003-03-03 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * appdomain.c: Added method for initializing the default context of
+ a domain. Added internal call for getting the default context.
+ * appdomain.h: Added context variable in MonoDomain struct.
+ * domain.c: mono_domain_set also sets the default context of the domain
+ * icall.c: Mapped internal method InternalGetDefaultContext.
+ * object.c: mono_object_get_virtual_method returns always a remoting
+ wrapper if the object is a transparent proxy.
+ mono_runtime_invoke_array: when creating an object by calling the
+ constructor, if the created object is a proxy, then the constructor should
+ be called using the a remoting wrapper.
+
+2003-03-03 Dick Porter <dick@ximian.com>
+
+ * socket-io.c (create_sockaddr_from_object): Rename sockaddr_un
+ variable so it compiles on solaris. Problem spotted by
+ Christopher Taylor <ct@cs.clemson.edu>
+
+2003-03-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c:
+ (get_info_from_assembly_name): don't leak value.
+
+ * icall.c:
+ (ves_icall_System_Reflection_Assembly_GetFilesInternal): initialize
+ result.
+
+Sat Mar 1 15:32:56 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * assembly.c: export mono_image_load_references ().
+ * class.c: handle function pointers. mono_class_from_name() now
+ supports nested type names directly.
+
+2003-02-28 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.h reflection.c: Encode already created dynamic methods
+ and fields correctly as a DEF instead of a REF.
+
+ * reflection.c: Get rid of the force_ref argument to
+ mono_image_typedef_or_ref since it was wrong in the first place.
+
+ * string-icalls.c: add error checking to string constructors according
+ to the MSDN docs.
+
+ * reflection.c: Emit types in the order their TypeBuilders were
+ created. Previously, a new table index was assigned to each type before
+ the tables were emitted. This was wrong because the signature blob
+ might already refer to a type by its original table index.
+
+2003-02-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.c (mono_metadata_nesting_typedef): fix bug in previous
+ change.
+
+2003-02-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * Makefile.am: make assemblies dir have \ instead of / on windows.
+
+2003-02-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * metadata.c metadata.h (mono_metadata_nesting_typedef): changed to
+ iterate over the NESTEDCLASS table using a linear search since the
+ table is not guaranteed to be sorted by the secondary key.
+
+ * class.c (mono_class_create_from_typedef): fixed up call to
+ mono_metadata_nesting_typedef.
+
+2003-02-27 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_string_to_byvalstr): clear the memory as
+ suggested by Jerome Laban <jlaban@wanadoo.fr>
+
+2003-02-26 Dick Porter <dick@ximian.com>
+
+ * process.c: Cope with padding in .rsrc blocks
+
+2003-02-26 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.h: reverted the filter_len change, it breaks reflection
+
+2003-02-26 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.h: added a new field to store the filter_len
+
+
+Tue Feb 25 10:56:16 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: handle custom attributes for types and members
+ created with Reflection.Emit (bug#38422).
+
+2003-02-22 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c: define RTSpecialName automatically for constructors for
+ compatibility with MS.NET.
+
+ * reflection.c (mono_reflection_create_runtime_class): initialize
+ nested_in field of dynamically created classes.
+
+2003-02-22 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h: Incremented version number.
+
+2003-02-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * object.h icall.c process.c: fix warnings.
+
+2003-02-21 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.h appdomain.c:
+ (mono_domain_try_type_resolve): split the
+ name_or_tb argument into a name and a tb argument.
+ (mono_domain_has_type_resolve): new function to check whenever the
+ application has registered a TypeResolve event handler.
+
+ * icall.c reflection.h reflection.c: move the type resolve logic into
+ mono_reflection_get_type () so it will be invoked when
+ Assembly::GetType () is called.
+
+ * reflection.c:
+ (mono_reflection_get_type): renamed to get_type_internal.
+ (mono_reflection_get_type): fixed type name generation so it works
+ for nested types too.
+ (mono_reflection_get_type): call has_type_resolve () to avoid the
+ costly type name generation if there is no resolve event handler.
+
+Fri Feb 21 11:36:57 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, image.c: load exported types from file references.
+
+2003-02-19 Lluis Sanchez Gual <lluis@ideary.com>
+
+ * appdomain.h: Added in MonoDomain a couple of MonoMethod* variables
+ used to cache the managed methods used to create proxies and make
+ remote invocation of methods.
+ * class.h: Added in MonoVTable a flag to indicate that a class needs
+ to be remotely created.
+ * object.c: Modified the method mono_class_vtable(). It now initializes
+ the remote flag of the vtable. Modified mono_object_new_specific(),
+ so now it checks the remote flag.
+ * icall.c: Added a couple of internal methods, one for enabling instance
+ creation interception for a type, and one for creating objects bypassing
+ the remote check.
+
+2003-02-18 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c (ves_icall_MonoDebugger_GetMethodToken):
+ New interncall to get a method's metadata token.
+
+ * icall.c ("System.Reflection.Assembly::MonoDebugger_GetMethodToken"):
+ New interncall for the debugger.
+
+2003-02-18 Dietmar Maurer <dietmar@ximian.com>
+
+ * class.c (mono_class_setup_vtable): allocate supertype array
+
+2003-02-18 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h (MonoSymbolFileMethodAddress): Added `has_this'.
+
+2003-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c:
+ (assembly_name_to_aname): jump over unknown properties (i've found
+ something like: 'type, assembly, version=xxx, custom=null, public...',
+ so now will ignore custom=null and still get the rest of the values).
+
+2003-02-17 Dick Porter <dick@ximian.com>
+
+ * threads.c: Have Thread.Start() wait for a semaphore to signal
+ that the thread has set up all its local data. This fixes bug
+ 34323, where Abort() raced the new thread's TLS data.
+
+ Also removes the handle_store() call from start_wrapper, because
+ threads are now always created suspended and there is no longer a
+ race between the parent and child threads to store the info.
+
+Mon Feb 17 13:13:31 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * image.c: explain the #- heap issue in a message, hopefully
+ avoiding FAQs on mono-list.
+
+2003-02-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c:
+ (GetEntryAssembly): if the domain has not invoked
+ AppDomain.ExecuteAssembly yet, return the assembly of the default
+ AppDomain.
+
+2003-02-16 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_ldtoken): make it work in dynamic assemblies.
+
+Sun Feb 16 13:10:06 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c, reflection.c: simple speedup to type hash
+ and equals code.
+
+Sat Feb 15 15:15:03 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * image.c, image.h, class.c, assembly.c: move module loading
+ to MonoImage. When loading metadata, consider alignemnet from
+ the start of metadata, not from the metadata address in memory.
+
+2003-02-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_reflection_get_custom_attrs): Added support for
+ AssemblyBuilder objects. Factored out custom attribute creation into
+ a separate function.
+ (create_custom_attr): new function to create custom attributes.
+
+2003-02-12 Miguel de Icaza <miguel@ximian.com>
+
+ * Makefile.am: Got tired of typing the full pathname to pedump.
+ Until there is another option, am installing this.
+
+2003-02-12 Dietmar Maurer <dietmar@ximian.com>
+
+ * class.c (class_compute_field_layout): always set field->parent
+ (mono_ldtoken): use mono_defaults.fieldhandle_class;
+
+2003-02-11 Dick Porter <dick@ximian.com>
+
+ * threads-types.h:
+ * monitor.c: Rewrote Monitor, making lock much faster and
+ Pulse/Wait work as specified. Also uses much fewer handles, and only
+ creates them as needed.
+
+ * exception.c: Added SynchronizationLockException
+
+ * threads.c: Deleted old Monitor implementation. The new one is
+ in a new file.
+
+Mon Feb 10 17:54:10 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: handled TypedReference type code. Set the correct size for
+ class data. Setup interface_offsets for interface classes, too.
+
+2003-02-09 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h: Reflect latest symbol writer changes.
+
+Sun Feb 9 18:37:01 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * loader.c: implemented MEMBERREF_PARENT_TYPEDEF.
+ * metadata.c, reflection.c: missing MONO_TYPE_TYPEDBYREF handling.
+ * object.c: fixed mono_object_get_virtual_method () for interfaces.
+ * verify.c: check for code that runs after the end of the method.
+
+2003-02-08 Pedro Mart�nez Juli� <yoros@wanadoo.es>
+
+ * icall.c: Added "System.Math::Floor", "System.Math::Round" and
+ "System.Math::Round2".
+ * sysmath.h: Added Floor, Round and Round2 definitions.
+ * sysmath.c: Modified certain functions that were not 100% compliant
+ with MS.NET (math precision) and added the implementation of Floor,
+ Round and Round2.
+
+2003-02-07 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c (mono_debug_symfile_add_method): Ignore interncalls.
+
+2003-02-07 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c: Reflected latest symwriter changes.
+ (mono_debug_create_mono_symbol_file): Removed.
+ (mono_debug_open_mono_symbol_file): Take an argument which
+ specifies whether to create a dynamic symbol file.
+
+2003-02-07 Dietmar Maurer <dietmar@ximian.com>
+
+ * class.c (mono_class_from_mono_type): added MONO_TYPE_TYPEDBYREF
+
+2003-02-05 Martin Baulig <martin@ximian.com>
+
+ * reflection.c (mono_image_build_metadata): Make this public,
+ protect it against being called multiple times, don't create
+ resources and don't build the compressed metadata here.
+ (mono_image_create_pefile): Do this here.
+
+ * icall.c
+ ("System.Reflection.Emit.AssemblyBuilder::build_metadata"): Added.
+
+2003-02-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: fixed bug #36322.
+
+2003-02-06 Piers Haken <piersh@friskit.com>
+
+ * appdomain.[ch]:
+ * class.h:
+ * debug-mono-symfile.c:
+ * icall.c:
+ * loader.c:
+ * mono-config.c:
+ * monosn.c:
+ * reflection.c:
+ * socket-io.c: warning cleanups
+
+2003-02-06 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_remoting_invoke_with_check): new
+ function. works like remoting invoke, but does a check for the Proxy first.
+
+2003-02-05 Miguel de Icaza <miguel@ximian.com>
+
+ * appdomain.c (ves_icall_System_AppDomain_InternalUnload): Make it compiler.
+
+2003-02-05 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): only allocate an
+ array of pointers.
+ (mono_marshal_get_ldfld_wrapper): only generate necessary ldfld wrappers.
+ (mono_marshal_get_stfld_wrapper): only generate necessary stfld wrappers.
+
+ * object.c (mono_store_remote_field_new): used by the new jit
+ instead of mono_store_remote_field
+ (mono_load_remote_field_new): used by the new jit
+ instead of mono_load_remote_field
+
+2003-02-05 Patrik Torstensson
+
+ * appdomain.c: changed unload to take the domain id instead
+ of domain
+
+ * icall.c: changed icall for AppDomain.Unload to AppDomain.InternalUnload
+
+
+2003-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: don't look for assemblies in ApplicationBase if
+ PrivateBinPathProbe is set.
+
+2003-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c: make the first argument in main_args contain the absolute
+ path to the assembly. Fixes bug #37511.
+
+2003-02-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: get correct UTC offset for countries not using daylight
+ time saving. Fixes bug #30030.
+
+2003-02-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * socket-io.c: support AF_UNIX and use the same layout as MS (bytes 0
+ and 1 are the family).
+
+2003-02-04 Dietmar Maurer <dietmar@ximian.com>
+
+ * icall.c (ves_icall_InternalExecute): removed wrong assertion
+
+ * marshal.c (mono_marshal_get_remoting_invoke): generate valid IL
+
+2003-02-04 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c: added support for SignatureHelper tokens, which is
+ needed by the Calli opcode.
+
+ * reflection.h: track changes to SignatureHelper class.
+
+ * metadata.c (mono_metadata_parse_signature): handle dynamic tokens.
+
+2003-02-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: fixed loading assemblies from PrivateBinPath.
+
+2003-02-03 Patrik Torstensson
+ * appdomain.[c|h], domain.c :
+ - Added support for getting a domain via domain id
+ - Support for setting and getting domain from System.AppDomain
+ (used in cross appdomain channel)
+ - Added support for get/set for a MonoAppContext on a thread
+ (Context class in System.Runtime.Remoting.Contexts),
+ - Removed hack in Get/SetData and ExecuteAssembly.
+
+ * icall.c : renamed GetTransparantProxy to InternalGetTransparantProxy to allow
+ the managed world to get control when a proxy is created.
+
+ * icall.c (ves_icall_InternalExecute) : bug fix, must return empty array
+
+2003-02-03 Miguel de Icaza <miguel@ximian.com>
+
+ * icall.c
+ (ves_icall_System_Reflection_Assembly_GetReferencedAssemblies):
+ Populate the codebase field as well.
+
+2003-02-02 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c
+ (MonoSymbolFileMethodAddress): Added `wrapper_address' field.
+ (mono_debug_symfile_add_method): Allow interncalls.
+
+2003-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: throw parse exception if strtod fails or the string is empty.
+
+Fri Jan 31 16:09:48 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: handle object type separately from defined
+ class types.
+
+Fri Jan 31 16:01:20 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: handle NATIVE_LPSTR for strings when it's
+ explicitly specified.
+
+Fri Jan 31 11:51:43 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c, reflection.h, icall.c: setup the reflection
+ handle cache for ModuleBuilders and AssemblyBuilders.
+
+2003-01-30 Dietmar Maurer <dietmar@ximian.com>
+
+ * reflection.c (reflection_methodbuilder_to_mono_method): set
+ pinvoke flag
+
+2003-01-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: implemented ves_icall_MonoMethod_get_base_definition.
+
+2003-01-29 Dick Porter <dick@ximian.com>
+
+ * threads.c: No need for the fake_thread kludge now that Thread
+ doesn't run a class constructor
+
+2003-01-29 Dick Porter <dick@ximian.com>
+
+ * threads.c: Use g_direct_hash instead of the rather bogus
+ g_int_hash
+
+2003-01-29 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): add check for null
+ (fix pinvoke12.exe)
+ (mono_marshal_get_struct_to_ptr): generate valid IL code
+ (mono_marshal_get_ptr_to_struct): generate valid IL code
+ (*): correctly set sig->pinvoke, we need to memdup the signature
+ to do that
+
+Tue Jan 28 22:57:57 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c, marshal.h: use larger integers in mono_mb_emit_add_to_local()
+ to avoid overflows (bug spotted and fixed by Jerome Laban <jlaban@wanadoo.fr>).
+
+Tue Jan 28 18:55:19 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * profiler.c: provide more callers information.
+
+2003-01-28 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): generate valid IL code
+
+ * appdomain.h:added fix from Patrik: _MonoAppDomain is a MBR object
+
+ * marshal.c (mono_marshal_get_native_wrapper): generate valid IL code
+
+2003-01-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * icall.c: (ves_icall_System_CurrentTimeZone_GetTimeZoneData): raise an
+ exception instead of going into an infinite loop on dates which it
+ can't yet handle.
+
+ * string-icalls.c (ves_icall_System_String_get_Chars): raise
+ out-of-range exception if needed.
+
+ * class.c (mono_class_setup_vtable): allow a virtual method to provide
+ an implementation for an interface method and to override an inherited
+ method at the same time.
+ Imagine a scenario when a virtual method is used to override a
+ virtual abstract method in a parent class, and this same method
+ provides an implementation for an method inherited from an interface.
+ In this case, the interface resolution code will set im->slot, which
+ means that the virtual method override pass will skip this method
+ which means a pointer to the abstract method inherited from the parent
+ will remain in the vtable of this non-abstract class.
+
+ * class.c: (mono_class_setup_vtable): continue search for a real
+ method if only an abstract method is found.
+
+Mon Jan 27 17:12:19 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: add size to encoding for ByValStr and ByValArray
+ marshal blob (from "Jerome Laban" <jlaban@wanadoo.fr>).
+
+2003-01-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * class.c (mono_class_setup_vtable): pass the override info as an
+ argument.
+
+ * class.c (mono_class_setup_vtable): set the slot of overriding methods
+ correctly.
+
+ * reflection.c (ensure_runtime_vtable); add support for method
+ overrides.
+
+2003-01-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (resolution_scope_from_image): Hack to work to work with
+ dynamic assemblies.
+
+ * reflection.c (mono_image_typedef_or_ref): renamed to ..._aux and
+ added a 'force_ref' argument to force this function to allways return
+ a TypeRef. This is needed by mono_image_get_memberref_token ().
+
+2003-01-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * reflection.c (mono_image_get_type_info): interfaces really don't have
+ a parent.
+
+ * reflection.c (mono_image_basic_init): fill out missing fields of
+ image structure.
+
+ * reflection.c (mono_image_basic_init): Invoke assembly load hooks for
+ dynamic assemblies. This is required so dynamic assemblies show up in
+ AppDomain.GetAssemblies (), emit an AssembyLoadEvent, gets searched by
+ Type::GetType() etc. This is consistent with MS behaviour.
+
+ * image.c image.h reflection.c: add newly created classes to the name
+ cache so mono_class_get () will find them.
+
+2003-01-27 Zoltan Varga <vargaz@freemail.hu>
+
+ First part of changes to get IKVM.NET running under mono.
+
+ * appdomain.h, appdomain.c: added new function
+ mono_domain_try_type_resolve() which will emit TypeResolve events.
+ This function will call AppDomain::DoTypeResolve to do the actual work.
+
+ * class.h, class.c, loader.c, object.c, reflection.h, reflection.c:
+ moved existing code dealing with dynamic tokens to a new function
+ called mono_reflection_lookup_dynamic_token (). This function will
+ raise TypeResolve events when appropriate. Since reflection.c is not
+ part of libmetadata, a new hook function called
+ mono_lookup_dynamic_token() is added to class.c which will call this.
+
+ * assembly.h assembly.c: make the invoke_load_hook function public,
+ so it can be called for dynamic assemblies.
+
+ * icall.c (ves_icall_System_Runtime_CompilerServices_RuntimeHelpers_RunClassConstructor): skip interfaces since they do not have initializers.
+
+ * icall.c (ves_icall_type_from_name): emit a TypeResolve event if the
+ type isn't found.
+
+ * reflection.c reflection.h: change MonoDynamicAssembly.tokens to a
+ MonoGHashTable, since it contains pointers to objects which the GC
+ needs to track.
+
+ * assembly.c (search_loaded): remove unused variable.
+
+Mon Jan 27 12:18:45 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: fixed issue exposed by gcc-generated IL programs
+ that use RVA data for pointers.
+
+2003-01-25 Martin Baulig <martin@ximian.com>
+
+ * threads.c (start_wrapper): Moved the initialization of
+ `start_func' above the mono_new_thread_init() call to which we
+ pass it as argument.
+
+2003-01-24 Martin Baulig <martin@ximian.com>
+
+ * threads.h (MonoThreadCallbacks): Pass the thread ID instead of
+ the MonoThread pointer.
+
+2003-01-21 Miguel de Icaza <miguel@ximian.com>
+
+ * icall.c: Rename `PowImpl' to Pow.
+
+2003-01-23 Dick Porter <dick@ximian.com>
+
+ * threads.c (start_wrapper): Create a Thread object if needed, so
+ the Main() thread can do the class initialisation in a subthread
+ that has been set up to allow managed code execution.
+
+ Pass the thread ID instead of the MonoThread pointer to the thread
+ start and attach callbacks. This change is required, because the
+ jit thread start callback must be called _before_ the Thread
+ object can be created.
+
+ (mono_thread_init): Removed much object creation code that is no
+ longer needed. No managed code is called from here now.
+
+ * object.c (mono_runtime_exec_managed_code): Create a subthread
+ for Main, and call back to the runtime to use it.
+ Set the exit code when Main exits.
+
+ * gc.c: Make sure domain finalisation happens in a subthread.
+ Re-enable threaded GC, fixing bug 31333 (again).
+
+ * environment.c: System.Environment internall calls (so far just
+ ExitCode is here, the others are still in icall.c)
+
+ * appdomain.c (mono_runtime_cleanup): All threads running managed
+ code should have finished before mono_runtime_cleanup() is
+ reached, so no need to clean up threads.
+
+2003-01-22 Martin Baulig <martin@ximian.com>
+
+ * appdomain.h (MonoThreadStartCB): Added `MonoThread *thread' and
+ `gpointer func' arguments.
+ (MonoThreadAttachCB): New typedef; like the old MonoThreadStartCB,
+ but added `MonoThread *thread' argument.
+ (mono_runtime_init): The last argument is now a MonoThreadAttachCB.
+
+ * threads.c (mono_new_thread_init): Added `gpointer func' argument
+ and pass it to the mono_thread_start_cb callback.
+ (mono_install_thread_callbacks): New public function to install a
+ set of callbacks which are set by the debugger.
+ (mono_thread_init): The last argument is now a MonoThreadAttachCB.
+
+2003-01-22 Martin Baulig <martin@ximian.com>
+
+ * Makefile.am: Install debug-mono-symfile.h.
+
+2003-01-21 Aleksey Demakov <avd@openlinksw.com>
+
+ * marshal.c: fixed copy_from_managed and copy_to_unmanaged for 0 length.
+
+2003-01-21 Dietmar Maurer <dietmar@ximian.com>
+
+ * added the following fix from Jackson Harper <jackson@latitudegeo.com>
+ * class.c (mono_ptr_class_get): correctly set access levels of pointers
+ (mono_array_class_get): correctly set access levels of arrays
+
+2003-01-20 Patrik Torstensson
+ * image.h (MonoAssemblyName): changed major, minor, build, revision
+ from signed to unsigned.
+
+2003-01-20 sean kasun <skasun@azstarnet.com>
+
+ * reflection.c (load_cattr_value): Now this handles
+ MONO_TYPE_SZARRAY. Fixes bug #35629
+
+2003-01-20 Miguel de Icaza <miguel@ximian.com>
+
+ * marshal.c (emit_struct_conv): Handle MONO_TYPE_PTR as an
+ integer value
+
+2003-01-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * decimal.c: fixed bug #26056.
+
+2003-01-17 Martin Baulig <martin@ximian.com>
+
+ * gc.c: Raise an ExecutionEngineException instead of using g_error().
+
+2003-01-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * exception.[ch]:
+ (mono_get_exception_type_initialization): new function.
+
+ * object.c: throw a TypeInitializationException when an exception is
+ thrown invoking the class constructor.
+
+2003-01-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c: fixed attribute reading.
+
+2003-01-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c:
+ (ves_icall_type_from_name): make it work as MS. Ie, if no assembly name
+ provided, look for the type in the calling assembly and then in
+ mscorlib; if the assembly name is provided, only try that one.
+
+Tue Jan 14 14:52:52 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: register the vtable before there is a chance it's
+ queried again recursively.
+
+2003-01-13 Duncan Mak <duncan@ximian.com>
+
+ * Makefile.am (libmonoruntime_la_SOURCES): Change gc.h to
+ gc-internal.h.
+
+2003-01-12 Patrik Torstensson <totte@race-x-change.com>
+
+ * string-icall.[c|h], icall.c: Added support for CompareOrdinal mode
+
+2003-01-11 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h (MONO_SYMBOL_FILE_DYNAMIC_VERSION): Incremented
+ this to 20 for the release.
+
+2003-01-10 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (emit_struct_conv): added support for EXPLICIT_LAYOUT
+
+ * loader.c (mono_method_get_marshal_info): bug fix
+
+ * marshal.c (mono_marshal_get_ptr_to_struct): don't convert
+ structures with explicit layout
+
+Fri Jan 10 15:58:09 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * profiler.c: made the output more readable (and sorted).
+ Added caller information for the allocation profiler.
+
+2003-01-09 Sebastien Pouliot <spouliot@videotron.ca>
+
+ * icall.c, rand.c, rand.h: Prepended RNG functions with Internal.
+
+2003-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added ves_icall_System_Activator_CreateInstanceInternal. Used
+ to get value types.
+
+Thu Jan 9 19:43:11 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * object.c, profiler.h, profiler.c, profiler-private.h:
+ Added object allocation profiler.
+
+Thu Jan 9 16:17:00 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.h, reflection.c: handle global methods.
+ Compress blob entries.
+
+Thu Jan 9 15:54:53 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: fix compilation.
+
+2003-01-09 Dietmar Maurer <dietmar@ximian.com>
+
+ * loader.c (mono_method_get_marshal_info): impl.
+
+ * metadata.c (mono_metadata_field_info): use mono_metadata_get_marshal_info
+
+2003-01-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: applied fix from Zoltan Varga that fixes Type.IsPrimitive
+ for reference types.
+
+Wed Jan 8 20:11:46 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * loader.c: fixed off by one error in loaded parameter names.
+
+2003-01-08 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_icall_wrapper): like
+ mono_marshal_get_native_wrapper, but simpler and use a MonoMethodSignature
+ instead of a MonoMethod.
+
+2003-01-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * decimal.c: fixed bug #36537.
+
+Mon Jan 6 19:37:59 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: throw a missing method exception if a
+ P/Invoke method is not found.
+
+Sun Jan 5 11:57:09 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: allow a null this for constructors.
+
+Sat Jan 4 18:28:42 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: raise the proper exceptions if the arguments to the
+ internal Invoke are incorrect.
+
+2003-01-03 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_ptr_to_struct): code cleanups
+
+2003-01-03 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h: Increment MONO_SYMBOL_FILE_DYNAMIC_VERSION.
+
+2002-12-31 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.c: Completely rewrote the type section.
+ Instead of using individual malloc()ed fields, we use one big
+ continuous memory area and offsets into this area.
+ See the comments in the source code for details.
+
+2002-12-30 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h (MonoDebugTypeInfo): Renamed to MonoDebugClassInfo.
+
+2002-12-30 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h (MonoSymbolFileMethodAddress): Include the
+ line number table in this data blob instead of using an external
+ pointer.
+
+2002-12-28 Martin Baulig <martin@ximian.com>
+
+ * debug-mono-symfile.h: Increment MONO_SYMBOL_FILE_DYNAMIC_VERSION.
+
+2002-12-22 Rachel Hestilow <hestilow@ximian.com>
+
+ * marshal.c (mono_marshal_get_runtime_invoke): Support MONO_TYPE_CHAR
+ as a boxed return type.
+
+2002-12-21 Miguel de Icaza <miguel@ximian.com>
+
+ * appdomain.c
+ (ves_icall_System_AppDomainSetup_InitAppDomainSetup): Use
+ g_build_filename to properly get separators on the filename created.
+
+ * object.h: Small change, introduce MonoMarshalByRefObject to
+ track the layout of that structure in the C# universe as we make
+ changes there.
+
+Thu Dec 19 16:23:19 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: removed assert to allow static fields on interfaces.
+ * loader.c: a TypeSpec may be used for any type, not just arrays.
+
+Thu Dec 19 14:19:42 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, class.h: added mono_class_array_element_size ().
+ Ignore static methods in interfaces.
+
+2002-12-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * threads.c: fixed the build under cygwin.
+
+Wed Dec 18 18:43:47 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: handle nullref constants. Allocate keys for
+ reflection handles with the GC.
+
+Wed Dec 18 11:34:18 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c, threads.h: added mono_thread_get_abort_signal()
+ to get a suitable signal for thread abort.
+
+Wed Dec 18 11:26:18 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c: fix handling of ExportedType table.
+
+2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added WriteWindowsDebugString internal call.
+
+2002-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.h: added fields to match C# implementation.
+
+2002-12-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: patch from Jaroslaw Kowalski to fix Environment.MachineName.
+
+2002-12-12 Juli Mallett <jmallett@FreeBSD.org>
+
+ * gc.h, gc-internal.h: Rename header for GC internal calls to
+ gc-internal.h from gc.h as to not clash with Boehm GC having its
+ header installed as <gc.h> in outside include paths.
+ * appdomain.c, gc.c, icall.c, object.c: Account for aforementioned.
+ * threads.c: If SIGRTMIN is not defined, fall back to SIGUSR1.
+
+2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: assign minor, build and revision in FillName.
+
+2002-12-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * image.h reflection.h reflection.c class.h class.c loader.c object.c:
+ Added support for running code generated by Reflection.Emit.
+
+2002-12-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: check for NULL argument in LoadFrom.
+
+2002-12-10 Dick Porter <dick@ximian.com>
+
+ * threads.c: WaitHandle fixes from Tum <tum@veridicus.com>
+
+2002-12-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: fix buglet when building exe file name. Handle full
+ assembly name (needed after latest changes to AssemblyName).
+ * image.c:
+ (mono_image_close): free some hashtables.
+
+2002-12-05 Dietmar Maurer <dietmar@ximian.com>
+
+ * threads.c (ves_icall_System_Threading_Thread_Abort): we use SIGRTMIN
+ instead of SIGUSR1, because SIGUSR1 is used by the pthread implementation
+ on some systems (redhat 7.3)
+
+Thu Dec 5 16:13:40 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * threads.c: delete the critical section of a sync block,
+ spotted and fixed by tum@veridicus.com (Thong (Tum) Nguyen).
+
+Thu Dec 5 12:52:52 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * pedump.c, cil-coff.h, monosn.c: add strong name cli header flag.
+
+2002-12-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.[ch]: handle the assembly preload event to try loading the
+ assemblies using the paths we have in the current domain.
+
+ * assembly.[ch]: created an assembly preload hook that is called to try
+ loading the assembly by other means that the ones provided here.
+
+ * domain.c: initialize the domain search path.
+
+ From now on, assemblies (TODO: except corlib and System) are loaded
+ according to these rules when using mono_assembly_load ():
+
+ 1. It tries to load the assembly from the ApplicationBase
+ of the current domain appending .dll and .exe (TODO: have to
+ try loading from name/name.dll and name/name.exe).
+
+ 2. It tries the search path specified in PrivateBinPath for the
+ current domain (if any).
+
+ 3. Previous behavior.
+
+Wed Dec 4 16:02:25 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: implemented GetInterfaceMap() related icall.
+ * domain.c, loader.h: load MethodInfo in mono_defaults.
+
+Wed Dec 4 11:02:30 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: disable the finalizer thread for now, untill all the issues
+ with it are resolved.
+
+Wed Dec 4 10:44:01 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * string-icalls.c: handle embedded nulls in string ctor when the
+ length is specified.
+
+Tue Dec 3 19:29:20 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: look for explicit interface implementation in parent
+ classes, too.
+
+2002-12-03 Dietmar Maurer <dietmar@ximian.com>
+
+ * gc.c (run_finalize): dont run the finalizer (strange behaviour on rh7.3)
+
+Tue Dec 3 12:40:06 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: protect handles with a critical section.
+
+2002-12-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c:
+ (ves_icall_type_from_name): it now has throwOnError and ignoreCase
+ parameters. If no assembly specified, try getting the type from all
+ the assemblies in the current domain, else, load the assembly and get
+ the type from it.
+
+2002-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * marshal.c: applied patch from Aleksey Demakov that fixes
+ ves_icall_System_Runtime_InteropServices_Marshal_PtrToStringUni.
+
+2002-11-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: fixed get_location.
+
+2002-11-28 Dietmar Maurer <dietmar@ximian.com>
+
+ * icall.c: moved MONO_ARCH_SAVE_REGS to the end of the
+ declarations to make it work with older gcc.
+
+ * loader.c (mono_get_method): set signature->pinvoke for native calls
+
+2002-11-20 Dick Porter <dick@ximian.com>
+
+ * threads.c (mono_thread_init): Set the main thread's handle
+
+Tue Nov 19 14:15:34 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: allow compilation without GC support. Changed to match the
+ mono coding style.
+
+Mon Nov 18 18:41:51 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: don't start the finalizer thread if the env var GC_DONT_GC is set.
+
+Mon Nov 18 16:35:22 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: set a public key token on the core assemblies.
+
+2002-11-18 Dick Porter <dick@ximian.com>
+
+ * threads.c: Split out some thread initialisation so that other
+ files can set the start callback function.
+
+ * gc.c: Run finalisers in a separate thread, to avoid stack
+ overflow. Fixes bug 31333.
+
+ * appdomain.c: Set up GC finalisation thread.
+
+ * reflection.c:
+ * object.c:
+ * domain.c: Use gc.h macros for GC_malloc
+
+2002-11-15 Dick Porter <dick@ximian.com>
+
+ * threadpool.c:
+ * threads.c:
+ * appdomain.c: Removed mono_runtime_init_with_attach(),
+ mono_thread_create_arg(), and mono_thread_init_with_attach(), by
+ merging the extra parameter with the existing function. Removed
+ unneeded code in mono_thread_attach().
+
+2002-11-14 Dietmar Maurer <dietmar@ximian.com>
+
+ * image.c (mono_image_loaded_by_guid): a method to get loaded
+ images by guid.
+ (load_metadata_ptrs): we store the guid as string.
+
+2002-11-11 Dietmar Maurer <dietmar@ximian.com>
+
+ * assembly.c (mono_assembly_open): check the guid of aot compiled lib.
+
+ * metadata.c (mono_guid_to_string): imported method form Zoltan
+ Varga (slightly modified)
+
+ * assembly.c (mono_assembly_open): load precompiled code
+
+ * loader.h (MonoMethod): we store the method token for use in the
+ aot compiler.
+
+2002-11-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: insert the loaded assemblies in the domain->assemblies in
+ the hook function called when an assembly is loaded.
+
+ * domain.c: Modified file.
+ (mono_domain_assembly_load): removed hash table insertion of assemblies.
+
+ Fixes bug #33196.
+
+2002-11-07 Miguel de Icaza <miguel@ximian.com>
+
+ * reflection.c: Map PEFileKind to the value expected by the WinNT
+ image loader.
+
+2002-11-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * rand.c: use /dev/urandom. If it fails to open, use the previous one.
+ Read until the buffer is filled completely.
+
+2002-11-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: implemented MonoType.InternalGetEvent ().
+
+2002-11-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: implemented InitAppDomainSetup. Delayed
+ AppDomain.SetupInformation until mono_runtime_exec_main, where we get
+ the entry_assembly.
+
+ * assembly.c: base_dir is now an absolute path ending with
+ G_DIR_SEPARATOR.
+
+ * icall.c: modified get_location according to the above changes.
+
+ * object.c: init AppDomain.SetupInformation for the default domain after
+ we have the entry assembly.
+
+ * domain.c: when unloading a domain, setup = NULL.
+
+2002-11-04 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (emit_ptr_to_str_conv): try to fix bug 29548
+
+Sun Nov 3 15:39:28 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.h, object.c: introduced mono_object_get_virtual_method ()
+ to lookup the method invoked on an object when a callvirt is done on
+ a method.
+ * icall.c: make MethodInfo::Invoke() always do a virtual call.
+
+2002-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * appdomain.c: invoke AssemblyLoad and AsemblyResolve events in the
+ current domain when loaded an assembly and failed to load it.
+
+ * icall.c: changed ...Assembly_GetType to Assembly_InternalGetType.
+
+2002-10-31 Dick Porter <dick@ximian.com>
+
+ * icall.c:
+ * file-io.h:
+ * file-io.c: Return the error status in a parameter, as the
+ GetLastError() value has long since been blown away if we try and
+ look it up in a subsequent internal call invocation. Delete the
+ GetLastError() internal call, because it's useless.
+
+2002-10-31 Dietmar Maurer <dietmar@ximian.com>
+
+ * class.[ch]: added cast_class to fix bug 29517
+
+Wed Oct 30 19:37:32 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: create valid IL code in the filter clause:
+ the new JIT is less forgiving:-)
+
+2002-10-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: removed get_property internal call.
+
+2002-10-25 Zoltan Varga <vargaz@freemail.hu>
+
+ * appdomain.h domain.c: Added an ID to appdomains.
+
+ * threads.c threads.h icall.c: Implement icall
+ Thread:GetDomainID(), and remove unused icall
+ CurrentThreadDomain_internal.
+
+2002-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: Don't recurse through the base types in GetConstructor.
+ Fixes bug #32063.
+
+Thu Oct 24 16:56:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * mempool.h, mempool.c: added mono_mempool_empty() and
+ mono_mempool_stats().
+
+2002-10-23 Dick Porter <dick@ximian.com>
+
+ * file-io.c:
+ * file-io.h:
+ * icall.c: Added MonoIO.GetFileType internal call
+
+2002-10-17 Dick Porter <dick@ximian.com>
+
+ * appdomain.c (mono_runtime_cleanup): Don't signal the async
+ delegate semaphore before waiting for all threads to finish,
+ because new threads can also call async delegates. Fixes bug
+ 32004.
+
+ * threadpool.c (async_invoke_thread): Only wait for 500ms instead
+ of 3 seconds, in case another async job is queued. (This part is
+ needed because the bug fix reintroduced the 3s exit lag.) This
+ makes the mono_runtime_shutdown flag superfluous.
+
+Thu Oct 17 13:11:39 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: include ehader size in method section headers.
+ Really check for suplicated modules entries.
+
+2002-10-17 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Added back support for locals.
+
+2002-10-14 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Added MONO_TYPE_I, MONO_TYPE_U and
+ MONO_TYPE_VOID.
+
+2002-10-14 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c (ves_icall_MonoDebugger_GetType): Use
+ mono_class_get() instead of looking in the class cache.
+
+2002-10-13 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Set version number to 28, include the
+ signature in method names.
+
+2002-10-13 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.h: Set version number to 27.
+
+2002-10-11 Martin Baulig <martin@gnome.org>
+
+ * gc.c: Don't register/unregister NULL pointers as disappearing links.
+
+Thu Oct 10 14:56:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c, metadata.h: added helper function to allocate signatures.
+
+2002-10-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added internal call to get the location of machine.config.
+
+2002-10-08 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Ignore classes with a pending init for the
+ moment.
+
+2002-10-03 Dick Porter <dick@ximian.com>
+
+ * threads.c: Freebsd pthread_t is a pointer
+
+2002-10-03 Dick Porter <dick@ximian.com>
+
+ * socket-io.c: Implemented GetHostName_internal
+
+2002-10-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * mono-config.c:
+ (mono_config_parse_file): don't leak the text.
+
+2002-10-02 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Added support for methods.
+
+2002-10-01 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Don't emit methods and line numbers for
+ the dynamic symbol file, just write the type table. We can easily
+ have an external helper program which creates a symbol file for an
+ IL file.
+
+2002-10-01 Dick Porter <dick@ximian.com>
+
+ * threads.c (ves_icall_System_Threading_Thread_Start_internal):
+ Only add the handle to the cleanup array when we're about to
+ launch the thread. Bug 31425 deadlocked when the test was run on
+ mono under w32.
+
+2002-10-01 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Added support for properties.
+
+Fri Sep 27 18:55:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: unaligned store fix from Mark Crichton
+ <crichton@gimp.org>.
+
+2002-09-27 Martin Baulig <martin@gnome.org>
+
+ * icall.c ("System.Reflection.Assembly::GetReferencedAssemblies"):
+ New interncall.
+
+Fri Sep 27 15:38:31 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * assembly.h, assembly.c: use a sane API to hook into the assembly
+ loading process instead of a useless special-purpouse hack
+ (ngen needs a hook, too, for example).
+
+2002-09-27 Dick Porter <dick@ximian.com>
+
+ * threads.c (mono_thread_init): Call GetCurrentProcess() so
+ io-layer can set up some process handle info. Not needed on w32,
+ but doesn't hurt either.
+
+ * process.c: Pass the program name in the second parameter to
+ CreateProcess, so the path is searched. Include the working
+ directory. Implemented process name, process enumeration, and some
+ process detail internal calls.
+
+ * icall.c: Added internal calls for process lookup, and some
+ process details
+
+2002-09-26 Martin Baulig <martin@gnome.org>
+
+ * assembly.c (mono_install_open_assembly_hook): New global
+ function to install a function to be invoked each time a new
+ assembly is loaded.
+ (mono_assembly_open): Run this callback function if set.
+
+ * debug-mono-symfile.c: Put back line numbers for the dynamic
+ symbol file and also record the .il file as source file. This
+ allows us to install the temporary symbol file as `file.dbg' just
+ like a compiler-generated one.
+
+2002-09-26 Nick Zigarovich <nick@chemlab.org>
+
+ * Corrected typo in gc.c (BOHEM vs BOEHM).
+
+2002-09-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: fixed bug #31235 by copying a few lines from GetMethods to
+ GetProperties. Also avoid calling g_slist_length in GetProperties and
+ GetMethods.
+
+Wed Sep 25 22:18:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: avoid unaligned stores (bug spotted by
+ Mark Crichton <crichton@gimp.org>).
+
+2002-09-25 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.h (MonoSymbolFileMethodAddress): Use pointers
+ instead of guint64 for addresses and added prologue/epilogue info.
+
+2002-09-25 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.h (MonoDebugLineNumberEntry): New type to
+ store line number info. For the dynamic symbol file, we only need
+ to provide the JIT generated dynamic line number info for the dynamic
+ symbol file.
+
+2002-09-25 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.h: Incremented version number.
+
+2002-09-24 Martin Baulig <martin@gnome.org>
+
+ * class.c (mono_debugger_class_init_func): New global function
+ pointer variable.
+ (mono_class_init): If mono_debugger_class_init_func is non-NULL,
+ call it.
+
+ * debug-mono-symfile.c (mono_debug_symfile_add_type): New
+ function. This is called via the mono_debugger_class_init_func
+ hook to add all types to the dynamic type table.
+ (ves_icall_MonoDebugger_GetType): New interncall to get a class
+ from its metadata token.
+
+ * icall.c ("System.Reflection.Assembly::MonoDebugger_GetType"):
+ New interncall for the debugger.
+
+2002-09-24 Nick Drochak <ndrochak@gol.com>
+
+ * icall.c (ves_icall_System_Enum_ToObject): validate the type parameter
+ before using it in case it is null.
+
+Tue Sep 24 13:24:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * metadata.c: allow custom modifiers in local var signatures
+ (bug spotted by Zoltan Varga).
+
+Tue Sep 24 12:12:16 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: deal with the <Module> class that may have a NULL vtable.
+ Eliminate warnings.
+
+Tue Sep 24 11:28:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * image.c, image.h: more strong name helpers.
+ * monosn.c: more work: convert pem keys to cryptoapi format.
+
+Tue Sep 24 11:27:38 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * string-icalls.c: speedup IndexOf.
+
+Tue Sep 24 11:17:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: updates from Zoltan.2.Varga@nokia.com.
+
+Tue Sep 24 11:09:17 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: cleanup: use mono_object_domain ().
+
+2002-09-23 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Improved type support.
+
+2002-09-22 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Added support for reference types and strings.
+
+2002-09-22 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Started to work on the type table.
+
+2002-09-21 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Largely reworked the symbol table format.
+ The symbol table is now incrementally updated each time a new
+ method is added. We're now also using our own magic and version
+ so that you don't need to recompile all your classes if the
+ dynamic table changes.
+ (mono_debug_update_mono_symbol_file): Removed.
+ (mono_debug_symfile_add_method): New function to add a method.
+
+2002-09-21 Martin Baulig <martin@gnome.org>
+
+ * icall.c
+ ("System.Reflection.Assembly::MonoDebugger_GetLocalTypeFromSignature"):
+ New interncall.
+
+ * debug-mono-symfile.c (ves_icall_MonoDebugger_GetLocalTypeFromSignature):
+ New interncall to get a method from its metadata token.
+
+2002-09-21 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Create type table.
+
+2002-09-20 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Reflect latest Mono.CSharp.Debugger changes.
+
+2002-09-20 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Provide information about params and locals.
+
+2002-09-20 Martin Baulig <martin@gnome.org>
+
+ * icall.c ("System.Reflection.Assembly::MonoDebugger_GetMethod"):
+ New interncall.
+
+ * debug-mono-symfile.c (ves_icall_MonoDebugger_GetMethod): New
+ interncall to get a method from its metadata token.
+
+2002-09-20 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Added a few checks for method->header
+ being non-NULL. This should never happen, but for the moment
+ let's use a g_warning() rather than a g_assert().
+
+2002-09-19 Mark Crichton <crichton@gimp.org>
+
+ * gc.c: ves_icall_System_GCHandle_FreeHandle made a call to libgc
+ even if support for it isn't present. Added an #ifdef to fix this.
+
+ * socket-io.c: Added checks back for Solaris support.
+
+2002-09-19 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c (read_string, write_string): Reflect latest
+ changes in the symbol file format.
+
+2002-09-18 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Set version number to 21.
+
+2002-09-18 Dick Porter <dick@ximian.com>
+
+ * threads.c (mon_new): Use the GC_MALLOC macro to hide differences
+ on netbsd. Fixes bug 30051.
+
+2002-09-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c:
+ (set_version_from_string): little fix.
+
+Mon Sep 16 18:57:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * monosn.c, Makefile.am: added strong name utility.
+ * reflection.h, reflection.c: implemented delayed signing,
+ locale, version and hash id assembly attributes.
+
+Mon Sep 16 18:51:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * loader.c, metadata.c: load param attributes in signatures.
+
+2002-09-16 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Added string table with all method names.
+
+2002-09-14 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.h (MonoSymbolFile): Added method range table for
+ fast method lookup.
+
+Fri Sep 13 16:04:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: record the public key token of referenced assemblies.
+
+Fri Sep 13 15:41:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * image.c, image.h: added functions to get the strong name and the
+ public key of an assembly.
+ * pedump.c: use them.
+
+2002-09-12 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (emit_str_to_ptr_conv): support marshalling of delegates.
+
+2002-09-12 Miguel de Icaza <miguel@ximian.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): Added
+ MONO_TYPE_BOOLEAN
+
+2002-09-11 Martin Baulig <martin@gnome.org>
+
+ * gc.c: Call GC_unregister_disappearing_link() on all links when
+ finalizing them, this is necessary to aviod a crash in boehm's
+ finalize handler.
+
+Wed Sep 11 17:06:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: handle GetTarget for finalized objects spotted and fixed by
+ nick@chemlab.org.
+
+Wed Sep 11 15:27:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: implemented MonoType::Module.
+ * reflection.c, reflection.h: mono_module_get_object () from
+ Tomi Pakarinen <tomi.pakarinen@welho.com>.
+
+Wed Sep 11 12:53:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: ignore overridden methods in GetMethods ().
+ Fix for FieldInfo::SetValue().
+ * object.c: handle float/double in runtime invoke.
+
+Tue Sep 10 15:51:53 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: allow a constructor to be called again on an object.
+
+Tue Sep 10 11:58:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.h, class.c: move field layout code to it's own function and
+ export it. Get an interface id earlier. Move fields in MonoClass
+ so they are more cache friendly and align the bitfields.
+ * loader.c: temporary handle get_param_names() for a runtime method.
+ * reflection.c, reflection.h: more code to handle runtime creation of
+ types.
+
+2002-09-09 Martin Baulig <martin@gnome.org>
+
+ * marshal.c (mono_marshal_get_native_wrapper): We need to use a special
+ signature with the pinvoke field being set for the actual call.
+
+Sat Sep 7 10:12:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: removed some unused icalls. Start of map of glib charsets
+ to corlib names. Implemented RuntimeMethod::GetFunctionPointer ().
+
+Fri Sep 6 16:08:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * debug-helpers.c: break infinite loop (found and fixed by
+ Holger Arnold <harnold@gmx.de>).
+
+Thu Sep 5 18:50:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: target may be null in create_delegate.
+
+Thu Sep 5 17:42:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: handle a boolean return type.
+
+Thu Sep 5 13:09:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: put HIDE_POINTER/REVEAL_POINTER only here.
+
+Wed Sep 4 19:23:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * gc.c: fix weakreferences.
+
+Wed Sep 4 13:59:50 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: added icall to get default codepage.
+
+2002-09-03 Dick Porter <dick@ximian.com>
+
+ * threads.h:
+ * threads.c: Use MonoThread instead of MonoObject where
+ apropriate.
+
+ Store running thread objects in a hash table, so that we have all
+ the info to hand when waiting for them to finish
+ (means we don't need OpenThread() any more, so mingw builds should
+ be fully functional again.)
+
+ * verify.c:
+ * object.h: Added thread ID to MonoThread
+
+2002-09-03 Martin Baulig <martin@gnome.org>
+
+ * icall.c (System.Reflection.Assembly::get_location): New interncall.
+
+2002-09-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: fixed leak in get_temp_path. Thanks lupus.
+
+2002-09-03 Martin Baulig <martin@gnome.org>
+
+ * debug-helpers.c (mono_disasm_code_one): Added `const guchar **endp'
+ argument to store the end address of the disassembled instruction.
+
+ * debug-mono-symfile.h (MonoDebugMethodInfo, MonoDebugVarInfo): Moved
+ here from debug-symfile.h.
+ (MonoDebugMethodJitInfo): Moved all fields which are filled out by the
+ JIT into this struct.
+ (MonoSymbolFile): Added `char *image_file' field.
+ (MonoDebugGetMethodFunc): Removed.
+ (mono_debug_update_mono_symbol_file): Removed the hash table argument.
+ (mono_debug_create_mono_symbol_file): Removed the `source_file' argument.
+ (mono_debug_find_method): New method.
+
+ * debug-mono-symfile.c (mono_debug_create_mono_symbol_file): Always
+ create a full symbol file.
+ (mono_debug_update_mono_symbol_file): Don't distinguish between dynamic
+ and static symbol files.
+ (mono_debug_find_method): The symbol file keeps an internal method hash,
+ call this to get a MonoDebugMethodInfo from a MonoMethod.
+
+ * debug-symfile.[ch]: Removed.
+
+2002-08-29 Miguel de Icaza <miguel@ximian.com>
+
+ * image.c (do_mono_image_open): Remove linker version check.
+
+2002-08-29 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): don't cache
+ wrappers for instance methods.
+
+2002-08-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added ves_icall_System_IO_Path_get_temp_path.
+
+2002-08-28 Dick Porter <dick@ximian.com>
+
+ * Makefile.am: Export HOST_CC for w32 builds
+
+Tue Aug 27 18:34:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * file-io.c process.c: MonoString are null terminated, no
+ need for mono_string_to_utf16() anymore.
+
+Tue Aug 27 17:51:27 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c, unicode.h, unicode.c: removed unused iconv stuff.
+
+Tue Aug 27 16:38:58 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c, reflection.h: speedup System.MonoType.
+
+Tue Aug 27 16:37:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: allow null as the value of a string argument in
+ custom attributes constructors.
+
+2002-08-27 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.h (MonoSymbolFileMethodAddress): Removed the
+ `trampoline_address' field.
+
+2002-08-27 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): removed wrong null
+ check (fixes bug #29486)
+
+2002-08-27 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c: Changed the file format in a way that allows us
+ open it read-only and to use a specially malloced area for all the
+ dynamic data. We can now also generate a symbol file on-the-fly if we're
+ debugging IL code and there is no MCS generated symbol file for it.
+
+Mon Aug 26 16:47:37 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: added a define for a good string and array
+ creation speedup (not enabled by default because we need to deal with
+ the synch stuff).
+
+2002-08-26 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c (mono_debug_create_mono_symbol_file): New
+ function to create a dynamic symbol file. This is used by the
+ debugger to create a symbol file for IL code on-the-fly.
+
+2002-08-26 Martin Baulig <martin@gnome.org>
+
+ * loader.c (mono_lookup_pinvoke_call): Include the error message
+ from g_module_error() in the error message.
+
+2002-08-24 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.c (mono_debug_update_mono_symbol_file): New
+ function to update the symbol file. The symbol file is mmap()ed
+ writable, but private. This allows us to install the symbol file
+ together with the assembly.
+
+2002-08-24 Martin Baulig <martin@gnome.org>
+
+ * debug-mono-symfile.[ch]: New files. Similar to debug-symfile.[ch]
+ but they can read the new symbol file format which mcs is now creating.
+
+ * debug-symfile.c (mono_debug_find_source_location): Moved to
+ debug-mono-symfile.c; this is now operating on the new symbol file.
+
+2002-08-23 Martin Baulig <martin@gnome.org>
+
+ * debug-helpers.c (mono_method_desc_from_method): New function to get
+ a MonoMethodDesc from a MonoMethod.
+
+Fri Aug 23 15:54:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: fixes assertion failure caused by multiple ExecuteAssembly
+ calls for same domain (patch by Tomi Pakarinen <Tomi.Pakarinen@iki.fi>).
+
+Fri Aug 23 12:14:45 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * string-icalls.[ch]: make helper methods static.
+
+2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: re-applied patch to GetValueInternal. Also added R4 and R8
+ types to it and to SetValueInternal.
+
+ * object.c: Moved handle_enum label to its proper place. This was the
+ f... bug! ;-)
+
+ This time i compiled mcs and gtk-sharp and they both work.
+
+2002-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: reverted partially my previous patch until
+ object.c:set_value handles enums correcly.
+
+2002-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c:
+ (ves_icall_MonoField_GetValue): changed to use mono_field_get_value.
+ (ves_icall_System_Environment_get_MachineName): removed warning when
+ compiling under cygwin.
+
+Thu Aug 22 18:49:11 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: fixed field_get_value() for reference types.
+
+2002-08-22 Dick Porter <dick@ximian.com>
+
+ * socket-io.c (ves_icall_System_Net_Sockets_Socket_RecvFrom_internal):
+ Don't free a buffer while it's still needed. Patch from Jonathan
+ Liger <Jonathan.liger@wanadoo.fr>
+
+2002-08-21 Miguel de Icaza <miguel@ximian.com>
+
+ * icall.c (ves_icall_System_Environment_get_Platform): Add new
+ internal call.
+
+2002-08-21 Dietmar Maurer <dietmar@ximian.com>
+
+ * icall.c (ves_icall_get_method_info): s/MonoMethod/MonoReflectionMethod/
+ (ves_icall_get_parameter_info): s/MonoMethod/MonoReflectionMethod/
+
+ * marshal.c (mono_marshal_get_remoting_invoke): save lmf, because
+ we call unmanaged code which throws exceptions.
+
+Wed Aug 21 12:56:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h: added per-domain entry_assembly.
+ * appdomain.c: ensure mono_runtime_exec_main () gets non-null
+ arguments.
+ * icall.c: Assembly::GetEntryAssembly icall.
+ * object.c: set domain->entry_assembly in mono_runtime_exec_main().
+ Changes above from a patch by Tomi Pakarinen <tomi.pakarinen@welho.com>.
+
+Tue Aug 20 15:42:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h, gc.c: added mono_domain_finalize ().
+
+2002-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c:
+ (mono_print_unhandled_exception): changed g_warning by g_printerr
+ because g_log has a 1024 characters limit (yeah, i got a big stack
+ trace). Don't print exception name, that should be in ToString
+ returned string.
+
+2002-08-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added ves_icall_FieldInfo_SetValueInternal.
+ * object.c: added missing MONO_TYPE_ARRAY in mono_runtime_invoke_array.
+
+2002-08-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c:
+ (mono_print_unhandled_exception): after previous commit, i realized
+ that MS calls ToString on the exception. I changed this function to
+ do that. This way we get stack_trace for free.
+
+2002-08-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * object.c:
+ (mono_print_unhandled_exception): invoke Message property instead of
+ getting 'message' field from Exception. Don't allocate memory for
+ 'trace' and 'message' if not needed.
+
+2002-08-18 Dick Porter <dick@ximian.com>
+
+ * unicode.c: Fix asserts to match Encoder.cs checks
+
+Fri Aug 16 21:42:57 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * marshal.c: fix unaligned store issue and a few wrong
+ opcode argument types.
+
+2002-08-16 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c: added GetUninitializedObjectInternal internal call.
+
+2002-08-16 Dietmar Maurer <dietmar@ximian.com>
+
+ * appdomain.c (mono_runtime_invoke_in_domain): transfer Exception
+ to the right domain.
+
+2002-08-14 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_runtime_invoke): unbox value types
+
+ * class.c (class_compute_field_layout): set blittable to false for Strings
+
+ * appdomain.c (mono_domain_transfer_object): added support for ISerializable
+
+Wed Aug 14 17:26:27 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h, reflection.c, icall.c, object.c, reflection.h:
+ first chunk of code to create types at runtime. Code to
+ handle ReflectedType/DeclaringType. Make reflection handles
+ domain specific.
+
+Wed Aug 14 17:24:21 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: set correct name in arrays.
+
+2002-08-13 Dietmar Maurer <dietmar@ximian.com>
+
+ * appdomain.c (mono_domain_transfer_object): make it work with
+ valuetypes. bug fixes.
+
+2002-08-12 Dick Porter <dick@ximian.com>
+
+ * object.h: Rename some parameters to avoid c++ keywords (Patch
+ from Joseph Wenninger <kde@jowenn.at>)
+
+Thu Aug 8 13:04:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: added icall to implement Assembly.GetFile*.
+
+Thu Aug 8 10:18:17 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.h, reflection.c: code to embed managed resources.
+
+Tue Aug 6 17:59:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: move all the type size stuff into
+ class_compute_field_layout().
+
+Tue Aug 6 11:20:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c: ensure enums have always the correct instance size.
+ * unicode.c: remove wrong assert.
+
+Mon Aug 5 19:30:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * assembly.c: fix mem corruption issue.
+ * image.h, image.c: added mono_image_get_resource () to access
+ managed resources.
+ * icall.c: implemented Assembly.EntryPoint property and some
+ Managed Resources related internalcalls.
+
+
+Mon Aug 5 18:18:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * image.c, image.h: impemented mono_image_get_entry_point ().
+ * appdomain.c: use mono_image_get_entry_point.
+
+Mon Aug 5 13:08:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: support the object type argument when loading
+ custom attributes.
+
+2002-08-05 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): add suppport for
+ String as return type.
+
+Fri Aug 2 21:15:42 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fix encoding of named args for custom attrs to match
+ the ms implementation. Read them back when instantiating custom
+ attributes.
+
+2002-08-02 Radek Doulik <rodo@ximian.com>
+
+ * marshal.c (mono_mb_add_data): convert ret value to LE, suggested
+ by Dietmar as quick fix
+ (mono_marshal_get_delegate_begin_invoke): use sig->param_count +
+ 16 as stack size, used on more places as quick fix before Dietmar
+ will fix it properly
+
+Fri Aug 2 17:48:17 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.h, object.c: added accessors for fields and properties.
+
+Fri Aug 2 17:45:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, class.h: made mono_class_get_field_from_name ()
+ loop on parent types.
+ Added mono_class_get_property_from_name ().
+
+Fri Aug 2 11:40:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.c, class.h: move the code to setup the type vtable in its own
+ function so that it can be reused also for types created at runtime.
+ Eliminate the "class" identifier from the header file.
+ * reflection.c: setup the vtable for enums so that we can create
+ objects for use in SetConstant ().
+
+2002-08-02 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_delegate_to_ftnptr): pass delegate->target
+ instead of the delegate itself as this pointer (bug #28383)
+
+2002-08-01 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_managed_wrapper): added return type
+ conversions.
+
+Wed Jul 31 16:49:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * loader.c: don't set the pinvoke bit on icalls.
+
+2002-07-31 Dietmar Maurer <dietmar@ximian.com>
+
+ * debug-helpers.c (mono_method_full_name): only print a number to
+ indicate wrapper type (so that the output is more readable in traces).
+
+2002-07-30 Dietmar Maurer <dietmar@ximian.com>
+
+ * class.c (mono_class_init): include method override patch from Paolo
+
+Tue Jul 30 15:20:08 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: fixed GetTypeCode().
+
+2002-07-29 Dietmar Maurer <dietmar@ximian.com>
+
+ * threads.c (ves_icall_System_Threading_Thread_Thread_internal):
+ use real delegate invoke function to make it work with multicast
+ delegates (fix bug# 28291).
+
+Fri Jul 26 11:58:22 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.c: load constant strings.
+
+Fri Jul 26 11:36:14 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: no magic numbers.
+ * tabledefs.h: security action enum.
+
+Fri Jul 26 11:22:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * assembly.c: fix possible memory corruption.
+
+Thu Jul 25 13:58:38 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.h, reflection.c: added support for linking resources.
+ * verify.c: check we have an updated corlib.
+
+2002-07-25 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): correctly marshal
+ string arrays.
+ (mono_marshal_string_array): null terminate unmanaged string arrays.
+ (mono_marshal_get_managed_wrapper): print warning for arrays (not implemented)
+
+Wed Jul 24 13:32:36 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.c: Type.GetType () can now return also types from the
+ calling assembly.
+
+Wed Jul 24 13:04:05 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * loader.h, loader.c: stack walking support.
+ * icall.c: implemented GetCurrentMethod, GetExecutingAssembly,
+ GetCallingAssembly.
+
+2002-07-24 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c: added optimisations for blittable types
+
+ * class.c (mono_array_class_get): do not set blittable attribute on arrays
+ (mono_class_setup_mono_type): set blittable attribute for single
+ and double.
+
+ * marshal.c (mono_string_utf8_to_builder): impl.
+ (mono_string_builder_to_utf8): impl.
+ (mono_marshal_get_native_wrapper): impl. StringBuilder marshaling
+
+2002-07-23 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): impl. byref types
+ (mono_marshal_get_managed_wrapper): impl. byref types
+
+2002-07-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c:
+ (search_method): don't display debug message.
+
+2002-07-22 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.c (mono_type_stack_size): removed temporary fix for new gcc
+
+Mon Jul 22 18:17:05 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.c: set the missing filename when throwing exception.
+
+2002-07-22 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.c (mono_type_size): code cleanup
+ (mono_type_stack_size): removed some test code
+
+2002-07-21 Miguel de Icaza <miguel@ximian.com>
+
+ * appdomain.c (ves_icall_System_Reflection_Assembly_LoadFrom): Use
+ mono_get_exception_file_not_found now.
+
+ * exception.c (mono_exception_from_name_two_strings): New version
+ that will call a constructor with two string arguments.
+ (mono_get_exception_file_not_found): New helper routine, used to
+ report file-not-found errors.
+
+2002-07-20 Dick Porter <dick@ximian.com>
+
+ * process.h:
+ * process.c: Pass file handles to CreateProcess
+
+ * icall.c:
+ * file-io.h:
+ * file-io.c: Implemented CreatePipe
+
+2002-07-19 Dietmar Maurer <dietmar@ximian.com>
+
+ * metadata.c (mono_get_param_info): set alignment for value types
+
+Fri Jul 19 18:58:27 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * appdomain.h, domain.c, threads-types.h: don't include config.h in headers.
+ Constify mono_domain_assembly_open().
+ * loader.c: handle null namespace in icalls.
+
+2002-07-19 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (emit_ptr_to_str_conv): marshal object as structs
+ (emit_str_to_ptr_conv): marshal object as structs
+
+ * metadata.c (mono_type_to_unmanaged): marshal object as structs
+
+ * marshal.c (mono_marshal_get_runtime_invoke): support value types
+
+2002-07-18 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_runtime_invoke): use exception filters
+ (mono_marshal_get_native_wrapper): we an now return value types
+
+Wed Jul 17 18:21:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * verify.c: more checks implemented.
+
+2002-07-17 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_delegate_to_ftnptr): invoke the right method
+ (fix bug #27695)
+ (mono_marshal_get_native_wrapper): allow byref arguments
+ (ves_icall_System_Runtime_InteropServices_Marshal_PtrToStringXXX):
+ impl. PtrToStringXXX methods
+ (ves_icall_System_Runtime_InteropServices_Marshal_PtrToStructure_type): impl.
+ (ves_icall_System_Runtime_InteropServices_Marshal_OffsetOf): impl.
+ (ves_icall_System_Runtime_InteropServices_Marshal_StringToHGlobalAnsi): impl.
+ (ves_icall_System_Runtime_InteropServices_Marshal_StringToHGlobalUni): impl.
+ (ves_icall_System_Runtime_InteropServices_Marshal_DestroyStructure): impl.
+
+Tue Jul 16 19:00:57 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fix buglet in parsing an assembly name.
+
+2002-07-16 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (emit_ptr_to_str_conv): first impl.
+
+Tue Jul 16 12:39:33 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * object.c, class.h: cache the vtable in the class as suggested by
+ vargaz@freemail.hu (Zoltan Varga).
+
+Tue Jul 16 11:27:57 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * class.h, loader.c: added mono_field_from_token().
+ * verify.c: first cut of type checking code.
+
+2002-07-16 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): support valuetypes
+
+2002-07-15 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): handle enum types
+ (fix bug #27782)
+ (mono_marshal_get_remoting_invoke): impl.
+ (mono_delegate_begin_invoke): impl.
+ (mono_mb_emit_save_args): impl.
+ (mono_delegate_end_invoke): impl.
+ (mono_marshal_get_delegate_begin_invoke):
+ (mono_marshal_get_delegate_end_invoke):
+ (mono_marshal_get_delegate_invoke): generate a special name for
+ those methods (including the signature) and associate them whith
+ the delegate class.
+
+2002-07-13 Gonzalo Paniagua Javier <gonzalo@gnome-db.org>
+
+ * reflection.[ch]:
+ (mono_reflection_type_from_name): now it has a MonoImage parameter
+ which is used as the default image to search the type in. If the image
+ is NULL or getting the type from it fails, it defaults to corlib.
+
+ * icall.c: changed 1 call to mono_reflection_type_from_name to match
+ new parameter.
+
+Sat Jul 13 19:32:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: update the parameter table index.
+
+Sat Jul 13 17:34:23 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * domain.c: don't include the mark byte in the string hash.
+
+Sat Jul 13 15:06:23 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * icall.cs: icall for Type.GetTypeCode ().
+ * verify: a couple of fixes and disabled local initialization checks.
+
+2002-07-12 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c: better debugging support (DEBUG_RUNTIME_CODE)
+
+ * debug-helpers.c (mono_method_full_name): print the type of the
+ runtime wrapper
+
+ * metadata.c (mono_signature_hash): a hash function for signatures
+ (mono_signature_hash): better hash algorithm
+
+ * marshal.c (mono_marshal_get_delegate_invoke): cache methods by signature
+
+ * debug-helpers.c (mono_method_full_name): this can now generate
+ method names with signatures
+
+ * marshal.c (mono_marshal_get_managed_wrapper): bug fix: unmanaged
+ method dont have this pointers.
+
+Fri Jul 12 11:35:48 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: fixup typebuilder tokens.
+ * image.c: fix buglet.
+ * marshal.h: remove whitespace.
+ * metadata.h, metadata.c: reinstate code that was removed.
+ * verify.c: handle catch directives and fix another couple of bugs.
+
+2002-07-11 Dietmar Maurer <dietmar@ximian.com>
+
+ * marshal.c (mono_marshal_get_native_wrapper): support BOOLEAN
+ (mono_marshal_get_native_wrapper): make it comp. with the old code
+ (mono_marshal_get_native_wrapper): support boolean
+ (mono_marshal_get_managed_wrapper): support more types
+
+2002-06-25 Dietmar Maurer <dietmar@ximian.com>
+
+ * class.c (class_compute_field_layout): compute class->blittable attribute.
+
+2002-07-09 Dick Porter <dick@ximian.com>
+
+ * threads.c: Make the thread cleaning up cope with threads that
+ call ExitThread()
+
+2002-07-08 Radek Doulik <rodo@ximian.com>
+
+ * reflection.c (method_encode_code): use non-translated values to
+ compute finally_start, this fixes exception handling on ppc, yay!
+
+ * decimal.h (struct signscale): fix endianess
+
+2002-07-07 Radek Doulik <rodo@ximian.com>
+
+ * reflection.c: swap box_val and not val
+
+Mon Jul 8 15:18:59 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c, reflection.h: handle full assembly info in type name.
+ Handle Type arguments when loading custom attributes.
+ * icall.c: updated to use new mono_reflection_type_from_name () method.
+
+2002-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * loader.c:
+ (method_from_memberref): also print assembly name when method not found.
+
+2002-07-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * icall.c:
+ (ves_icall_TypeGetProperties): fixed bug #27473.
+
+2002-07-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * reflection.c: display image name and token when cannot find the
+ .ctor for an attribute.
+
+2002-07-05 Martin Baulig <martin@gnome.org>
+
+ * debug-symfile.c: Reflect latest MonoDwarfFileWriter changes.
+
+2002-07-04 Dick Porter <dick@ximian.com>
+
+ * threads.c (mono_thread_cleanup): Nasty kludge to get this to
+ compile on mingw. This will cause mingw builds to not wait for
+ subthreads to terminate after the main thread does. I've lodged a
+ bug with the mingw developers for them to wrap OpenThread().
+
+2002-07-03 Dick Porter <dick@ximian.com>
+
+ * threads.c: Store thread IDs instead of handles, because
+ GetCurrentThread() returns a pseudohandle and therefore stores
+ useless values. mono_thread_cleanup() continues checking the
+ array of threads until it is empty, to cope with subthreads
+ spawning new threads after the main thread has finished.
+
+ * profiler.h:
+ * profiler.c:
+ * profiler-private.h: Pass the thread ID to thread profiler
+ functions, instead of a handle
+
+Wed Jul 3 17:43:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * verify.c: fixes to make it more usable.
+ * pedump.c: added --verify code to verify IL code in an assembly.
+
+Tue Jul 2 20:40:56 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: turn errors into warnings to allow compiling corlib.
+
+Tue Jul 2 19:33:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: add special cases to compile corlib.
+
+Mon Jul 1 18:00:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * reflection.c: handle properties with only a set method.
+
+Mon Jul 1 17:11:11 CEST 2002 Paolo Molaro <lupus@ximian.com>
+
+ * opcodes.h: add enum with opcodes in opval order.
+
+2002-07-01 Dick Porter <dick@ximian.com>
+
+ * object.h:
+ * object.c (mono_runtime_run_main): Removed unneeded argument
+
+2002-06-28 Martin Baulig <martin@gnome.org>
+
+ * debug-symfile.c: Reflect latest MonoDwarfFileWriter changes.
+
+2002-06-27 Dick Porter <dick@ximian.com>
+
+ * threads.c: Store the handle in both the parent thread and in the
+ subthread, to minimise the time between starting a new thread and
+ storing its ID.
+
+2002-06-26 Dick Porter <dick@ximian.com>
+
+ * appdomain.c (mono_runtime_cleanup): Close the socket library
+ after all the threads have finished, not before
+
+2002-06-26 Martin Baulig <martin@gnome.org>
+
+ * debug-symfile.c (mono_debug_find_source_location): Added
+ `guint32 *line_number' argument. If it's not NULL, store the line number
+ there and return the file name without the line number.
+
2002-06-25 Dick Porter <dick@ximian.com>
* icall.c: