[jbosstools-issues] [JBoss JIRA] (JBIDE-17528) 'Widget is disposed' exception in JBoss Central
Denis Golovin (JIRA)
issues at jboss.org
Wed Jun 4 15:14:15 EDT 2014
Denis Golovin created JBIDE-17528:
-------------------------------------
Summary: 'Widget is disposed' exception in JBoss Central
Key: JBIDE-17528
URL: https://issues.jboss.org/browse/JBIDE-17528
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: central
Affects Versions: 4.2.0.Beta2
Reporter: Denis Golovin
Priority: Minor
Fix For: 4.2.0.Beta3
{code}org.eclipse.swt.SWTException: Failed to execute runnable (org.eclipse.swt.SWTException: Widget is disposed)
at org.eclipse.swt.SWT.error(SWT.java:4441)
at org.eclipse.swt.SWT.error(SWT.java:4356)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:139)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3781)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3419)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1152)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1033)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:635)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:578)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:379)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:233)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
Caused by: org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:4441)
at org.eclipse.swt.SWT.error(SWT.java:4356)
at org.eclipse.swt.SWT.error(SWT.java:4327)
at org.eclipse.swt.widgets.Widget.error(Widget.java:476)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:413)
at org.eclipse.swt.widgets.Composite.getChildren(Composite.java:610)
at org.jboss.tools.central.editors.GettingStartedPage.disposeChildren(GettingStartedPage.java:1124)
at org.jboss.tools.central.editors.GettingStartedPage.addProxyWizardLinks(GettingStartedPage.java:533)
at org.jboss.tools.central.editors.GettingStartedPage.access$12(GettingStartedPage.java:531)
at org.jboss.tools.central.editors.GettingStartedPage$5$1.run(GettingStartedPage.java:520)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
... 24 more{code}
It happens because of WIzard Links area is populated in delayed async execution and if download is long enough central editor can get closed before deferred UI processing started.
Simple solution is check that central is still opened after getProxyWizards() called and to modify async exec so it check if widget is disposed before doing any UI manipulations in central editor.
--
This message was sent by Atlassian JIRA
(v6.2.3#6260)
More information about the jbosstools-issues
mailing list