--- old/src/hotspot/share/classfile/systemDictionaryShared.cpp 2019-02-11 09:17:56.532245020 -0800 +++ new/src/hotspot/share/classfile/systemDictionaryShared.cpp 2019-02-11 09:17:56.412240704 -0800 @@ -803,7 +803,7 @@ SystemDictionary::is_platform_class_loader(class_loader()))) { Handle protection_domain = SystemDictionaryShared::init_security_info(class_loader, ik, CHECK_NULL); - return load_shared_class(ik, class_loader, protection_domain, THREAD); + return load_shared_class(ik, class_loader, protection_domain, NULL, THREAD); } } return NULL; @@ -873,13 +873,15 @@ } return acquire_class_for_current_thread(record->_klass, class_loader, - protection_domain, THREAD); + protection_domain, cfs, + THREAD); } InstanceKlass* SystemDictionaryShared::acquire_class_for_current_thread( InstanceKlass *ik, Handle class_loader, Handle protection_domain, + const ClassFileStream *cfs, TRAPS) { ClassLoaderData* loader_data = ClassLoaderData::class_loader_data(class_loader()); @@ -900,7 +902,8 @@ loader_data->add_class(ik); // Load and check super/interfaces, restore unsharable info - InstanceKlass* shared_klass = load_shared_class(ik, class_loader, protection_domain, THREAD); + InstanceKlass* shared_klass = load_shared_class(ik, class_loader, protection_domain, + cfs, THREAD); if (shared_klass == NULL || HAS_PENDING_EXCEPTION) { // TODO: clean up so it can be used again return NULL;