Bug 37797 - org.eclipse.swt.custom.TableTreeItem does not check size of created image
Summary: org.eclipse.swt.custom.TableTreeItem does not check size of created image
Status: RESOLVED DUPLICATE of bug 36993
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 2.1   Edit
Hardware: Other Linux
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Christophe Cornu CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-05-16 21:00 EDT by Alex Cozzi CLA
Modified: 2003-06-19 10:16 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Cozzi CLA 2003-05-16 21:00:38 EDT
org.eclipse.swt.custom.TableTreeItem does not check size of created image 
 
In line 186 a new image is created with size = itemHeight. But it does not check that the 
size is not 0. On my machine this is the case and causes an exception in swt:  
 
(<unknown>:29390): Gtk-CRITICAL **: file gtktreeview.c: line 9923 
(gtk_tree_view_get_cell_area): assertion `GTK_WIDGET_REALIZED (tree_view)' failed 
Exception in thread "main" java.lang.IllegalArgumentException: Argument not valid 
	at org.eclipse.swt.SWT.error(SWT.java:2318) 
	at org.eclipse.swt.SWT.error(SWT.java:2262) 
	at org.eclipse.swt.graphics.Image.init(Image.java:716) 
	at org.eclipse.swt.graphics.Image.<init>(Image.java:156) 
	at org.eclipse.swt.custom.TableTreeItem.<init>(TableTreeItem.java:186) 
	at org.eclipse.swt.custom.TableTreeItem.<init>(TableTreeItem.java:98) 
	at org.eclipse.swt.custom.TableTreeItem.<init>(TableTreeItem.java:65) 
	at org.eclipse.jface.viewers.TableTreeViewer.newItem(TableTreeViewer.java:370) 
	at 
org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:319) 
	at 
org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:303) 
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) 
	at 
org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:289) 
	at 
org.eclipse.jface.viewers.AbstractTreeViewer$5.run(AbstractTreeViewer.java:729) 
	at 
org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:801) 
	at 
org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged(AbstractTreeViewer.java:721) 
	at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:238) 
	at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:991) 
	at com.ibm.research.todo.ui.TableTreeBug.<init>(TableTreeBug.java:75) 
	at com.ibm.research.todo.ui.TableTreeBug.main(TableTreeBug.java:270) 
 
--------------------------------------------------------------- 
Here is the excerpt from TableTreeItem.java: 
 
	if (parent.sizeImage == null) { 
->>>			int itemHeight = parent.getItemHeight(); <-- should check for zero size. 
			parent.sizeImage = new Image(null, itemHeight, itemHeight); 
			GC gc = new GC (parent.sizeImage); 
			gc.setBackground(parent.getBackground()); 
			gc.fillRectangle(0, 0, itemHeight, itemHeight); 
			gc.dispose(); 
			tableItem.setImage(0, parent.sizeImage);
Comment 1 Steve Northover CLA 2003-05-20 12:51:26 EDT
Didn't we just fix this recently?  If so, please verify and close.  Thanks.
Comment 2 Christophe Cornu CLA 2003-06-19 10:16:57 EDT
Fixed in version > 20030429
Please reopen if you can still see it with a more recent integration build

*** This bug has been marked as a duplicate of 36993 ***