This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libgcj/27658] New: _Jv_CreateJavaVM calling ExtensionClassLoader bootstrap problem
- From: "mark at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 May 2006 14:05:50 -0000
- Subject: [Bug libgcj/27658] New: _Jv_CreateJavaVM calling ExtensionClassLoader bootstrap problem
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
_Jv_CreateJavaVM calls the following code:
// Set up the system class loader and the bootstrap class loader.
gnu::gcj::runtime::ExtensionClassLoader::initialize();
ExtensionClassLoader extends URLClassLoader and calls addURLs() on it which
might trigger loading of lots of jar files, this in turn can trigger loading
security providers when the jar files are signed which in turn can trigger
initialization of the logging framework which might in turn try to load user
classes.
At this time not everything has been setup yet. Thread.currentThread() for
example will return null if called by any of the above code.
This is a real problem with the latest classpath 0.91 import for which we need
a LogManager override now:
// GCJ LOCAL
// Unfortunately this can be called during bootstrap when
// Thread.currentThread() will return null.
// See bug #
Thread t = Thread.currentThread();
ClassLoader loader = (t == null) ? null : t.getContextClassLoader();
--
Summary: _Jv_CreateJavaVM calling ExtensionClassLoader bootstrap
problem
Product: gcc
Version: 4.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libgcj
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mark at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27658