2003-01-21 Dietmar Maurer <dietmar@ximian.com>
authorDietmar Maurer <dietmar@mono-cvs.ximian.com>
Tue, 21 Jan 2003 09:27:40 +0000 (09:27 -0000)
committerDietmar Maurer <dietmar@mono-cvs.ximian.com>
Tue, 21 Jan 2003 09:27:40 +0000 (09:27 -0000)
* 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

svn path=/trunk/mono/; revision=10771

mono/metadata/ChangeLog
mono/metadata/class.c

index 5ddacab4a88585a4d3719729493d006766028688..d083fa2a34155150b592b633463b8624d62810b1 100644 (file)
@@ -1,3 +1,9 @@
+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.
index 5cdd00b788b09cbecd81e100082cbd4e678327ab..a201e323ea3c05310372180511a6e5fb065ce465 100644 (file)
@@ -1249,6 +1249,7 @@ mono_ptr_class_get (MonoType *type)
        result->name_space = "MonoPtrFakeClass";
        result->image = el_class->image;
        result->inited = TRUE;
+       result->flags = TYPE_ATTRIBUTE_CLASS | (el_class->flags & TYPE_ATTRIBUTE_VISIBILITY_MASK);
        /* Can pointers get boxed? */
        result->instance_size = sizeof (gpointer);
        /*
@@ -1405,7 +1406,7 @@ mono_array_class_get (MonoType *element_type, guint32 rank)
        name [nsize + rank + 1] = 0;
        class->name = name;
        class->type_token = 0;
-       class->flags = TYPE_ATTRIBUTE_CLASS;
+       class->flags = TYPE_ATTRIBUTE_CLASS | (eclass->flags & TYPE_ATTRIBUTE_VISIBILITY_MASK);
        class->parent = parent;
        class->instance_size = mono_class_instance_size (class->parent);
        class->class_size = 0;