Thanks Dan! On 30 maj 2014, at 15:26, Daniel D. Daugherty <daniel.daughe...@oracle.com> wrote:
> > webrev: http://cr.openjdk.java.net/~sla/8044398/webrev.00/ > > src/share/vm/services/attachListener.cpp > No comment. > > Thumbs up! > > Dan > > > On 5/30/14 12:51 AM, Staffan Larsen wrote: >> The code in attachListener.cpp does this: >> >> DCmd::parse_and_execute(DCmd_Source_AttachAPI, out, op->arg(0), ' ', >> THREAD); >> if (HAS_PENDING_EXCEPTION) { >> java_lang_Throwable::print(PENDING_EXCEPTION, out); >> out->cr(); >> CLEAR_PENDING_EXCEPTION; >> // The exception has been printed on the output stream >> // If the JVM returns JNI_ERR, the attachAPI throws a generic I/O >> // exception and the content of the output stream is not processed. >> // By returning JNI_OK, the exception will be displayed on the client >> side >> } >> return JNI_OK; >> >> That was correct before the fix of JDK-8039173. After that fix, the attach >> framework is able to propagate error messages as exceptions when an attach >> command fails. >> >> The code in attachListener.cpp should be updated to: >> >> DCmd::parse_and_execute(DCmd_Source_AttachAPI, out, op->arg(0), ' ', >> THREAD); >> if (HAS_PENDING_EXCEPTION) { >> java_lang_Throwable::print(PENDING_EXCEPTION, out); >> out->cr(); >> CLEAR_PENDING_EXCEPTION; >> return JNI_ERR; >> } >> return JNI_OK; >> >> webrev: http://cr.openjdk.java.net/~sla/8044398/webrev.00/ >> bug: https://bugs.openjdk.java.net/browse/JDK-8044398 >> >> Thanks, >> /Staffan >> >