Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 63645 invoked from network); 7 Jan 2007 23:47:56 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 7 Jan 2007 23:47:56 -0000 Received: (qmail 28469 invoked by uid 500); 7 Jan 2007 23:46:36 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 28334 invoked by uid 500); 7 Jan 2007 23:46:31 -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 28269 invoked by uid 99); 7 Jan 2007 23:46:28 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 07 Jan 2007 15:46:28 -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; Sun, 07 Jan 2007 15:46:04 -0800 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 8FE3F714295 for ; Sun, 7 Jan 2007 15:45:27 -0800 (PST) Message-ID: <14765705.1168213527558.JavaMail.jira@brutus> Date: Sun, 7 Jan 2007 15:45:27 -0800 (PST) From: "Vasily Zakharov (JIRA)" To: commits@harmony.apache.org Subject: [jira] Commented: (HARMONY-1755) [swing] javax.swing.table.JTableHeader.add(Component c, int index) throws IllegalArgumentException while RI throws NPE MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12462889 ] Vasily Zakharov commented on HARMONY-1755: ------------------------------------------ Oops, I was wrong. In fact, the problem is not reproducible for java.awt.Container. Here's the output of a simple test on RI for Container: Exception in thread "main" java.lang.IllegalArgumentException: illegal component position at java.awt.Container.addImpl(Container.java:999) at java.awt.Container.add(Container.java:390) at Test.main(Test.java:6) And here's the output on RI for JTableHeader: Exception in thread "main" java.lang.NullPointerException at java.awt.Container.addImpl(Container.java:1019) at java.awt.Container.add(Container.java:390) at Test.main(Test.java:6) It looks like index is checked first and for JTableHeader instances this checking somehow passes and NPE occurs later. Looks like Harmony is more consistent here and the checking is more accurate and strict. So this issue is probably a non-bug difference, but a Swing/AWT expert opinion would be great to hear. > [swing] javax.swing.table.JTableHeader.add(Component c, int index) throws IllegalArgumentException while RI throws NPE > ---------------------------------------------------------------------------------------------------------------------- > > Key: HARMONY-1755 > URL: https://issues.apache.org/jira/browse/HARMONY-1755 > Project: Harmony > Issue Type: Bug > Components: Classlib > Reporter: Vera Aristova > Priority: Minor > Attachments: patch1755 > > > javax.swing.table.JTableHeader.add(Component c, int index) throws IllegalArgumentException while RI throws NPE. > It's a compatibility issue of throwing exception order. > test for reproducing: > import junit.framework.TestCase; > import javax.swing.table.JTableHeader; > import java.awt.Component; > public class test extends TestCase > { > public void testAddComponentint() > { > JTableHeader jth = new JTableHeader(); > int index = 1; > try > { > jth.add((Component) null, index); > } > catch (NullPointerException e) > {// expected > } > } > } > OUTPUT: > HARMONY > Apache Harmony Launcher : (c) Copyright 1991, 2006 The Apache Software Foundatio > n or its licensors, as applicable. > java version "1.5.0" > pre-alpha : not complete or compatible > svn = r450941, (Sep 28 2006), Windows/ia32/msvc 1310, release build > http://incubator.apache.org/harmony > .E > Time: 0.39 > There was 1 error: > 1) testAddComponentint(test)java.lang.IllegalArgumentException: illegal componen > t position > at java.awt.Container.addImpl(Container.java:392) > at java.awt.Container.add(Container.java:215) > at test.testAddComponentint(test.java:13) > at java.lang.reflect.VMReflection.invokeMethod(Native Method) > FAILURES!!! > Tests run: 1, Failures: 0, Errors: 1 > ------------------------------------------------------------------------ > SUN > java version "1.5.0_06" > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05) > Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode) > . > Time: 0.797 > OK (1 test) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira