harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Varlamov (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-1172) [ibm vme][kernel] compatibility: ClassLoader.defineClass(...) throws NPE on Harmony and NoClassDefFoundError on RI.
Date Wed, 07 Mar 2007 11:21:24 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-1172?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Alexey Varlamov updated HARMONY-1172:
-------------------------------------

    Attachment:     (was: regression_test_1173.patch)

> [ibm vme][kernel] compatibility: ClassLoader.defineClass(...) throws NPE on Harmony and
NoClassDefFoundError on RI.
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1172
>                 URL: https://issues.apache.org/jira/browse/HARMONY-1172
>             Project: Harmony
>          Issue Type: Bug
>          Components: VM
>            Reporter: Vladimir Ivanov
>            Priority: Trivial
>         Attachments: H1172.patch, regression_test_1172.patch
>
>
> The method SecureClassLoader.defineClass(...) throws NPE for class name with "/" while
Harmony+j9 throws NPE and Harmony+drlvm throws IndexOutOfBoundsException.
> For name without "/"  RI and Harmony throws NPE, so it may be 'non-bug diff'.
> ============= test.java =================
> import java.security.*;
> import java.net.*;
> import java.nio.*;
> public class test  {
>     public static void main (String[] args) throws Exception {
>        testSecureClassLoader cl = new testSecureClassLoader(new testSecureClassLoader());
>        URL url = new URL("file://C:/test.jar");
>        try {
>            cl.testdefineClass("/k", new byte[] {}, 126, 0, new CodeSource(url, new CodeSigner[820]));
>        } catch (Throwable e) {
>            System.out.println("name = '/k', res = " + e);
>        }
>        try {
>            cl.testdefineClass("k", new byte[] {}, 126, 0, new CodeSource(url, new CodeSigner[820]));
>        } catch (Throwable e) {
>            System.out.println("name = 'k', res = " + e);
>        }
>     }
> }
> class testSecureClassLoader extends SecureClassLoader {
>     testSecureClassLoader(){ super(); }
>     testSecureClassLoader(testSecureClassLoader cl){ super(cl); }
>     public Class testdefineClass (String name, byte[] array, int off, int len, CodeSource
cs)  {
>         return super.defineClass(name, array, off, len, cs);
>     }
>     public Class testdefineClass (String name, ByteBuffer array, CodeSource cs)  {
>         return super.defineClass(name, array, cs);
>     }
> }
> =====================================
> Output:
> C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -cp . -showversion test
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System
optimized over throughput (initial strategy singleparpar))
> name = '/k', res = java.lang.NoClassDefFoundError: IllegalName: /k
> name = 'k', res = java.lang.NullPointerException
> C:\tmp\tmp17>C:\harmony\classlib1.5\deploy\jdk\jre\bin\java.exe -cp . -showversion
test
> java version 1.5 (subset)
> (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
> name = '/k', res = java.lang.NullPointerException
> name = 'k', res = java.lang.NullPointerException
> C:\tmp\tmp17>C:\harmony\drlvm1.5\build\win_ia32_msvc_debug\deploy\jre\bin\java -Dvm.assert_dialog=false
-cp . -showversion test
> java version "1.5.0"
> pre-alpha : not complete or compatible
> svn = r431304, (Aug 14 2006), Windows/ia32/msvc 1310, debug build
> http://incubator.apache.org/harmony
> name = '/k', res = java.lang.IndexOutOfBoundsException: Check your arguments
> name = 'k', res = java.lang.NullPointerException

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message