From e0b22e777cefe4894586f4914f3517dfdf4a4e68 Mon Sep 17 00:00:00 2001 From: bryce Date: Fri, 22 Dec 2000 06:19:24 +0000 Subject: * java/lang/Throwable.java (trace_enabled): New static field. * java/lang/natThrowable.cc (fillInStackTrace): Do nothing if trace_enabled not set. * prims.cc (main_init): Turn off trace_enabled while creating default exception objects. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38442 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/lang/Throwable.java | 2 ++ libjava/java/lang/natThrowable.cc | 2 ++ 2 files changed, 4 insertions(+) (limited to 'libjava/java') diff --git a/libjava/java/lang/Throwable.java b/libjava/java/lang/Throwable.java index 610a499a2cb..4aa21399c5a 100644 --- a/libjava/java/lang/Throwable.java +++ b/libjava/java/lang/Throwable.java @@ -164,6 +164,8 @@ public class Throwable implements Serializable // Name of this field comes from serialization spec. private String detailMessage; + // Setting this flag to false prevents fillInStackTrace() from running. + static boolean trace_enabled = true; private transient byte stackTrace[]; private static final long serialVersionUID = -3042686055658047285L; } diff --git a/libjava/java/lang/natThrowable.cc b/libjava/java/lang/natThrowable.cc index c7f19bec09d..dab3ba6387a 100644 --- a/libjava/java/lang/natThrowable.cc +++ b/libjava/java/lang/natThrowable.cc @@ -50,6 +50,8 @@ extern "C" int __ia64_backtrace (void **array, int size); java::lang::Throwable * java::lang::Throwable::fillInStackTrace (void) { + if (! trace_enabled) + return this; #if defined (HAVE_BACKTRACE) || defined (__ia64__) void *p[128]; -- cgit v1.2.3