This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 38305 - IllegalArgumentException occurs sometimes
Summary: IllegalArgumentException occurs sometimes
Status: VERIFIED WORKSFORME
Alias: None
Product: platform
Classification: Unclassified
Component: -- Other -- (show other bugs)
Version: 3.x
Hardware: PC Windows 95/98
: P3 blocker (vote)
Assignee: Petr Nejedly
URL:
Keywords: RANDOM
Depends on:
Blocks:
 
Reported: 2003-12-23 22:17 UTC by vbrabant
Modified: 2008-12-22 21:37 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description vbrabant 2003-12-23 22:17:30 UTC
Sometimes, I receive the following error.

java.lang.IllegalArgumentException: Width (-1) and
height (-1) cannot be <= 0
	at
java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:999)
	at
org.openide.util.IconManager.createBufferedImage(IconManager.java:258)
	at
org.openide.util.IconManager.toBufferedImage(IconManager.java:218)
	at
org.openide.util.IconManager.getIcon(IconManager.java:142)
	at
org.openide.util.IconManager.getIcon(IconManager.java:85)
	at
org.openide.util.Utilities.loadImage(Utilities.java:2097)
	at
org.openide.nodes.AbstractNode.findIcon(AbstractNode.java:242)
	at
org.openide.nodes.AbstractNode.getIcon(AbstractNode.java:219)
	at
org.netbeans.modules.tasklist.core.TaskNode.getIcon(TaskNode.java:124)
	at
org.openide.explorer.view.NodeRenderer$Tree.getTreeCellRendererComponent(NodeRenderer.java:243)
	at
org.openide.explorer.view.NodeRenderer.getTreeCellRendererComponent(NodeRenderer.java:100)
	at
javax.swing.plaf.basic.BasicTreeUI$NodeDimensionsHandler.getNodeDimensions(BasicTreeUI.java:2751)
	at
javax.swing.tree.AbstractLayoutCache.getNodeDimensions(AbstractLayoutCache.java:475)
	at
javax.swing.tree.VariableHeightLayoutCache$TreeStateNode.updatePreferredSize(VariableHeightLayoutCache.java:1342)
	at
javax.swing.tree.VariableHeightLayoutCache.rebuild(VariableHeightLayoutCache.java:720)
	at
javax.swing.tree.VariableHeightLayoutCache.treeStructureChanged(VariableHeightLayoutCache.java:626)
	at
javax.swing.plaf.basic.BasicTreeUI$TreeModelHandler.treeStructureChanged(BasicTreeUI.java:2469)
	at
javax.swing.tree.DefaultTreeModel.fireTreeStructureChanged(DefaultTreeModel.java:559)
	at
javax.swing.tree.DefaultTreeModel.nodeStructureChanged(DefaultTreeModel.java:345)
	at
javax.swing.tree.DefaultTreeModel.setRoot(DefaultTreeModel.java:117)
	at
org.openide.explorer.view.TreeTableView$SortedNodeTreeModel.setRoot(TreeTableView.java:1116)
	at
org.openide.explorer.view.NodeTreeModel$1.run(NodeTreeModel.java:67)
	at org.openide.util.Mutex.doEvent(Mutex.java:900)
	at org.openide.util.Mutex.readAccess(Mutex.java:226)
	at
org.openide.explorer.view.NodeTreeModel.setNode(NodeTreeModel.java:54)
	at
org.openide.explorer.view.TreeView.synchronizeRootContext(TreeView.java:618)
	at
org.openide.explorer.view.TreeView$TreePropertyListener.propertyChange(TreeView.java:771)
	at
org.openide.util.WeakListenerImpl$PropertyChange.propertyChange(WeakListenerImpl.java:131)
	at
java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:252)
	at
org.openide.explorer.ExplorerManager.setRootContext(ExplorerManager.java:398)
	at
org.netbeans.modules.tasklist.core.TaskListView.setRoot(TaskListView.java:570)
	at
org.netbeans.modules.tasklist.core.TaskListView.setModel(TaskListView.java:557)
	at
org.netbeans.modules.tasklist.docscan.SourceTasksView.handleCurrentFile(SourceTasksView.java:707)
	at
org.netbeans.modules.tasklist.docscan.SourceTasksView.access$600(SourceTasksView.java:52)
	at
org.netbeans.modules.tasklist.docscan.SourceTasksView$6.actionPerformed(SourceTasksView.java:446)
	at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
	at
javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
	at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
	at
javax.swing.JToggleButton$ToggleButtonModel.setPressed(JToggleButton.java:273)
	at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
	at
java.awt.Component.processMouseEvent(Component.java:5100)
	at
java.awt.Component.processEvent(Component.java:4897)
	at
java.awt.Container.processEvent(Container.java:1569)
	at
java.awt.Component.dispatchEventImpl(Component.java:3615)
	at
java.awt.Container.dispatchEventImpl(Container.java:1627)
	at
java.awt.Component.dispatchEvent(Component.java:3477)
	at
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
	at
java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
	at
java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
	at
java.awt.Container.dispatchEventImpl(Container.java:1613)
	at
java.awt.Window.dispatchEventImpl(Window.java:1606)
	at
java.awt.Component.dispatchEvent(Component.java:3477)
[catch] at
java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
	at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
	at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
	at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
	at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
	at
java.awt.EventDispatchThread.run(EventDispatchThread.java:100)


It's not always, but each time I received it, it
was when I select the Current File tab. Never in
other case.

I hope it will help you to find the problem.
Comment 1 _ pkuzel 2004-01-09 13:27:43 UTC
It used to get it after gc().
Comment 2 Jiri Rechtacek 2004-01-12 15:32:05 UTC
I cannot see any relationship with openide/explorer. What about
AbstractNode.getIcon() ?
Comment 3 Petr Nejedly 2004-01-13 09:43:52 UTC
No, the problem is deeper.
size of (-1,-1) means that the image was not yet loaded, which is
strange as the IconManager "forces" the load (by using ImageIcon,
which actually waits for load to finish).

I don't know what is the problem, but possible cases:
*) corrupted image file (didn't succeed with parsing headers)
*) different impl. of ImageIcon (which JDK do you use?)
Comment 4 Petr Nejedly 2004-01-13 16:02:20 UTC
Petr K., you're able to reproduce it as well?
Comment 5 Petr Nejedly 2004-02-17 10:47:38 UTC
Really cannot reproduce and the code in IconManager should prevent it
for legal (read: not broken) images.
Comment 6 Marian Mirilovic 2005-07-12 09:43:23 UTC
closed