-
Bug
-
Resolution: Fixed
-
P4
-
5.0
-
tiger
-
generic
-
generic
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)
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)