< prev index next >
src/share/vm/classfile/modules.cpp
Print this page
*** 160,185 ****
location_symbol = SymbolTable::new_symbol(module_location, CHECK);
}
}
! // Check that the list of packages has no duplicates and that the
! // packages are syntactically ok.
GrowableArray<Symbol*>* pkg_list = new GrowableArray<Symbol*>(num_packages);
for (int x = 0; x < num_packages; x++) {
const char *package_name = packages[x];
if (!Modules::verify_package_name(package_name)) {
THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
err_msg("Invalid package name: %s for module: " JAVA_BASE_NAME, package_name));
}
Symbol* pkg_symbol = SymbolTable::new_symbol(package_name, CHECK);
! // append_if_missing() returns FALSE if entry already exists.
! if (!pkg_list->append_if_missing(pkg_symbol)) {
! THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
! err_msg("Duplicate package name: %s for module " JAVA_BASE_NAME,
! package_name));
! }
}
// Validate java_base's loader is the boot loader.
oop loader = java_lang_reflect_Module::loader(module_handle());
if (loader != NULL) {
--- 160,179 ----
location_symbol = SymbolTable::new_symbol(module_location, CHECK);
}
}
! // Check that the packages are syntactically ok.
GrowableArray<Symbol*>* pkg_list = new GrowableArray<Symbol*>(num_packages);
for (int x = 0; x < num_packages; x++) {
const char *package_name = packages[x];
if (!Modules::verify_package_name(package_name)) {
THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
err_msg("Invalid package name: %s for module: " JAVA_BASE_NAME, package_name));
}
Symbol* pkg_symbol = SymbolTable::new_symbol(package_name, CHECK);
! pkg_list->append(pkg_symbol);
}
// Validate java_base's loader is the boot loader.
oop loader = java_lang_reflect_Module::loader(module_handle());
if (loader != NULL) {
*** 338,353 ****
jio_snprintf(message, len, "%s%s%s%s", msg_text1, class_loader_name, msg_text2, pkg_name);
THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(), message);
}
Symbol* pkg_symbol = SymbolTable::new_symbol(package_name, CHECK);
! // append_if_missing() returns FALSE if entry already exists.
! if (!pkg_list->append_if_missing(pkg_symbol)) {
! THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(),
! err_msg("Duplicate package name: %s for module %s",
! package_name, module_name));
! }
}
ModuleEntryTable* module_table = get_module_entry_table(h_loader, CHECK);
assert(module_table != NULL, "module entry table shouldn't be null");
--- 332,342 ----
jio_snprintf(message, len, "%s%s%s%s", msg_text1, class_loader_name, msg_text2, pkg_name);
THROW_MSG(vmSymbols::java_lang_IllegalArgumentException(), message);
}
Symbol* pkg_symbol = SymbolTable::new_symbol(package_name, CHECK);
! pkg_list->append(pkg_symbol);
}
ModuleEntryTable* module_table = get_module_entry_table(h_loader, CHECK);
assert(module_table != NULL, "module entry table shouldn't be null");
< prev index next >