3350 objArrayOop result = ClassLoader::get_system_packages(CHECK_NULL); |
3350 objArrayOop result = ClassLoader::get_system_packages(CHECK_NULL); |
3351 return (jobjectArray) JNIHandles::make_local(result); |
3351 return (jobjectArray) JNIHandles::make_local(result); |
3352 JVM_END |
3352 JVM_END |
3353 |
3353 |
3354 |
3354 |
|
3355 // java.lang.ref.Reference /////////////////////////////////////////////////////////////// |
|
3356 |
|
3357 |
|
3358 JVM_ENTRY(jobject, JVM_GetAndClearReferencePendingList(JNIEnv* env)) |
|
3359 JVMWrapper("JVM_GetAndClearReferencePendingList"); |
|
3360 |
|
3361 MonitorLockerEx ml(Heap_lock); |
|
3362 oop ref = Universe::reference_pending_list(); |
|
3363 if (ref != NULL) { |
|
3364 Universe::set_reference_pending_list(NULL); |
|
3365 } |
|
3366 return JNIHandles::make_local(env, ref); |
|
3367 JVM_END |
|
3368 |
|
3369 JVM_ENTRY(jboolean, JVM_HasReferencePendingList(JNIEnv* env)) |
|
3370 JVMWrapper("JVM_HasReferencePendingList"); |
|
3371 MonitorLockerEx ml(Heap_lock); |
|
3372 return Universe::has_reference_pending_list(); |
|
3373 JVM_END |
|
3374 |
|
3375 JVM_ENTRY(void, JVM_WaitForReferencePendingList(JNIEnv* env)) |
|
3376 JVMWrapper("JVM_WaitForReferencePendingList"); |
|
3377 MonitorLockerEx ml(Heap_lock); |
|
3378 while (!Universe::has_reference_pending_list()) { |
|
3379 ml.wait(); |
|
3380 } |
|
3381 JVM_END |
|
3382 |
|
3383 |
3355 // ObjectInputStream /////////////////////////////////////////////////////////////// |
3384 // ObjectInputStream /////////////////////////////////////////////////////////////// |
3356 |
3385 |
3357 bool force_verify_field_access(Klass* current_class, Klass* field_class, AccessFlags access, bool classloader_only) { |
3386 bool force_verify_field_access(Klass* current_class, Klass* field_class, AccessFlags access, bool classloader_only) { |
3358 if (current_class == NULL) { |
3387 if (current_class == NULL) { |
3359 return true; |
3388 return true; |