Bug 2394 - [UI] Walkback printed to console (not log) on shutdown (1GEY4C6)
Summary: [UI] Walkback printed to console (not log) on shutdown (1GEY4C6)
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 2.0   Edit
Hardware: All Windows NT
: P1 normal (vote)
Target Milestone: ---   Edit
Assignee: Eduardo Pereira CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2001-10-10 22:35 EDT by Martin Aeschlimann CLA
Modified: 2002-02-05 14:38 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Aeschlimann CLA 2001-10-10 22:35:35 EDT
MA (6/7/01 12:21:50 PM)
	While closing the workbench
	This walkback was printed to the console on shutdown of eclipse (not to the log)

org.eclipse.swt.SWTError: No more handles
        at org.eclipse.swt.SWT.error(SWT.java:1732)
        at org.eclipse.swt.SWT.error(SWT.java:1642)
        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(Compiled Code))
        at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java(Compiled Code))
        at org.eclipse.ui.actions.PerspectiveMenu.createMenuItem(PerspectiveMenu.java(Compiled Code))
        at org.eclipse.ui.actions.PerspectiveMenu.fill(PerspectiveMenu.java(Compiled Code))
        at org.eclipse.jface.action.MenuManager.update(MenuManager.java(Compiled Code))
        at org.eclipse.jface.action.MenuManager.updateAll(MenuManager.java(Compiled Code))
        at org.eclipse.jface.action.MenuManager.update(MenuManager.java(Compiled Code))
        at org.eclipse.jface.action.MenuManager.updateAll(MenuManager.java(Compiled Code))
        at org.eclipse.jface.action.MenuManager.update(MenuManager.java(Compiled Code))
        at org.eclipse.jface.action.MenuManager.updateAll(MenuManager.java(Compiled Code))
        at org.eclipse.ui.internal.WorkbenchWindow.updateActionBars(WorkbenchWindow.java:939)
        at org.eclipse.ui.internal.WorkbenchWindow.updateActionSets(WorkbenchWindow.java:953)
        at org.eclipse.ui.internal.WorkbenchWindow$5.run(WorkbenchWindow.java:881)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java(Compiled Code))
        at org.eclipse.ui.internal.WorkbenchWindow.setActivePage(WorkbenchWindow.java:860)
        at org.eclipse.ui.internal.WorkbenchWindow.closeAllPages(WorkbenchWindow.java:303)
        at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:608)
        at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:261)
        at org.eclipse.ui.internal.WorkbenchWindow.access$3(WorkbenchWindow.java:252)
        at org.eclipse.ui.internal.WorkbenchWindow$1.run(WorkbenchWindow.java:292)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java(Compiled Code))
        at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:290)
        at org.eclipse.jface.window.WindowManager.close(WindowManager.java:103)
        at org.eclipse.ui.internal.Workbench$2.run(Workbench.java:99)
        at org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java(Compiled Code))
        at org.eclipse.core.runtime.Platform.run(Platform.java(Compiled Code))
        at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:97)
        at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:75)
        at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:156)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java(Compiled Code))
        at org.eclipse.ui.internal.Workbench.close(Workbench.java:154)
        at org.eclipse.ui.internal.QuitAction.run(QuitAction.java:30)
        at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:408)
        at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent(ActionContributionItem.java(Compiled Code))
        at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java(Compiled Code))
        at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent(ActionContributionItem.java(Compiled Code))
        at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code))
        at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled Code))
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compiled Code))
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled Code))
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compiled Code))
        at org.eclipse.ui.internal.Workbench.run(Workbench.java:620)
        at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:815)
        at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285)
        at java.lang.reflect.Method.invoke(Native Method)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:69)
        at org.eclipse.core.launcher.Main.run(Main.java:311)
        at org.eclipse.core.launcher.UIMain.main(UIMain.java:43)


NOTES:
EG (6/7/2001 1:11:44 AM)
	moving on layer down to ITPUI.

DS (6/7/01 3:30:10 PM)
	We print exceptions in 5 places in the workbench ui ..

		execute(IProgressMonitor) :: WorkspaceModifyDelegatingOperation
		handleExceptionInEventLoop(Throwable) :: Workbench ( only if debug )
		init(String []) :: Workbench
		javaToNative(Object, TransferData) :: PluginTransfer
		nativeToJava(TransferData) :: PluginTransfer

	and 3 places in core boot ..

		DelegatingURLClassLoader
		loadOptions() :: InternalBootLoader
		run(String, URL, String, String []) :: InternalBootLoader

	After we release all of these should be modified to log rather than print.

KH (9/14/2001 12:04:58 PM)
	I am more concerned about the fact that there was an exception not where it was logged.
Comment 1 DJ Houghton CLA 2001-10-29 18:25:12 EST
PRODUCT VERSION:
	0.119

Comment 2 Kevin Haaland CLA 2002-01-23 17:13:08 EST
Pls note the priority of this defect report

There are a couple issues: 
  - Where exeptions are being displayed
  - What is written to the log (e.g. exceptions in async execs do not contain 
any usefull information)
  - The fact that we ran out of handles

Comment 3 Eduardo Pereira CLA 2002-02-05 14:38:21 EST
- handleExceptionInEventLoop has being changed to try to log any exception 
independent if it is a fatal error or not but if exception happen when handling 
fatal errors then we print them to the console (nothing else to do since there 
is no more memory or handles, etc).
- exception wrapped by SWTException or SWTError are printed now; 
- we are not updating the menus (which would create images) on shutdown anymore.