Skip to content

SWT resource leak with the transition wizard #103

@Kellindil

Description

@Kellindil

Detected using Capella 6.0.0 and the System to subsystem add-on 1.6.0.202206161409
Start capella with the flag -Dorg.eclipse.swt.graphics.Resource.reportNonDisposed=true

Use the System to subsystem transition > Vertical > SA wizard on any logical component (also repoducible with the Vertical > SA-LA-PA wizard on a Physical Component). The following will be logged once the wizard is closed. Note that this seems very close to eclipse-capella/capella#2248 and may have the same root cause?

java.lang.Error: SWT Resource was not properly disposed
at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172)
at org.eclipse.swt.graphics.Resource.(Resource.java:120)
at org.eclipse.swt.graphics.Image.(Image.java:683)
at org.eclipse.jface.resource.URLImageDescriptor.createImage(URLImageDescriptor.java:274)
at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:287)
at org.eclipse.jface.resource.ImageDescriptor.createImage(ImageDescriptor.java:265)
at org.eclipse.jface.dialogs.DialogPage.getImage(DialogPage.java:266)
at org.eclipse.jface.wizard.WizardPage.getImage(WizardPage.java:152)
at org.eclipse.jface.wizard.WizardDialog.updateTitleBar(WizardDialog.java:1467)
at org.eclipse.jface.wizard.WizardDialog.update(WizardDialog.java:1320)
at org.eclipse.jface.wizard.WizardDialog.showStartingPage(WizardDialog.java:1281)
at org.eclipse.jface.wizard.WizardDialog.createContents(WizardDialog.java:637)
at org.eclipse.jface.window.Window.create(Window.java:431)
at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1094)
at org.eclipse.jface.window.Window.open(Window.java:788)
at org.polarsys.capella.core.ui.properties.wizards.CustomWizardHandler.openWizard(CustomWizardHandler.java:66)
at org.polarsys.capella.core.ui.properties.wizards.OpenCustomWizardCommand.run(OpenCustomWizardCommand.java:47)
at org.polarsys.capella.common.ef.ExecutionManager$2.doExecute(ExecutionManager.java:129)
at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)
at org.eclipse.emf.workspace.EMFCommandOperation.doExecute(EMFCommandOperation.java:119)
at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:150)
at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:496)
at org.polarsys.capella.common.ef.internal.command.WorkspaceCommandStackImpl.doExecute(WorkspaceCommandStackImpl.java:150)
at org.polarsys.capella.common.platform.sirius.ted.SemanticEditingDomainFactory$SemanticCommandStack.doExecute(SemanticEditingDomainFactory.java:277)
at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)
at org.polarsys.capella.common.ef.ExecutionManager.executeReadWriteCommand(ExecutionManager.java:93)
at org.polarsys.capella.common.ef.ExecutionManager.execute(ExecutionManager.java:68)
at org.polarsys.capella.core.ui.properties.CapellaUIPropertiesPlugin.openWizard(CapellaUIPropertiesPlugin.java:99)
at org.polarsys.capella.core.ui.properties.CapellaUIPropertiesPlugin.openWizard(CapellaUIPropertiesPlugin.java:109)
at org.polarsys.capella.core.platform.sirius.ui.navigator.actions.OpenPropertiesAction.run(OpenPropertiesAction.java:33)
at org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:215)
at org.eclipse.ui.navigator.CommonNavigatorManager$1.open(CommonNavigatorManager.java:183)
at org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48)
at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:802)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:799)
at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1118)
at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:454)
at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:275)
at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:270)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:310)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4209)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1043)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4026)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3626)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1157)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
at org.polarsys.capella.core.platform.sirius.ui.app.CapellaApplication.start(CapellaApplication.java:118)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
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:401)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:654)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
at org.eclipse.equinox.launcher.Main.run(Main.java:1462)
at org.eclipse.equinox.launcher.Main.main(Main.java:1435)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions