Project: Eclipse_Platform_UI
Bug 262619 [Perspectives] 28 images leaked opening customize perspective dialog
Reported: 2009-01-27 13:37:45 | Status: verified fixed

I20090127-0100 Each time the "Customize Perspective" dialog is opened, 28 images are leaked. See Sleak for details, but all of the allocation traces look roughly like this: java.lang.Error at org.eclipse.swt.graphics.Device.new_Object(Device.java:804) at org.eclipse.swt.graphics.Resource.init(Resource.java:85) at org.eclipse.swt.graphics.Image.<init>(Image.java:577) at org.eclipse.jface.resource.URLImageDescriptor.createImage(URLImageDescriptor.java:162) at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:227) at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:205) at org.eclipse.ui.internal.dialogs.TreeManager$TreeItem.getImage(TreeManager.java:225) at org.eclipse.ui.internal.dialogs.TreeManager$TreeItemLabelProvider.getImage(TreeManager.java:123) at org.eclipse.ui.internal.dialogs.CustomizePerspectiveDialog$ShortcutLabelProvider.getColumnImage(CustomizePerspectiveDialog.java:575) at org.eclipse.jface.viewers.TableColumnViewerLabelProvider.update(TableColumnViewerLabelProvider.java:71) at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:145) at org.eclipse.jface.viewers.AbstractTableViewer.doUpdateItem(AbstractTableViewer.java:393) at org.eclipse.jface.viewers.CheckboxTableViewer.doUpdateItem(CheckboxTableViewer.java:168) at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:475) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:874) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175) at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2096) at org.eclipse.jface.viewers.AbstractTableViewer.createItem(AbstractTableViewer.java:271) at org.eclipse.jface.viewers.AbstractTableViewer.internalRefreshAll(AbstractTableViewer.java:751) at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:643) at org.eclipse.jface.viewers.AbstractTableViewer.internalRefresh(AbstractTableViewer.java:630) at org.eclipse.jface.viewers.AbstractTableViewer$2.run(AbstractTableViewer.java:586) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1381) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1340) at org.eclipse.jface.viewers.CheckboxTableViewer.preservingSelection(CheckboxTableViewer.java:320) at org.eclipse.jface.viewers.AbstractTableViewer.inputChanged(AbstractTableViewer.java:584) at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:274) at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1619) at org.eclipse.ui.internal.dialogs.CustomizePerspectiveDialog$7.selectionChanged(CustomizePerspectiveDialog.java:1655)

Files changed in fix:
bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/CustomizePerspectiveDialog.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/TreeManager.java