< prev index next >
src/hotspot/share/classfile/systemDictionaryShared.cpp
Print this page
rev 58452 : imported patch pkg_name_from_class
@@ -441,13 +441,13 @@
}
Handle SystemDictionaryShared::get_package_name(Symbol* class_name, TRAPS) {
ResourceMark rm(THREAD);
Handle pkgname_string;
- char* pkgname = (char*) ClassLoader::package_from_name((const char*) class_name->as_C_string());
- if (pkgname != NULL) { // Package prefix found
- StringUtils::replace_no_expand(pkgname, "/", ".");
+ Symbol* pkg = InstanceKlass::package_from_name(class_name);
+ if (pkg != NULL) { // Package prefix found
+ const char* pkgname = pkg->as_klass_external_name();
pkgname_string = java_lang_String::create_from_str(pkgname,
CHECK_(pkgname_string));
}
return pkgname_string;
}
@@ -600,11 +600,11 @@
// for fast access by the VM.
ResourceMark rm;
ClassLoaderData *loader_data =
ClassLoaderData::class_loader_data(class_loader());
PackageEntryTable* pkgEntryTable = loader_data->packages();
- TempNewSymbol pkg_name = InstanceKlass::package_from_name(class_name, CHECK_(pd));
+ TempNewSymbol pkg_name = InstanceKlass::package_from_name(class_name);
if (pkg_name != NULL) {
PackageEntry* pkg_entry = pkgEntryTable->lookup_only(pkg_name);
if (pkg_entry != NULL) {
ModuleEntry* mod_entry = pkg_entry->module();
pd = get_shared_protection_domain(class_loader, mod_entry, THREAD);
< prev index next >