< prev index next >

src/share/vm/prims/jvmtiEnvBase.hpp

Print this page

        

*** 28,37 **** --- 28,38 ---- #include "classfile/classLoader.hpp" #include "prims/jvmtiEnvThreadState.hpp" #include "prims/jvmtiEventController.hpp" #include "prims/jvmtiThreadState.hpp" #include "prims/jvmtiThreadState.inline.hpp" + #include "oops/oopHandle.hpp" #include "runtime/fieldDescriptor.hpp" #include "runtime/frame.hpp" #include "runtime/handles.inline.hpp" #include "runtime/thread.hpp" #include "runtime/vm_operations.hpp"
*** 702,717 **** // Jvmti module closure to collect all modules loaded to the system. class JvmtiModuleClosure : public StackObj { private: ! static GrowableArray<jobject> *_tbl; // Protected with Module_lock static void do_module(ModuleEntry* entry) { assert_locked_or_safepoint(Module_lock); ! jobject module = entry->module_handle(); ! guarantee(module != NULL, "module object is NULL"); _tbl->push(module); } public: jvmtiError get_all_modules(JvmtiEnv* env, jint* module_count_ptr, jobject** modules_ptr); --- 703,718 ---- // Jvmti module closure to collect all modules loaded to the system. class JvmtiModuleClosure : public StackObj { private: ! static GrowableArray<OopHandle> *_tbl; // Protected with Module_lock static void do_module(ModuleEntry* entry) { assert_locked_or_safepoint(Module_lock); ! OopHandle module = entry->module_handle(); ! guarantee(module.resolve() != NULL, "module object is NULL"); _tbl->push(module); } public: jvmtiError get_all_modules(JvmtiEnv* env, jint* module_count_ptr, jobject** modules_ptr);
< prev index next >