+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
if (kind == MONO_TYPE_OBJECT) {
klass = mono_defaults.object_class;
kind = MONO_TYPE_CLASS;
- } else if ((kind == MONO_TYPE_VALUETYPE) || (kind == MONO_TYPE_CLASS))
+ } else if ((kind == MONO_TYPE_VALUETYPE) || (kind == MONO_TYPE_CLASS)) {
klass = type->data.klass;
+ retval = g_hash_table_lookup (class_table, klass);
+ if (retval)
+ return retval;
+ }
switch (kind) {
case MONO_TYPE_SZARRAY:
GHashTable *method_slots = NULL;
int i;
+ if (klass->init_pending) {
+ size = sizeof (int);
+ break;
+ }
+
mono_class_init (klass);
retval = g_hash_table_lookup (class_table, klass);
int base_offset = kind == MONO_TYPE_CLASS ? 0 : - sizeof (MonoObject);
int i, j;
+ if (klass->init_pending) {
+ *((int *) ptr)++ = -1;
+ break;
+ }
+
g_hash_table_insert (class_table, klass, retval);
if (klass->enumtype) {