< prev index next >

src/share/vm/classfile/systemDictionary.cpp

Print this page

        

@@ -494,14 +494,15 @@
   bool calledholdinglock
       = ObjectSynchronizer::current_thread_holds_lock((JavaThread*)THREAD, lockObject);
   assert(calledholdinglock,"must hold lock for notify");
   assert((!(lockObject() == _system_loader_lock_obj) && !is_parallelCapable(lockObject)), "unexpected double_lock_wait");
   ObjectSynchronizer::notifyall(lockObject, THREAD);
-  intptr_t recursions =  ObjectSynchronizer::complete_exit(lockObject, THREAD);
+  intptr_t saved_recursions, saved_trace_exit_stack;
+  ObjectSynchronizer::complete_exit(lockObject, &saved_recursions, &saved_trace_exit_stack, THREAD);
   SystemDictionary_lock->wait();
   SystemDictionary_lock->unlock();
-  ObjectSynchronizer::reenter(lockObject, recursions, THREAD);
+  ObjectSynchronizer::reenter(lockObject, saved_recursions, saved_trace_exit_stack, THREAD);
   SystemDictionary_lock->lock();
 }
 
 // If the class in is in the placeholder table, class loading is in progress
 // For cases where the application changes threads to load classes, it
< prev index next >