[vmkit-commits] [vmkit] r57916 - /vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Tue Oct 21 12:02:24 PDT 2008
Author: geoffray
Date: Tue Oct 21 14:02:23 2008
New Revision: 57916
URL: http://llvm.org/viewvc/llvm-project?rev=57916&view=rev
Log:
Missed that one: It was causing a sigsegv when collecting in "inappropriate"
moments.
Modified:
vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h
Modified: vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h?rev=57916&r1=57915&r2=57916&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h (original)
+++ vmkit/trunk/lib/JnJVM/Classpath/ClasspathReflect.h Tue Oct 21 14:02:23 2008
@@ -37,7 +37,7 @@
obj->pd->MARK_AND_TRACE;
obj->signers->MARK_AND_TRACE;
obj->constructor->MARK_AND_TRACE;
- obj->vmdata->classLoader->MARK_AND_TRACE;
+ if (obj->vmdata) obj->vmdata->classLoader->MARK_AND_TRACE;
}
};
@@ -54,7 +54,8 @@
obj->JavaObject::CALL_TRACER;
obj->name->MARK_AND_TRACE;
obj->declaringClass->MARK_AND_TRACE;
- obj->slot->classDef->classLoader->MARK_AND_TRACE;
+ // No need to see if classDef != NULL, it must be.
+ if (obj->slot) obj->slot->classDef->classLoader->MARK_AND_TRACE;
}
};
@@ -72,7 +73,7 @@
obj->JavaObject::CALL_TRACER;
obj->name->MARK_AND_TRACE;
obj->declaringClass->MARK_AND_TRACE;
- obj->slot->classDef->classLoader->MARK_AND_TRACE;
+ if (obj->slot) obj->slot->classDef->classLoader->MARK_AND_TRACE;
}
};
@@ -87,7 +88,7 @@
static void STATIC_TRACER(JavaObjectConstructor) {
obj->JavaObject::CALL_TRACER;
obj->clazz->MARK_AND_TRACE;
- obj->slot->classDef->classLoader->MARK_AND_TRACE;
+ if (obj->slot) obj->slot->classDef->classLoader->MARK_AND_TRACE;
}
};
More information about the vmkit-commits
mailing list