* prims.cc (_Jv_CreateJavaVM): Move setting runtimeInitialized
from the start to the end of the function. Remove references
to VMThrowable.trace_enabled.
* java/lang/natVMThrowable.cc (fillInStackTrace): Use
runtimeInitialized rather than trace_enabled to decide
whether to inhibit stack trace generation.
* java/lang/VMThrowable.java (trace_enabled): Removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115791
138bc75d-0d04-0410-961f-
82ee72b054a4
+2006-07-28 Gary Benson <gbenson@redhat.com>
+
+ * prims.cc (_Jv_CreateJavaVM): Move setting runtimeInitialized
+ from the start to the end of the function. Remove references
+ to VMThrowable.trace_enabled.
+ * java/lang/natVMThrowable.cc (fillInStackTrace): Use
+ runtimeInitialized rather than trace_enabled to decide
+ whether to inhibit stack trace generation.
+ * java/lang/VMThrowable.java (trace_enabled): Removed.
+
2006-07-23 Mohan Embar <gnustuff@thisiscool.com>
* include/win32-threads.h (_Jv_Thread_t): Explicitly
/* java.lang.VMThrowable -- VM support methods for Throwable.
- Copyright (C) 1998, 1999, 2002, 2004, 2005 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2002, 2004, 2005, 2006
+ Free Software Foundation, Inc.
This file is part of GNU Classpath.
*/
native StackTraceElement[] getStackTrace(Throwable t);
- // Setting this flag to false prevents fillInStackTrace() from running.
- static boolean trace_enabled = true;
-
// Native stack data.
private RawDataManaged data;
}
// natVMThrowable.cc - Native part of VMThrowable class.
-/* Copyright (C) 2003 Free Software Foundation
+/* Copyright (C) 2003, 2006 Free Software Foundation
This file is part of libgcj.
using namespace java::lang;
// Don't trace stack during initialization of the runtime.
- if (! trace_enabled)
+ if (! gcj::runtimeInitialized)
return NULL;
_Jv_StackTrace *trace = _Jv_StackTrace::GetStackTrace ();
#include <java/lang/NullPointerException.h>
#include <java/lang/OutOfMemoryError.h>
#include <java/lang/System.h>
-#include <java/lang/VMThrowable.h>
#include <java/lang/VMClassLoader.h>
#include <java/lang/reflect/Modifier.h>
#include <java/io/PrintStream.h>
if (runtimeInitialized)
return -1;
- runtimeInitialized = true;
-
jint result = parse_init_args (vm_args);
if (result < 0)
return -1;
_Jv_InitPrimClass (&_Jv_doubleClass, "double", 'D', 8);
_Jv_InitPrimClass (&_Jv_voidClass, "void", 'V', 0);
- // Turn stack trace generation off while creating exception objects.
- _Jv_InitClass (&java::lang::VMThrowable::class$);
- java::lang::VMThrowable::trace_enabled = 0;
-
// We have to initialize this fairly early, to avoid circular class
// initialization. In particular we want to start the
// initialization of ClassLoader before we start the initialization
no_memory = new java::lang::OutOfMemoryError;
- java::lang::VMThrowable::trace_enabled = 1;
-
#ifdef USE_LTDL
LTDL_SET_PRELOADED_SYMBOLS ();
#endif
{
}
+ runtimeInitialized = true;
+
return 0;
}