diff options
Diffstat (limited to 'libjava/gnu/gcj/runtime')
-rw-r--r-- | libjava/gnu/gcj/runtime/BootClassLoader.h | 3 | ||||
-rw-r--r-- | libjava/gnu/gcj/runtime/BootClassLoader.java | 8 |
2 files changed, 10 insertions, 1 deletions
diff --git a/libjava/gnu/gcj/runtime/BootClassLoader.h b/libjava/gnu/gcj/runtime/BootClassLoader.h index dbfd1567162..df9fcdbe43b 100644 --- a/libjava/gnu/gcj/runtime/BootClassLoader.h +++ b/libjava/gnu/gcj/runtime/BootClassLoader.h @@ -37,6 +37,9 @@ public: ::java::lang::Class * bootLoadClass(::java::lang::String *); ::java::net::URL * bootGetResource(::java::lang::String *); ::java::util::Enumeration * bootGetResources(::java::lang::String *); +public: // actually package-private + static ::java::lang::Class * coreHandler; +public: static ::java::lang::Class class$; }; diff --git a/libjava/gnu/gcj/runtime/BootClassLoader.java b/libjava/gnu/gcj/runtime/BootClassLoader.java index 84952359aab..731703ab8f3 100644 --- a/libjava/gnu/gcj/runtime/BootClassLoader.java +++ b/libjava/gnu/gcj/runtime/BootClassLoader.java @@ -1,4 +1,4 @@ -/* Copyright (C) 2005 Free Software Foundation +/* Copyright (C) 2005, 2007 Free Software Foundation This file is part of libgcj. @@ -8,6 +8,7 @@ details. */ package gnu.gcj.runtime; +import gnu.java.net.protocol.core.Handler; import java.io.IOException; import java.net.URL; import java.util.Enumeration; @@ -21,6 +22,11 @@ import java.util.Enumeration; */ public final class BootClassLoader extends HelperClassLoader { + // This forces the core URL handler to be included in statically + // linked executables. The line that adds core:/ to the search + // path fails otherwise. + static Class coreHandler = gnu.java.net.protocol.core.Handler.class; + BootClassLoader(String libdir) { // The BootClassLoader is the top of the delegation chain. It does not |