Mercurial > hg > truffle
comparison src/share/vm/services/attachListener.cpp @ 12289:8ddc26f62476
6989981: jstack causes "fatal error: ExceptionMark destructor expects no pending exceptions"
Reviewed-by: sla, dsamersoff
Contributed-by: Yasumasa Suenaga <yasu@ysfactory.dip.jp>
author | sla |
---|---|
date | Sun, 22 Sep 2013 06:31:43 -0700 |
parents | f2110083203d |
children | a07c25e4f67e |
comparison
equal
deleted
inserted
replaced
12288:a7609ec351d6 | 12289:8ddc26f62476 |
---|---|
468 klass, | 468 klass, |
469 vmSymbols::object_initializer_name(), | 469 vmSymbols::object_initializer_name(), |
470 vmSymbols::threadgroup_string_void_signature(), | 470 vmSymbols::threadgroup_string_void_signature(), |
471 thread_group, | 471 thread_group, |
472 string, | 472 string, |
473 CHECK); | 473 THREAD); |
474 | |
475 if (HAS_PENDING_EXCEPTION) { | |
476 tty->print_cr("Exception in VM (AttachListener::init) : "); | |
477 java_lang_Throwable::print(PENDING_EXCEPTION, tty); | |
478 tty->cr(); | |
479 | |
480 CLEAR_PENDING_EXCEPTION; | |
481 | |
482 return; | |
483 } | |
474 | 484 |
475 KlassHandle group(THREAD, SystemDictionary::ThreadGroup_klass()); | 485 KlassHandle group(THREAD, SystemDictionary::ThreadGroup_klass()); |
476 JavaCalls::call_special(&result, | 486 JavaCalls::call_special(&result, |
477 thread_group, | 487 thread_group, |
478 group, | 488 group, |
479 vmSymbols::add_method_name(), | 489 vmSymbols::add_method_name(), |
480 vmSymbols::thread_void_signature(), | 490 vmSymbols::thread_void_signature(), |
481 thread_oop, // ARG 1 | 491 thread_oop, // ARG 1 |
482 CHECK); | 492 THREAD); |
493 | |
494 if (HAS_PENDING_EXCEPTION) { | |
495 tty->print_cr("Exception in VM (AttachListener::init) : "); | |
496 java_lang_Throwable::print(PENDING_EXCEPTION, tty); | |
497 tty->cr(); | |
498 | |
499 CLEAR_PENDING_EXCEPTION; | |
500 | |
501 return; | |
502 } | |
483 | 503 |
484 { MutexLocker mu(Threads_lock); | 504 { MutexLocker mu(Threads_lock); |
485 JavaThread* listener_thread = new JavaThread(&attach_listener_thread_entry); | 505 JavaThread* listener_thread = new JavaThread(&attach_listener_thread_entry); |
486 | 506 |
487 // Check that thread and osthread were created | 507 // Check that thread and osthread were created |