src/share/vm/oops/instanceKlass.cpp
Print this page
@@ -2215,13 +2215,18 @@
}
return host->class_loader_data()->modules()->unnamed_module();
}
void InstanceKlass::set_package(ClassLoaderData* loader_data, TRAPS) {
+
+ // ensure java/ packages only loaded by boot or platform builtin loaders
+ SystemDictionary::check_prohibited_package(name(), loader_data->class_loader(), CHECK);
+
TempNewSymbol pkg_name = package_from_name(name(), CHECK);
if (pkg_name != NULL && loader_data != NULL) {
+
// Find in class loader's package entry table.
_package_entry = loader_data->packages()->lookup_only(pkg_name);
// If the package name is not found in the loader's package
// entry table, it is an indication that the package has not