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

JInternalFrame throws IllegalArgumentException when resized

    Details

    • Subcomponent:
    • Resolved In Build:
      tiger
    • CPU:
      generic
    • OS:
      generic

      Description

      JInternalFrame throws IllegalArgumentException when resized.
      Steps to reproduce:
      --------------------
      1) Run SwingSet2.
      2) Go to Internal Frame demo.
      3) Select any InternalFrame say 'Frame 0'.
      4) Resize the internalframe till you get both the scrollBar.
      5) Now resize the internalframe from South-East i.e right bottom corner till the title bar.
      6) Do this few times and a bit fast, you will see the IllegaArgumentException.

      On Windows you will get this error in one or two tries but on solaris it may take few more tries. But you will get the exception. This is observed on new Ocean LAF. I have reproduced it with Tiger build 16 and the PIT request of 29th August.

      The exception is:

       

      java.lang.IllegalArgumentException: Width (64) and height (0) must be > 0
              at java.awt.image.SampleModel.<init>(SampleModel.java:108)
              at java.awt.image.ComponentSampleModel.<init>(ComponentSampleModel.java:128)
              at java.awt.image.PixelInterleavedSampleModel.<init>(PixelInterleavedSampleModel.java:69)
              at java.awt.image.Raster.createInterleavedRaster(Raster.java:638)
              at java.awt.image.Raster.createInterleavedRaster(Raster.java:265)
              at java.awt.image.Raster.createInterleavedRaster(Raster.java:194)
              at java.awt.image.IndexColorModel.createCompatibleWritableRaster(IndexColorModel.java:1177)
              at sun.awt.X11GraphicsConfig.createCompatibleImage(X11GraphicsConfig.java:175)
              at sun.awt.X11GraphicsConfig.createCompatibleImage(X11GraphicsConfig.java:221)
              at sun.awt.image.VolatileSurfaceManager.getBackupSurface(VolatileSurfaceManager.java:240)
              at sun.awt.image.VolatileSurfaceManager.initialize(VolatileSurfaceManager.java:99)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:60)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:46)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:79)
              at sun.awt.X11GraphicsConfig.createCompatibleVolatileImage(X11GraphicsConfig.java:195)
              at javax.swing.plaf.metal.MetalUtils$GradientPainter._paint(MetalUtils.java:298)
              at javax.swing.plaf.metal.MetalUtils$GradientPainter.paint(MetalUtils.java:244)
              at javax.swing.plaf.metal.MetalUtils.drawGradient(MetalUtils.java:198)
              at javax.swing.plaf.metal.MetalScrollBarUI.oceanPaintThumb(MetalScrollBarUI.java:357)
              at javax.swing.plaf.metal.MetalScrollBarUI.paintThumb(MetalScrollBarUI.java:216)
              at javax.swing.plaf.basic.BasicScrollBarUI.paint(BasicScrollBarUI.java:353)
              at javax.swing.plaf.ComponentUI.update(ComponentUI.java:142)
              at javax.swing.JComponent.paintComponent(JComponent.java:684)
              at javax.swing.JComponent.paint(JComponent.java:947)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JLayeredPane.paint(JLayeredPane.java:540)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JLayeredPane.paint(JLayeredPane.java:540)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JLayeredPane.paint(JLayeredPane.java:540)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4741)
              at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4694)
              at javax.swing.JComponent._paintImmediately(JComponent.java:4637)
              at javax.swing.JComponent.paintImmediately(JComponent.java:4444)
              at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:410)
              at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:117)
              at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:188)
              at java.awt.EventQueue.dispatchEvent(EventQueue.java:459)
              at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:214)
              at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
              at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)


      Some times this exception is also thrown :

      java.lang.IllegalArgumentException: Width (64) and height (-3) cannot be <= 0
              at java.awt.image.DirectColorModel.createCompatibleWritableRaster(Direct
      ColorModel.java:999)
              at sun.awt.Win32GraphicsConfig.createCompatibleImage(Win32GraphicsConfig
      .java:113)
              at sun.awt.Win32GraphicsConfig.createCompatibleImage(Win32GraphicsConfig
      .java:155)
              at sun.awt.image.VolatileSurfaceManager.getBackupSurface(VolatileSurface
      Manager.java:240)
              at sun.awt.image.VolatileSurfaceManager.initialize(VolatileSurfaceManage
      r.java:99)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:60)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:46)
              at sun.awt.image.SunVolatileImage.<init>(SunVolatileImage.java:79)
              at sun.awt.Win32GraphicsConfig.createCompatibleVolatileImage(Win32Graphi
      csConfig.java:129)
              at javax.swing.plaf.metal.MetalUtils$GradientPainter._paint(MetalUtils.j
      ava:298)
              at javax.swing.plaf.metal.MetalUtils$GradientPainter.paint(MetalUtils.ja
      va:244)
              at javax.swing.plaf.metal.MetalUtils.drawGradient(MetalUtils.java:198)
              at javax.swing.plaf.metal.MetalScrollBarUI.oceanPaintThumb(MetalScrollBa
      rUI.java:357)
              at javax.swing.plaf.metal.MetalScrollBarUI.paintThumb(MetalScrollBarUI.j
      ava:216)
              at javax.swing.plaf.basic.BasicScrollBarUI.paint(BasicScrollBarUI.java:3
      37)
              at javax.swing.plaf.ComponentUI.update(ComponentUI.java:142)
              at javax.swing.JComponent.paintComponent(JComponent.java:685)
              at javax.swing.JComponent.paint(JComponent.java:947)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JLayeredPane.paint(JLayeredPane.java:548)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JLayeredPane.paint(JLayeredPane.java:548)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JLayeredPane.paint(JLayeredPane.java:548)
              at javax.swing.JComponent.paintChildren(JComponent.java:784)
              at javax.swing.JComponent.paint(JComponent.java:956)
              at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4735)

              at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4688)
              at javax.swing.JComponent._paintImmediately(JComponent.java:4631)
              at javax.swing.JComponent.paintImmediately(JComponent.java:4438)
              at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:410)

              at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(System
      EventQueueUtilities.java:117)
              at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:188)
              at java.awt.EventQueue.dispatchEvent(EventQueue.java:459)
              at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
      read.java:214)
              at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
      ad.java:163)
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)

              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)

              at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

        

        Attachments

          Activity

            People

            • Assignee:
              joutwatesunw Joshua Outwater (Inactive)
              Reporter:
              mjoshisunw Mayank Joshi (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Imported:
                Indexed: