src/share/vm/classfile/classFileParser.cpp
Print this page
*** 4306,4318 ****
DefaultMethods::generate_default_methods(
this_klass(), &all_mirandas, CHECK_(nullHandle));
}
// Add read edges to the unnamed modules of the bootstrap and app class loaders.
! if (cf_changed_in_CFLH && !jlrM_handle.is_null() && module_entry->is_named()) {
JvmtiExport::add_default_read_edges(jlrM_handle, THREAD);
}
// Update the loader_data graph.
record_defined_class_dependencies(this_klass, CHECK_NULL);
ClassLoadingService::notify_class_loaded(InstanceKlass::cast(this_klass()),
--- 4306,4322 ----
DefaultMethods::generate_default_methods(
this_klass(), &all_mirandas, CHECK_(nullHandle));
}
// Add read edges to the unnamed modules of the bootstrap and app class loaders.
! if (cf_changed_in_CFLH && !jlrM_handle.is_null() && module_entry->is_named() &&
! !module_entry->has_default_read_edges()) {
! if (!module_entry->set_has_default_read_edges()) {
! // We won a potential race
JvmtiExport::add_default_read_edges(jlrM_handle, THREAD);
}
+ }
// Update the loader_data graph.
record_defined_class_dependencies(this_klass, CHECK_NULL);
ClassLoadingService::notify_class_loaded(InstanceKlass::cast(this_klass()),