Mercurial > hg > truffle
comparison src/share/vm/classfile/loaderConstraints.cpp @ 2244:4f26f535a225
6354181: nsk.logging.stress.threads.scmhml001 fails assertion in "src/share/vm/oops/instanceKlass.cpp, 111"
Reviewed-by: jrose, acorn
author | never |
---|---|
date | Mon, 31 Jan 2011 17:48:21 -0800 |
parents | 3582bf76420e |
children | 1d1603768966 |
comparison
equal
deleted
inserted
replaced
2177:3582bf76420e | 2244:4f26f535a225 |
---|---|
320 } | 320 } |
321 | 321 |
322 klassOop LoaderConstraintTable::find_constrained_klass(Symbol* name, | 322 klassOop LoaderConstraintTable::find_constrained_klass(Symbol* name, |
323 Handle loader) { | 323 Handle loader) { |
324 LoaderConstraintEntry *p = *(find_loader_constraint(name, loader)); | 324 LoaderConstraintEntry *p = *(find_loader_constraint(name, loader)); |
325 if (p != NULL && p->klass() != NULL) | 325 if (p != NULL && p->klass() != NULL) { |
326 if (Klass::cast(p->klass())->oop_is_instance() && !instanceKlass::cast(p->klass())->is_loaded()) { | |
327 // Only return fully loaded classes. Classes found through the | |
328 // constraints might still be in the process of loading. | |
329 return NULL; | |
330 } | |
326 return p->klass(); | 331 return p->klass(); |
332 } | |
327 | 333 |
328 // No constraints, or else no klass loaded yet. | 334 // No constraints, or else no klass loaded yet. |
329 return NULL; | 335 return NULL; |
330 } | 336 } |
331 | 337 |