Runtime.java (_exit): Declare new package-private native.
2001-03-12 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/Runtime.java (_exit): Declare new package-private native. * java/lang/natRuntime.cc (_exit): Implemented. Same as exit() but without a security manager check. (exit): Call _exit after security check. * prims.cc (JvRunMain): Call Runtime._exit to shutdown the runtime "naturally". * java/lang/System.java (setSecurityManager): If a security manager is already in place, call checkPermission. * java/lang/ThreadGroup.java (uncaughtException): If printStackTrace() throws an exception, try to deal with it gracefully. * java/lang/ExceptionInInitializerError.java (printStackTrace): Only try to print the subordinate stack trace if "exception" is set. Print our class name first. From-SVN: r40401
This commit is contained in:
parent
9612ab65bd
commit
456c0b60ad
7 changed files with 65 additions and 10 deletions
|
@ -511,7 +511,19 @@ public class ThreadGroup
|
|||
{
|
||||
if (thread != null)
|
||||
System.out.print("Exception in thread \"" + thread.getName() + "\" ");
|
||||
t.printStackTrace();
|
||||
try
|
||||
{
|
||||
t.printStackTrace();
|
||||
}
|
||||
catch (Throwable x)
|
||||
{
|
||||
// This means that something is badly screwed up with the runtime,
|
||||
// or perhaps someone is messing with the SecurityManager. In any
|
||||
// case, try to deal with it gracefully.
|
||||
System.out.println(t);
|
||||
System.err.println("*** Got " + x.toString() +
|
||||
" while trying to print stack trace");
|
||||
}
|
||||
had_uncaught_exception = true;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue