< prev index next >
src/hotspot/share/classfile/moduleEntry.cpp
Print this page
*** 23,33 ****
*/
#include "precompiled.hpp"
#include "jni.h"
#include "classfile/classLoaderData.inline.hpp"
! #include "classfile/javaClasses.hpp"
#include "classfile/moduleEntry.hpp"
#include "logging/log.hpp"
#include "memory/resourceArea.hpp"
#include "oops/oopHandle.inline.hpp"
#include "oops/symbol.hpp"
--- 23,33 ----
*/
#include "precompiled.hpp"
#include "jni.h"
#include "classfile/classLoaderData.inline.hpp"
! #include "classfile/javaClasses.inline.hpp"
#include "classfile/moduleEntry.hpp"
#include "logging/log.hpp"
#include "memory/resourceArea.hpp"
#include "oops/oopHandle.inline.hpp"
#include "oops/symbol.hpp"
*** 234,247 ****
ModuleEntry* ModuleEntry::create_unnamed_module(ClassLoaderData* cld) {
// The java.lang.Module for this loader's
// corresponding unnamed module can be found in the java.lang.ClassLoader object.
oop module = java_lang_ClassLoader::unnamedModule(cld->class_loader());
ModuleEntry* unnamed_module = new_unnamed_module_entry(Handle(Thread::current(), module), cld);
! // Store pointer to the ModuleEntry in the unnamed module's java.lang.Module
! // object.
java_lang_Module::set_module_entry(module, unnamed_module);
return unnamed_module;
}
--- 234,251 ----
ModuleEntry* ModuleEntry::create_unnamed_module(ClassLoaderData* cld) {
// The java.lang.Module for this loader's
// corresponding unnamed module can be found in the java.lang.ClassLoader object.
oop module = java_lang_ClassLoader::unnamedModule(cld->class_loader());
+
+ // Ensure that the unnamed module was correctly set when
+ // the class loader was constructed.
+ guarantee(java_lang_Module::is_instance(module), "unnamed module is not an instance of type java.lang.Module");
+
ModuleEntry* unnamed_module = new_unnamed_module_entry(Handle(Thread::current(), module), cld);
! // Store pointer to the ModuleEntry in the unnamed module's java.lang.Module object.
java_lang_Module::set_module_entry(module, unnamed_module);
return unnamed_module;
}
< prev index next >