You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Alexey Petrenko (JIRA)" <ji...@apache.org> on 2007/03/12 12:08:09 UTC

[jira] Resolved: (HARMONY-2613) [classlib][swing][plaf] javax.swing.plaf.basic.BasicTableUI methods throw unspecified NPE if UI is not attached to a table

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

Alexey Petrenko resolved HARMONY-2613.
--------------------------------------

    Resolution: Fixed

The patch has been applied.
Please verify.

> [classlib][swing][plaf] javax.swing.plaf.basic.BasicTableUI methods throw unspecified NPE if UI is not attached to a table
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-2613
>                 URL: https://issues.apache.org/jira/browse/HARMONY-2613
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Anton Luht
>         Assigned To: Alexey Petrenko
>            Priority: Minor
>         Attachments: Harmony-2613-Fix-BasicTableHeaderUI.patch, Harmony-2613-Fix-BasicTableUI.patch, Harmony-2613-Make.patch, Harmony-2613-Test-BasicTableHeaderUI.patch, Harmony-2613-Test-BasicTableUI.patch
>
>
> If BasicTableUI  is not attached to a JTable (for example, using installUI), calling some methods on it cause NPE. Please see the code below for example, but the code inspection shows that there are many methods that can cause similar effect (direct calling methods of member 'table' without checking it for null) . If you uncomment line with 'installUI', the test will work on Harmony as well as on RI
> Code to reproduce:
> import javax.swing.plaf.basic.*;
> import javax.swing.*;
> import java.awt.*;
> import java.awt.event.MouseWheelEvent;
> public class Test   
> {
>         public static MouseWheelEvent getEvent() {
>                 Label l = new Label();
>                 return new MouseWheelEvent(l, 0, 0, 0, 0, 0, 0, false, 0,
> MouseWheelEvent.WHEEL_UNIT_SCROLL, 0);
>         }
>         public static void main(String args[]) {
>                 BasicTableUI localBasicTableUI = new BasicTableUI();
>                 //localBasicTableUI.installUI(new JTable());
>                 BasicTableUI.MouseInputHandler
> localBasicTableUI$MouseInputHandler = localBasicTableUI.new
> MouseInputHandler();
>                 MouseWheelEvent localMouseWheelEvent = getEvent();
>                 try {
>                        
> localBasicTableUI$MouseInputHandler.mousePressed(localMouseWheelEvent);
>                         System.out.println("mousePressed work silently");
>                 } catch (NullPointerException e) {
>                         e.printStackTrace();
>                         System.out.println("Got NullPointerException");
>                 }
>         }
> }
> output in RI:
> 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)
> mousePressed work silently
> Output in 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 = r485537, (Dec 11 2006), Windows/ia32/msvc 1310, debug build
> http://incubator.apache.org/harmony
> java.lang.NullPointerException
>         at javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mousePressed(Ba
> sicTableUI.java:122)
>         at Test.main(Test.java:20)
> Got NullPointerException

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