Hi, I've come across what I think is a bug, so I'm posting here as per
the instructions on the site before submitting as an official bug report.
*Steps to reproduce:*
1. View history of a file on a revision with a very large number of
affected paths (in my case, it is over 6000)
2. Turn on 'Show affected paths'
3. Change view to 'Compressed Folders'
4. Subclipse will start trying to redraw the affected paths view as
folders, it gets some of the way through and all of a sudden eclipse
crashes to desktop.
*The crash does NOT occur if *
- Show affected paths is not switched on
- 'Flat' view of affected paths is used
- There is not a large number of affected paths
Horizontal or vertical layout of the history panes does not seem to make
any difference.
*My setup:*
OS: Windows XP Pro 2002 SP2
Eclipse: 3.2.0
Subclipse: 1.1.9
Adapter: JavaHL
Protocol: HTTP
*--------------------- ERROR LOG --------------------- *
!ENTRY org.eclipse.ui 4 4 2006-12-14 13:17:18.904
!MESSAGE Unhandled event loop exception
!ENTRY org.eclipse.ui 4 0 2006-12-14 13:17:18.904
!MESSAGE No more handles
!STACK 0
org.eclipse.swt.SWTError: No more handles
at org.eclipse.swt.SWT.error(SWT.java:3400)
at org.eclipse.swt.SWT.error(SWT.java:3297)
at org.eclipse.swt.SWT.error(SWT.java:3268)
at org.eclipse.swt.graphics.Image.init(Image.java:1776)
at org.eclipse.swt.graphics.Image.init(Image.java:1901)
at org.eclipse.swt.graphics.Image.<init>(Image.java:490)
at
org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:295)
at
org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:233)
at
org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:211)
at
org.tigris.subversion.subclipse.ui.history.ChangePathsTreeViewer$ChangePathLabelProvider.getImage(ChangePathsTreeViewer.java:147)
at
org.eclipse.jface.viewers.StructuredViewer.buildLabel(StructuredViewer.java:2103)
at
org.eclipse.jface.viewers.TreeViewer.doUpdateItem(TreeViewer.java:258)
at
org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:95)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:843)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:149)
at
org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:849)
at
org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:465)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:843)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:149)
at
org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:1955)
at
org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:753)
at
org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:731)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at
org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:705)
at
org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:892)
at
org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1497)
at
org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1507)
at
org.eclipse.jface.viewers.AbstractTreeViewer.expandToLevel(AbstractTreeViewer.java:886)
at
org.eclipse.jface.viewers.AbstractTreeViewer.expandToLevel(AbstractTreeViewer.java:869)
at
org.eclipse.jface.viewers.AbstractTreeViewer.expandAll(AbstractTreeViewer.java:858)
at
org.tigris.subversion.subclipse.ui.history.ChangePathsTreeViewer.inputChanged(ChangePathsTreeViewer.java:76)
at
org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:250)
at
org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1542)
at
org.tigris.subversion.subclipse.ui.history.SVNHistoryPage.updatePanels(SVNHistoryPage.java:787)
at
org.tigris.subversion.subclipse.ui.history.SVNHistoryPage$10.selectionChanged(SVNHistoryPage.java:438)
at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:162)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:843)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:149)
at
org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:160)
at
org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:1976)
at
org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1577)
at
org.eclipse.jface.viewers.TableViewer.setSelection(TableViewer.java:1114)
at
org.tigris.subversion.subclipse.ui.history.SVNHistoryPage.selectRevision(SVNHistoryPage.java:847)
at
org.tigris.subversion.subclipse.ui.history.SVNHistoryPage$1.run(SVNHistoryPage.java:1535)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3325)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2971)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at
org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
at org.eclipse.core.launcher.Main.run(Main.java:977)
at org.eclipse.core.launcher.Main.main(Main.java:952)
Received on Thu Dec 14 04:18:27 2006