Author: raja
Date: 2007-01-11 06:03:31 -0500 (Thu, 11 Jan 2007)
New Revision: 70849
Modified:
trunk/mono/mono/metadata/ChangeLog
trunk/mono/mono/metadata/metadata.c
Log:
Fix IronPython regression mentioned in #80249
* metadata.c (do_mono_metadata_parse_generic_class): Clear
'cached_context' field, since it may have been initialized as a
side-effect of metadata parsing.
Modified: trunk/mono/mono/metadata/ChangeLog
===================================================================
--- trunk/mono/mono/metadata/ChangeLog 2007-01-11 10:21:18 UTC (rev 70848)
+++ trunk/mono/mono/metadata/ChangeLog 2007-01-11 11:03:31 UTC (rev 70849)
@@ -1,5 +1,10 @@
2007-01-11 Raja R Harinath <[EMAIL PROTECTED]>
+ Fix IronPython regression mentioned in #80249
+ * metadata.c (do_mono_metadata_parse_generic_class): Clear
+ 'cached_context' field, since it may have been initialized as a
+ side-effect of metadata parsing.
+
* class-internals.h (_MonoGenericClass.is_inflated): Remove.
(_MonoGenericClass.cached_class): Move here and rename from lone
remaining field of ...
Modified: trunk/mono/mono/metadata/metadata.c
===================================================================
--- trunk/mono/mono/metadata/metadata.c 2007-01-11 10:21:18 UTC (rev 70848)
+++ trunk/mono/mono/metadata/metadata.c 2007-01-11 11:03:31 UTC (rev 70849)
@@ -2031,6 +2031,11 @@
count = mono_metadata_decode_value (ptr, &ptr);
gclass->inst = mono_metadata_parse_generic_inst (m, container, count,
ptr, &ptr);
+ /* FIXME: this hack is needed to handle the incestuous relationship
between metadata parsing and MonoClass. */
+ if (gclass->cached_context) {
+ g_free (gclass->cached_context);
+ gclass->cached_context = NULL;
+ }
if (rptr)
*rptr = ptr;
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches