Community
Participate
Working Groups
1. Wipe your deltas. 2. Launch your inner. 3. Ctrl+M 4. Alt+F4 > Confirm 5. Exception is logged. org.eclipse.e4.core.di.InjectionException: org.eclipse.swt.SWTException: Widget is disposed at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:795) at org.eclipse.e4.core.internal.di.InjectorImpl.uninject(InjectorImpl.java:163) at org.eclipse.e4.core.internal.di.InjectorImpl.disposed(InjectorImpl.java:326) at org.eclipse.e4.core.internal.di.Requestor.disposed(Requestor.java:112) at org.eclipse.e4.core.internal.contexts.ContextObjectSupplier$ContextInjectionListener.update(ContextObjectSupplier.java:59) at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:90) at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.doHandleInvalid(TrackableComputationExt.java:53) at org.eclipse.e4.core.internal.contexts.Computation.handleInvalid(Computation.java:59) at org.eclipse.e4.core.internal.contexts.EclipseContext.dispose(EclipseContext.java:196) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.clearContext(PartRenderingEngine.java:589) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.removeGui(PartRenderingEngine.java:539) at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1425) at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:1126) at org.eclipse.ui.internal.WorkbenchWindow.access$9(WorkbenchWindow.java:1105) at org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:1152) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1150) at org.eclipse.ui.internal.Workbench$13.run(Workbench.java:1017) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:1011) at org.eclipse.ui.internal.Workbench.access$11(Workbench.java:945) at org.eclipse.ui.internal.Workbench$14.run(Workbench.java:1087) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.Workbench.close(Workbench.java:1085) at org.eclipse.ui.internal.Workbench.close(Workbench.java:1058) at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:1123) at org.eclipse.ui.internal.WorkbenchWindow.access$9(WorkbenchWindow.java:1105) at org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:1152) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1150) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1166) at org.eclipse.ui.internal.WorkbenchWindow$4.close(WorkbenchWindow.java:424) at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer$8.shellClosed(WBWRenderer.java:421) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:98) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062) at org.eclipse.swt.widgets.Decorations.closeWidget(Decorations.java:308) at org.eclipse.swt.widgets.Decorations.WM_CLOSE(Decorations.java:1665) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4162) at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341) at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1598) at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2038) at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873) at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method) at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2454) at org.eclipse.swt.widgets.Shell.callWindowProc(Shell.java:497) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4251) at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341) at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1598) at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2038) at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2459) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3655) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:693) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:618) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:106) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:535) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:519) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: org.eclipse.swt.SWTException: Widget is disposed at org.eclipse.swt.SWT.error(SWT.java:4083) at org.eclipse.swt.SWT.error(SWT.java:3998) at org.eclipse.swt.SWT.error(SWT.java:3969) at org.eclipse.swt.widgets.Widget.error(Widget.java:468) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:340) at org.eclipse.swt.widgets.Control.getShell(Control.java:1432) at org.eclipse.e4.ui.workbench.addons.minmax.TrimStack.getShellClientComposite(TrimStack.java:384) at org.eclipse.e4.ui.workbench.addons.minmax.TrimStack.showStack(TrimStack.java:365) at org.eclipse.e4.ui.workbench.addons.minmax.TrimStack.cleanUp(TrimStack.java:217) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:618) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:47) ... 78 more
Created attachment 174814 [details] fix
Eric, +1? This is a surgical fix for the steps as given by Remy. Do you think we can run into similar cases, but with other controls being disposed earlier than we expect?
Susan, +1 for RC3?
(In reply to comment #2) > Do you think > we can run into similar cases, but with other controls being disposed earlier > than we expect? I have seen this exception logged in other cases in the past but didn't investigate deep enough for reproducible steps.
(In reply to comment #3) > Susan, +1 for RC3? +1 for RC3. The fix is low risk and definitely an improvement, although I agree with Remy that there are likely more bugs like these. I wonder if we should also check whether tpl.clientArea.isDisposed() If the toolbar and tpl client area are siblings (and I think they are?), then depending on platform and disposal order, it is theoretically possible that at some moment in time the TB had not been disposed yet but the composite already had.
looks good, this is gone with my current patch but i won't make the build with the real one tonight...I'll merge it in tomorrow.
committed to HEAD.
Eric is working on a better fix. The reason for doing this point fix is to hopeefully get less duplicate bugs being filed tomorrow when we test drive the new DND code.
*** Bug 320320 has been marked as a duplicate of this bug. ***
Build id: I20100721-2056. Win7. I installed the e4 tools and was prompted for restart. While it was trying to restart I saw the familiar stack. Prior to installing the tools, I had been using the build for awhile, and had done some D&D or perspective stuff (in the course of working, not trying to break anything). So I can't say for sure what got me in this state... ------------------- !ENTRY org.eclipse.ui.workbench 4 2 2010-07-22 09:41:37.371 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench". !STACK 0 org.eclipse.e4.core.di.InjectionException: org.eclipse.swt.SWTException: Widget is disposed at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:795) at org.eclipse.e4.core.internal.di.InjectorImpl.uninject(InjectorImpl.java:163) at org.eclipse.e4.core.internal.di.InjectorImpl.disposed(InjectorImpl.java:326) at org.eclipse.e4.core.internal.di.Requestor.disposed(Requestor.java:112) at org.eclipse.e4.core.internal.contexts.ContextObjectSupplier$ContextInjectionListener.update(ContextObjectSupplier.java:59) at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:90) at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.doHandleInvalid(TrackableComputationExt.java:53) at org.eclipse.e4.core.internal.contexts.Computation.handleInvalid(Computation.java:59) at org.eclipse.e4.core.internal.contexts.EclipseContext.dispose(EclipseContext.java:196) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.clearContext(PartRenderingEngine.java:604) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.removeGui(PartRenderingEngine.java:545) at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1437) at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:1138) at org.eclipse.ui.internal.WorkbenchWindow.access$9(WorkbenchWindow.java:1117) at org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:1164) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1162) at org.eclipse.ui.internal.Workbench$13.run(Workbench.java:1023) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:1017) at org.eclipse.ui.internal.Workbench.access$11(Workbench.java:951) at org.eclipse.ui.internal.Workbench$14.run(Workbench.java:1093) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.Workbench.close(Workbench.java:1091) at org.eclipse.ui.internal.Workbench.close(Workbench.java:1064) at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:1135) at org.eclipse.ui.internal.WorkbenchWindow.access$9(WorkbenchWindow.java:1117) at org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:1164) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1162) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1178) at org.eclipse.ui.internal.WorkbenchWindow$4.close(WorkbenchWindow.java:425) at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer$8.shellClosed(WBWRenderer.java:421) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:98) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062) at org.eclipse.swt.widgets.Decorations.closeWidget(Decorations.java:308) at org.eclipse.swt.widgets.Shell.close(Shell.java:537) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.stop(PartRenderingEngine.java:765) at org.eclipse.ui.internal.Workbench.restart(Workbench.java:2222) at org.eclipse.equinox.internal.p2.ui.ProvisioningOperationRunner$1.run(ProvisioningOperationRunner.java:92) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:713) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:633) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:106) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:541) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:525) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 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.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) Caused by: org.eclipse.swt.SWTException: Widget is disposed at org.eclipse.swt.SWT.error(SWT.java:4083) at org.eclipse.swt.SWT.error(SWT.java:3998) at org.eclipse.swt.SWT.error(SWT.java:3969) at org.eclipse.swt.widgets.Widget.error(Widget.java:468) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:340) at org.eclipse.swt.widgets.Control.isVisible(Control.java:1777) at org.eclipse.e4.ui.workbench.addons.minmax.TrimStack.showStack(TrimStack.java:369) at org.eclipse.e4.ui.workbench.addons.minmax.TrimStack.cleanUp(TrimStack.java:217) 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.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:47) ... 68 more
I wasn't sure whether to open a new bug or use this bug to track the problem. We all realize/suspect that there are other cases besides the surgical fix where this can happen....
I can't repro this on I20100726-2152. Susan, after starting fresh have you been able to see this again?
I started with today's build, cleaned my deltas, worked for awhile. During this time I synched CVS, stuck the problems view in the editor area, maximized it, put it back. Dragged outline view to its own window, then back, etc. Everything fine. Then I went to install the model tooling, and sure enough, get the error as the platform tries to shutdown/restart. !ENTRY org.eclipse.ui.workbench 4 2 2010-07-27 12:15:55.577 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench". !STACK 0 org.eclipse.e4.core.di.InjectionException: java.lang.NullPointerException at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:795) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:775) at org.eclipse.e4.core.internal.di.InjectorImpl.uninject(InjectorImpl.java:163) at org.eclipse.e4.core.internal.di.InjectorImpl.disposed(InjectorImpl.java:326) at org.eclipse.e4.core.internal.di.Requestor.disposed(Requestor.java:112) at org.eclipse.e4.core.internal.contexts.ContextObjectSupplier$ContextInjectionListener.update(ContextObjectSupplier.java:59) at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.update(TrackableComputationExt.java:90) at org.eclipse.e4.core.internal.contexts.TrackableComputationExt.doHandleInvalid(TrackableComputationExt.java:53) at org.eclipse.e4.core.internal.contexts.Computation.handleInvalid(Computation.java:59) at org.eclipse.e4.core.internal.contexts.EclipseContext.dispose(EclipseContext.java:196) at org.eclipse.e4.core.internal.contexts.EclipseContext.dispose(EclipseContext.java:186) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.clearContext(PartRenderingEngine.java:604) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.removeGui(PartRenderingEngine.java:545) at org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1357) at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:1058) at org.eclipse.ui.internal.WorkbenchWindow.access$9(WorkbenchWindow.java:1037) at org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:1084) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1082) at org.eclipse.ui.internal.Workbench$13.run(Workbench.java:1023) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:1017) at org.eclipse.ui.internal.Workbench.access$11(Workbench.java:951) at org.eclipse.ui.internal.Workbench$14.run(Workbench.java:1093) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.Workbench.close(Workbench.java:1091) at org.eclipse.ui.internal.Workbench.close(Workbench.java:1064) at org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:1055) at org.eclipse.ui.internal.WorkbenchWindow.access$9(WorkbenchWindow.java:1037) at org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:1084) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1082) at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:1098) at org.eclipse.ui.internal.WorkbenchWindow$4.close(WorkbenchWindow.java:424) at org.eclipse.e4.ui.workbench.renderers.swt.WBWRenderer$8.shellClosed(WBWRenderer.java:421) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:98) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062) at org.eclipse.swt.widgets.Decorations.closeWidget(Decorations.java:308) at org.eclipse.swt.widgets.Shell.close(Shell.java:537) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.stop(PartRenderingEngine.java:765) at org.eclipse.ui.internal.Workbench.restart(Workbench.java:2222) at org.eclipse.equinox.internal.p2.ui.ProvisioningOperationRunner$1.run(ProvisioningOperationRunner.java:92) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:713) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:633) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:106) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:541) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:525) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 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.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) Caused by: java.lang.NullPointerException at org.eclipse.ui.internal.WorkbenchWindow.getExtensionTracker(WorkbenchWindow.java:2067) at org.eclipse.ui.actions.BaseNewWizardMenu.unregisterListeners(BaseNewWizardMenu.java:271) at org.eclipse.ui.actions.BaseNewWizardMenu.dispose(BaseNewWizardMenu.java:164) at org.eclipse.jface.action.MenuManager.dispose(MenuManager.java:234) at org.eclipse.jface.action.MenuManager.dispose(MenuManager.java:234) at org.eclipse.ui.internal.PartSite.dispose(PartSite.java:274) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.disposeSite(CompatibilityPart.java:223) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.invalidate(CompatibilityPart.java:135) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.destroy(CompatibilityPart.java:208) 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.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:47) ... 70 more
Since this isn't really the same bug as originally reported, I've opened a new bug, bug 321061, for the NPE I'm still getting, and closing this one.
verified on Win 7, I20100726-2152 I can shutdown successfully with a maximized editor.