Community
Participate
Working Groups
1. Open new java perspective. 2. Repeat step 1 about 6 to 10 times. 3. Eventually a message will appear on win 98 saying system resources are low. 4. Repeat step 1 about 1 or 2 times. Result: org.eclipse.swt.SWTError: No more handles at java.lang.Error.<init>(Error.java:52) at org.eclipse.swt.SWTError.<init>(SWTError.java:45) at org.eclipse.swt.SWTError.<init>(SWTError.java:34) at org.eclipse.swt.SWT.error(SWT.java:1832) at org.eclipse.swt.SWT.error(SWT.java:1741) at org.eclipse.swt.graphics.Image.init(Image.java(Compiled Code)) at org.eclipse.swt.graphics.Image.<init>(Image.java(Compiled Code)) at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:106) at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:77) at org.eclipse.jface.action.ActionContributionItem$ImageCache.getImage(ActionContributionItem.java:90) at org.eclipse.jface.action.ActionContributionItem.updateImages(ActionContributionItem.java:546) at org.eclipse.jface.action.ActionContributionItem.update(ActionContributionItem.java:456) at org.eclipse.jface.action.ActionContributionItem.fill(ActionContributionItem.java:286) at org.eclipse.jface.action.ToolBarManager.update(ToolBarManager.java:197) at org.eclipse.jdt.internal.ui.typehierarchy.TypeHierarchyViewPart.createPartControl(TypeHierarchyViewPart.java:401) at org.eclipse.ui.internal.PartPane$2.run(PartPane.java:54) at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:640) at org.eclipse.core.runtime.Platform.run(Platform.java:388) at org.eclipse.ui.internal.PartPane.createChildControl(PartPane.java:52) at org.eclipse.ui.internal.PartPane.createControl(PartPane.java:90) at org.eclipse.ui.internal.ViewPane.createControl(ViewPane.java:109) at org.eclipse.ui.internal.PartTabFolder.createPartTab(PartTabFolder.java:240) at org.eclipse.ui.internal.PartTabFolder.createControl(PartTabFolder.java:212) at org.eclipse.ui.internal.PartSashContainer.createControl(PartSashContainer.java:164) at org.eclipse.ui.internal.PerspectivePresentation.activate(PerspectivePresentation.java:79) at org.eclipse.ui.internal.Perspective.onActivate(Perspective.java:501) at org.eclipse.ui.internal.WorkbenchPage.onActivate(WorkbenchPage.java:795) at org.eclipse.ui.internal.WorkbenchWindow$5.run(WorkbenchWindow.java:839) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:81) at org.eclipse.ui.internal.WorkbenchWindow.setActivePage(WorkbenchWindow.java:827) at org.eclipse.ui.internal.WorkbenchWindow.busyOpenPage(WorkbenchWindow.java:268) at org.eclipse.ui.internal.WorkbenchWindow.access$6(WorkbenchWindow.java:256) at org.eclipse.ui.internal.WorkbenchWindow$4.run(WorkbenchWindow.java:611) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:81) at org.eclipse.ui.internal.WorkbenchWindow.openPage(WorkbenchWindow.java:608) at org.eclipse.ui.actions.OpenPerspectiveMenu.runInNewPage(OpenPerspectiveMenu.java:151) at org.eclipse.ui.actions.OpenPerspectiveMenu.runWithPerspectiveValue(OpenPerspectiveMenu.java:206) at org.eclipse.ui.actions.OpenPerspectiveMenu.run(OpenPerspectiveMenu.java:134) at org.eclipse.ui.actions.PerspectiveMenu$1.widgetSelected(PerspectiveMenu.java:68) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:85) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:643) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:1138) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1015) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:624) at org.eclipse.ui.internal.Workbench.run(Workbench.java:612) at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:810) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:280) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:68) at org.eclipse.core.launcher.Main.run(Main.java:337) at org.eclipse.core.launcher.UIMain.main(UIMain.java:43) NOTES: DS (5/25/01 2:20:29 PM) Although allocation failure is more common on win 98, it will be possible on all systems. Unless we bound the number of perspectives which the user can create, we must deal with allocation failure. When this exception occurs we should try to back out of perspective creation OR default to the red error image. DS (5/25/01 2:25:41 PM) See also 1GEAO1A: ITPUI:WIN98 - Workbench crashes when toolbar allocation fails JEL (14/06/2001 12:55:25 PM) [123] I had the crash in win2k with about 15-20 Java Perspectives; 128MB phys mem + 256MB virtual mem.
PRODUCT VERSION: eclipse 0.110 on jdk
*** Bug 2216 has been marked as a duplicate of this bug. ***
We have changed the exception handling on event loop. It will now try to open a dialog and show the error to the user with try{}catch blocks around everything trying to make it more robust. If other SWTError happen while handling the first one then we don't have much to do.