Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 29828 invoked from network); 7 Dec 2006 12:11:26 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 7 Dec 2006 12:11:26 -0000 Received: (qmail 56654 invoked by uid 500); 7 Dec 2006 12:11:33 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 56628 invoked by uid 500); 7 Dec 2006 12:11:33 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 56611 invoked by uid 99); 7 Dec 2006 12:11:33 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 07 Dec 2006 04:11:33 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 07 Dec 2006 04:11:23 -0800 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 066F87142F5 for ; Thu, 7 Dec 2006 03:50:26 -0800 (PST) Message-ID: <11185420.1165492226002.JavaMail.jira@brutus> Date: Thu, 7 Dec 2006 03:50:26 -0800 (PST) From: "Alexey Petrenko (JIRA)" To: commits@harmony.apache.org Subject: [jira] Assigned: (HARMONY-920) [classlib][drlvm] method Runtime.getRuntime().exec({null, "cmd"}, env) lead to vm crash MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ http://issues.apache.org/jira/browse/HARMONY-920?page=all ] Alexey Petrenko reassigned HARMONY-920: --------------------------------------- Assignee: Alexey Petrenko > [classlib][drlvm] method Runtime.getRuntime().exec({null, "cmd"}, env) lead to vm crash > --------------------------------------------------------------------------------------- > > Key: HARMONY-920 > URL: http://issues.apache.org/jira/browse/HARMONY-920 > Project: Harmony > Issue Type: Bug > Components: Classlib > Reporter: Vladimir Ivanov > Assigned To: Alexey Petrenko > Attachments: harmony-920.patch > > > The Harmony DRLVM crashes on java.lang.Runtime.exec methods when cmdarray or envp argument contains null elements while j2se spec says: throws NullPointerException - If cmdarray is null, or one of the elements of cmdarray is null, or one of the elements of envp is null. > ================ test.java ===================== > public class test { > public static void main(String[] args) { > try { > String[] cmd = new String [] { null, "mmm"}; > String[] env = new String[] { "aaa", "bbb"}; > Runtime.getRuntime().exec(cmd, env); > System.out.println("Test failed"); > } catch (NullPointerException e) { > System.out.println("Test passed: "+e); > } catch (Exception e){ > e.printStackTrace(); > } > } > } > class test2 { > public static void main(String[] args) { > try { > String[] cmd = new String [] { "aaa", "mmm"}; > String[] env = new String[] { "aaa", null}; > Runtime.getRuntime().exec(cmd, env); > System.out.println("Test failed"); > } catch (NullPointerException e) { > System.out.println("Test passed: "+e); > } catch (Exception e){ > e.printStackTrace(); > } > } > } > ============================================ > 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)) > Test passed: java.lang.NullPointerException > C:\tmp\tmp17>C:\harmony\trunk_0427\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. > Test passed: java.lang.NullPointerException > C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -Dvm.assert_dialog=false -cp . -showversion test > Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug > ...VM Crashed! > Windows reported exception: ACCESS_VIOLATION > Registers: > EAX: 0x00000000, EBX: 0x2026acd0, ECX: 0x05d3fa84, EDX=0x00000000 > ESI: 0x2026abb8, EDI: 0x05d3f7a4, ESP: 0x05d3f648, EBP=0x05d3f7a4 > EIP: 0x1002c356 > CallStack: > Java_java_lang_Runtime_00024SubProcess_createProcess0 (File: c:\harmony\drlvm\trunk\vm\vmcore\src\kernel_classes\native\runtime_win.cpp Line: 118 > ) > No name (File: ?? Line: ?? ) > C:\tmp\tmp17>C:\harmony\drlvm\trunk\build\win_ia32_msvc_debug\deploy\jre\bin\ij -Dvm.assert_dialog=false -cp . -showversion test2 > Apache Harmony DRLVM HEAD-4807 (2006-05-02), Windows/ia32/msvc 1310, debug > ...VM Crashed! > Windows reported exception: ACCESS_VIOLATION > Registers: > EAX: 0x00000000, EBX: 0x2026acac, ECX: 0x00000000, EDX=0x103044b0 > ESI: 0x2026abec, EDI: 0x05d3f7a4, ESP: 0x05d3f640, EBP=0x05d3f7a4 > EIP: 0x101d57f0 > CallStack: > strlen (File: F:\VS70Builds\3077\vc\crtbld\crt\src\intel\strlen.asm Line: 78 ) > Java_java_lang_Runtime_00024SubProcess_createProcess0 (File: c:\harmony\drlvm\trunk\vm\vmcore\src\kernel_classes\native\runtime_win.cpp Line: 151 > ) > No name (File: ?? Line: ?? ) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira