8152949: Jigsaw crash when Klass in _fixup_module_field_list is unloaded

During start up anonymous classes must be kept alive until after their mirror's module field is patched with java.base

Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Reviewed-by: coleenp, hseigel
This commit is contained in:
Per Liden 2016-04-21 09:23:04 -04:00 committed by Lois Foltan
parent 4adb7c0788
commit 48892f6f68
6 changed files with 31 additions and 6 deletions

View file

@ -354,6 +354,7 @@ void ModuleEntryTable::patch_javabase_entries(Handle module_handle) {
Thread* THREAD = Thread::current();
KlassHandle kh(THREAD, k);
java_lang_Class::fixup_module_field(kh, module_handle);
k->class_loader_data()->dec_keep_alive();
}
delete java_lang_Class::fixup_module_field_list();