Community
Participate
Working Groups
Backport to 4.3.2 +++ This bug was initially created as a clone of Bug #422034 +++ The HandlerProcessingAddon casts an MHandlerContainer to an MContext without checking if the MHandlerContainer is of type MContext. As this is true for most of the classes implementing MHandlerContainer, it is not true for all. One example is MPartDescriptor. The HandlerProcessingAddon fails with an ClassCastException if one removes an MHandler from an MPartDescriptor. For 4.3.1 the stacktrace is as follows: java.lang.ClassCastException: org.eclipse.e4.ui.model.application.descriptor.basic.impl.PartDescriptorImpl cannot be cast to org.eclipse.e4.ui.model.application.ui.MContext at org.eclipse.e4.ui.internal.workbench.addons.HandlerProcessingAddon$1.handleEvent(HandlerProcessingAddon.java:88) ~[na:na] at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:41) ~[na:na] at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) ~[na:na] at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135) ~[na:na] at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4145) ~[na:na] at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3762) ~[na:na] at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113) ~[na:na] at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) ~[na:na] at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997) ~[na:na] at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138) ~[na:na] at org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:162) ~[na:na] at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) ~[na:na] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) ~[na:na] at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) ~[na:na] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354) ~[na:na] at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181) ~[na:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_07] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_07] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_07] at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_07] at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636) ~[org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar:na] at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591) ~[org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar:na] at org.eclipse.equinox.launcher.Main.run(Main.java:1450) ~[org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar:na]
Hi Paul, when you get a chance could you please review https://git.eclipse.org/r/#/c/19039 PW
Released on R4_3_maintenance as: https://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?h=R4_3_maintenance&id=74e39c5dbc57f8dd56afafd418d38d4d14c9e050
*** Bug 423852 has been marked as a duplicate of this bug. ***
In 4.3.2.M20140129-0800 PW