Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8152419

JColorChooser throws Exception

XMLWordPrintable

    • b127
    • x86_64
    • windows_7

      FULL PRODUCT VERSION :


      A DESCRIPTION OF THE PROBLEM :
      When border insets of JFormattedTextField exceeds a specific number a NegativeArraySizeException is thrown from javax.swing.colorchooser.DiagramComponent

      REGRESSION. Last worked in version 7u76

      ADDITIONAL REGRESSION INFORMATION:
      It looks like the issue was introduced with the new ColorChooser of Java 7.

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Execute test below and select HSV, HSL, RGB or CMYK tab.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Content of the selected tab should appear.
      ACTUAL -
      Exception is thrown - related content does not appear.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      Exception in thread "AWT-EventQueue-0" java.lang.NegativeArraySizeException
              at javax.swing.colorchooser.DiagramComponent.paintComponent(Unknown Source)
              at javax.swing.JComponent.paint(Unknown Source)
              at javax.swing.JComponent.paintChildren(Unknown Source)
              at javax.swing.JComponent.paint(Unknown Source)
              at javax.swing.colorchooser.AbstractColorChooserPanel.paint(Unknown Source)
              at javax.swing.JComponent.paintChildren(Unknown Source)
              at javax.swing.JComponent.paint(Unknown Source)
              at javax.swing.JComponent.paintChildren(Unknown Source)
              at javax.swing.JComponent.paint(Unknown Source)
              at javax.swing.JComponent.paintChildren(Unknown Source)
              at javax.swing.JComponent.paint(Unknown Source)
              at javax.swing.JComponent.paintToOffscreen(Unknown Source)
              at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
              at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
              at javax.swing.RepaintManager.paint(Unknown Source)
              at javax.swing.JComponent._paintImmediately(Unknown Source)
              at javax.swing.JComponent.paintImmediately(Unknown Source)
              at javax.swing.RepaintManager$4.run(Unknown Source)
              at javax.swing.RepaintManager$4.run(Unknown Source)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
              at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
              at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
              at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
              at javax.swing.RepaintManager.access$1200(Unknown Source)
              at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
              at java.awt.event.InvocationEvent.dispatch(Unknown Source)
              at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
              at java.awt.EventQueue.access$500(Unknown Source)
              at java.awt.EventQueue$3.run(Unknown Source)
              at java.awt.EventQueue$3.run(Unknown Source)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
              at java.awt.EventQueue.dispatchEvent(Unknown Source)
              at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
              at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
              at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
              at java.awt.WaitDispatchSupport$2.run(Unknown Source)
              at java.awt.WaitDispatchSupport$4.run(Unknown Source)
              at java.awt.WaitDispatchSupport$4.run(Unknown Source)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.awt.WaitDispatchSupport.enter(Unknown Source)
              at java.awt.Dialog.show(Unknown Source)
              at javax.swing.ColorChooserDialog.show(Unknown Source)
              at javax.swing.JColorChooser.showDialog(Unknown Source)
              at test.dialog.ColorChooserTest$1.run(ColorChooserTest.java:23)
              at java.awt.event.InvocationEvent.dispatch(Unknown Source)
              at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
              at java.awt.EventQueue.access$500(Unknown Source)
              at java.awt.EventQueue$3.run(Unknown Source)
              at java.awt.EventQueue$3.run(Unknown Source)
              at java.security.AccessController.doPrivileged(Native Method)
              at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
              at java.awt.EventQueue.dispatchEvent(Unknown Source)
              at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
              at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
              at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
              at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
              at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
              at java.awt.EventDispatchThread.run(Unknown Source)

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      public class ColorChooserTest
      {
        public static void main(String[] args) throws Exception
        {
          SwingUtilities.invokeLater(new Runnable()
          {
            public void run()
            {
              UIManager.put("FormattedTextField.border", new EmptyBorder(0,10,0,10));
              JColorChooser.showDialog(null, "Test", Color.BLUE);
            }
          });
        }
      }
      ---------- END SOURCE ----------

            pkbalakr Prem Balakrishnan (Inactive)
            webbuggrp Webbug Group
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: