1.1 --- a/rt/emul/mini/src/main/java/java/lang/Class.java Tue Sep 23 21:52:27 2014 +0200
1.2 +++ b/rt/emul/mini/src/main/java/java/lang/Class.java Thu Oct 30 01:50:21 2014 +0100
1.3 @@ -1436,19 +1436,21 @@
1.4 * @since JDK1.1
1.5 */
1.6 public java.net.URL getResource(String name) {
1.7 - return newResourceURL(name, getResourceAsStream(name));
1.8 + name = resolveName(name);
1.9 + byte[] arr = ClassLoader.getResourceAsStream0(name, 0);
1.10 + return arr == null ? null : newResourceURL(name, arr);
1.11 }
1.12
1.13 - static URL newResourceURL(String name, InputStream is) {
1.14 - return is == null ? null : newResourceURL0(URL.class, "res:/" + name, is);
1.15 + static URL newResourceURL(String name, byte[] arr) {
1.16 + return newResourceURL0(URL.class, "res:/" + name, arr);
1.17 }
1.18
1.19 - @JavaScriptBody(args = { "url", "spec", "is" }, body =
1.20 + @JavaScriptBody(args = { "url", "spec", "arr" }, body =
1.21 "var u = url.cnstr(true);\n"
1.22 - + "u.constructor.cons__VLjava_lang_String_2Ljava_io_InputStream_2.call(u, spec, is);\n"
1.23 + + "u.constructor.cons__VLjava_lang_String_2_3B.call(u, spec, arr);\n"
1.24 + "return u;"
1.25 )
1.26 - private static native URL newResourceURL0(Class<URL> url, String spec, InputStream is);
1.27 + private static native URL newResourceURL0(Class<URL> url, String spec, byte[] arr);
1.28
1.29 /**
1.30 * Add a package name prefix if the name is not absolute Remove leading "/"