Skip to content

SWTException when opening a context menu while the terminal feature is installed #4264

Description

@nlisker-sanctorum

When opening a context menu in package explorer or context explorer (can be on a project, package, or file), an exception is thrown. The same exception is thrown when "Show in Local Terminal" is hovered over and the sub-menu appears:

Dynamic menu contribution 'DynamicContributionItems(id=org.eclipse.terminal.connector.local.LocalLauncherDynamicContributionItems, visible=true)' threw an unexpected exception
org.eclipse.swt.SWTException: Unsupported or unrecognized format
	at org.eclipse.swt.SWT.error(SWT.java:4934)
	at org.eclipse.swt.SWT.error(SWT.java:4849)
	at org.eclipse.swt.SWT.error(SWT.java:4820)
	at org.eclipse.swt.internal.image.FileFormat.lambda$11(FileFormat.java:153)
	at java.base/java.util.Optional.orElseGet(Optional.java:368)
	at org.eclipse.swt.internal.image.FileFormat.load(FileFormat.java:152)
	at org.eclipse.swt.internal.NativeImageLoader.load(NativeImageLoader.java:26)
	at org.eclipse.swt.graphics.ImageLoader.loadByZoom(ImageLoader.java:161)
	at org.eclipse.swt.graphics.ImageLoader.loadByZoom(ImageLoader.java:205)
	at org.eclipse.swt.graphics.ImageLoader.load(ImageLoader.java:198)
	at org.eclipse.terminal.view.ui.internal.local.showin.ExternalExecutablesUtils.loadImage(ExternalExecutablesUtils.java:38)
	at org.eclipse.terminal.view.ui.internal.local.showin.DynamicContributionItems.getContributionItems(DynamicContributionItems.java:76)
	at org.eclipse.ui.actions.CompoundContributionItem.getContributionItemsToFill(CompoundContributionItem.java:83)
	at org.eclipse.ui.actions.CompoundContributionItem.fill(CompoundContributionItem.java:57)
	at org.eclipse.ui.internal.menus.DynamicMenuContributionItem.fill(DynamicMenuContributionItem.java:194)
	at org.eclipse.jface.action.MenuManager.doItemFill(MenuManager.java:727)
	at org.eclipse.jface.action.MenuManager.update(MenuManager.java:804)
	at org.eclipse.jface.action.MenuManager.handleAboutToShow(MenuManager.java:468)
	at org.eclipse.jface.action.MenuManager$2.menuShown(MenuManager.java:493)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:297)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4363)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1217)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1241)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1222)
	at org.eclipse.swt.widgets.Control.WM_INITMENUPOPUP(Control.java:5361)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4993)
	at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:336)
	at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1490)
	at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2446)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5131)
	at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method)
	at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:236)
	at org.eclipse.swt.widgets.Display.runPopups(Display.java:4202)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3743)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1051)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:583)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:193)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
	at java.base/java.lang.reflect.Method.invoke(Method.java:565)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1415)

The terminal icon does show.

Eclipse Platform 4.41.0.I20260820-2300
Terminal Feature 1.0.400.v20260812-1204
Win 10

Community

  • I understand reporting an issue to this OSS project does not mandate anyone to fix it. Other contributors may consider the issue, or not, at their own convenience. The most efficient way to get it fixed is that I fix it myself and contribute it back as a good quality patch to the project.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions