diff src/share/vm/prims/jvmtiRedefineClasses.cpp @ 2377:57552dca1708

7029509: nightly failures after static fields in Class Reviewed-by: kvn
author never
date Mon, 21 Mar 2011 14:06:50 -0700
parents fbbeec6dad2d
children 2d4b2b833d29
line wrap: on
line diff
--- a/src/share/vm/prims/jvmtiRedefineClasses.cpp	Fri Mar 18 16:00:34 2011 -0700
+++ b/src/share/vm/prims/jvmtiRedefineClasses.cpp	Mon Mar 21 14:06:50 2011 -0700
@@ -3350,11 +3350,12 @@
 
   for (Klass *subk = ik->subklass(); subk != NULL;
        subk = subk->next_sibling()) {
-    klassOop sub = subk->as_klassOop();
-    instanceKlass *subik = (instanceKlass *)sub->klass_part();
-
-    // recursively do subclasses of the current subclass
-    increment_class_counter(subik, THREAD);
+    if (subk->oop_is_instance()) {
+      // Only update instanceKlasses
+      instanceKlass *subik = (instanceKlass*)subk;
+      // recursively do subclasses of the current subclass
+      increment_class_counter(subik, THREAD);
+    }
   }
 }