eclipse-platform / eclipse-platform/eclipse.platform

IllegalStateException Conflicting handlers TextMergeViewer

Abierto
#897 1 comentario 0 reacciones 0 asignados Ver en GitHub
bug
Lenguaje dominante
Java
Estrellas
165
Forks
174
Merge medio
2 d 8 h
PR fusionados (30 d)
22

Descripción

```
java.lang.IllegalStateException: Conflicting handlers: {[ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$28@27f57e94), for 'org.eclipse.compare.selectPreviousChange', in PartImpl (org.eclipse.e4.ui.compatibility.editor) removeOnHide org.eclipse.compare.CompareEditorContext, activeWhen=ActivePartExpression(org.eclipse.compare.internal.CompareEditor@42728c69), active=true, sourcePriority=1048576, participating=true]} vs {[ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$28@74d362da), for 'org.eclipse.compare.selectPreviousChange', in PartImpl (org.eclipse.e4.ui.compatibility.editor) removeOnHide org.eclipse.compare.CompareEditorContext, activeWhen=ActivePartExpression(org.eclipse.compare.internal.CompareEditor@42728c69), active=true, sourcePriority=1048576, participating=true]} in: PartImpl (org.eclipse.e4.ui.compatibility.editor) removeOnHide org.eclipse.compare.CompareEditorContext
at org.eclipse.ui.internal.handlers.LegacyHandlerService$HandlerSelectionFunction.compute(LegacyHandlerService.java:145)
at org.eclipse.e4.core.internal.contexts.ValueComputation.get(ValueComputation.java:70)
at org.eclipse.e4.core.internal.contexts.EclipseContext.internalGet(EclipseContext.java:265)
at org.eclipse.e4.core.internal.contexts.EclipseContext.get(EclipseContext.java:230)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.lookUpHandler(HandlerServiceImpl.java:103)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.handlerChanged(E4HandlerProxy.java:116)
at org.eclipse.core.commands.AbstractHandler.fireHandlerChanged(AbstractHandler.java:77)
at org.eclipse.jface.commands.ActionHandler.lambda$0(ActionHandler.java:81)
at org.eclipse.jface.action.AbstractAction.firePropertyChange(AbstractAction.java:52)
at org.eclipse.jface.action.AbstractAction.firePropertyChange(AbstractAction.java:75)
at org.eclipse.jface.action.Action.setEnabled(Action.java:541)
at org.eclipse.compare.contentmergeviewer.TextMergeViewer.updateControls(TextMergeViewer.java:3631)
at org.eclipse.compare.contentmergeviewer.TextMergeViewer.setCurrentDiff(TextMergeViewer.java:4839)
at org.eclipse.compare.contentmergeviewer.TextMergeViewer.setCurrentDiff(TextMergeViewer.java:4794)
at org.eclipse.compare.contentmergeviewer.TextMergeViewer.selectFirstDiff(TextMergeViewer.java:4157)
at org.eclipse.compare.contentmergeviewer.TextMergeViewer.updateContent(TextMergeViewer.java:3088)
at org.eclipse.compare.contentmergeviewer.ContentMergeViewer.internalRefresh(ContentMergeViewer.java:801)
at org.eclipse.compare.contentmergeviewer.ContentMergeViewer.inputChanged(ContentMergeViewer.java:709)
at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:282)
at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:268)
at org.eclipse.compare.internal.CompareContentViewerSwitchingPane.setInput(CompareContentViewerSwitchingPane.java:202)
at org.eclipse.compare.CompareEditorInput.internalSetContentPaneInput(CompareEditorInput.java:806)
at org.eclipse.compare.CompareEditorInput.lambda$8(CompareEditorInput.java:747)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.compare.CompareEditorInput.feed1(CompareEditorInput.java:742)
at org.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:720)
at org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:543)
at org.eclipse.compare.internal.CompareEditor.createCompareControl(CompareEditor.java:448)
at org.eclipse.compare.internal.CompareEditor$1.lambda$0(CompareEditor.java:366)
at org.eclipse.ui.internal.PendingSyncExec.run(PendingSyncExec.java:68)
at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:172)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:132)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4046)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3662)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:342)
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:645)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:342)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:552)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:208)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:651)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:588)
at org.eclipse.equinox.launcher.Main.run(Main.java:1459)

```

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza con el stack trace de TextMergeViewer.updateControls y setCurrentDiff, y luego sigue cómo LegacyHandlerService resuelve los handlers en conflicto de org.eclipse.compare.selectPreviousChange. Reproduce el fallo del editor de comparación si es posible; se considera terminado cuando abrir o actualizar la comparación afectada ya no provoca una IllegalStateException.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
java
Área
desktop-dev
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
20/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.