From 7d6d782d02ed4320a81e7e1d9caf526d583aae0a Mon Sep 17 00:00:00 2001 From: Bryce McKinlay Date: Thu, 1 Jun 2006 07:45:55 +0000 Subject: prims.cc (_Jv_RunMain): Use JvNewStringUTF for command-line class name, not Latin1. 2006-05-31 Bryce McKinlay * prims.cc (_Jv_RunMain): Use JvNewStringUTF for command-line class name, not Latin1. * gnu/java/lang/MainThread.java (run): Allow file separator char to be used in place of '.' as class-name separator. Don't chain ClassNotFoundException. From-SVN: r114300 --- libjava/gnu/java/lang/MainThread.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'libjava/gnu/java/lang/MainThread.java') diff --git a/libjava/gnu/java/lang/MainThread.java b/libjava/gnu/java/lang/MainThread.java index c35359f..470de0c 100644 --- a/libjava/gnu/java/lang/MainThread.java +++ b/libjava/gnu/java/lang/MainThread.java @@ -39,6 +39,7 @@ exception statement from your version. */ package gnu.java.lang; +import java.io.File; import java.util.jar.Attributes; import java.util.jar.JarFile; @@ -91,13 +92,14 @@ final class MainThread extends Thread { try { - klass = Class.forName(klass_name, true, - ClassLoader.getSystemClassLoader()); + ClassLoader cl = ClassLoader.getSystemClassLoader(); + // Permit main class name to be specified in file-system format. + klass_name = klass_name.replace(File.separatorChar, '.'); + klass = cl.loadClass(klass_name); } catch (ClassNotFoundException x) { NoClassDefFoundError ncdfe = new NoClassDefFoundError(klass_name); - ncdfe.initCause(x); throw ncdfe; } } -- cgit v1.1