[458502] NPE in EMFCompareStructureMergeViewer.
Needed to make sure diagnostic passed to method updateProblemIndication
is never null.
Bug: 458502 (duplicate)
Bug: 457700
Change-Id: I023c74755332c7d6a93fa0bad1049ac64bdf915f
Signed-off-by: Laurent Delaigue <laurent.delaigue@obeo.fr>
diff --git a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java
index 53a2969..19712fb 100644
--- a/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java
+++ b/plugins/org.eclipse.emf.compare.ide.ui/src/org/eclipse/emf/compare/ide/ui/internal/structuremergeviewer/EMFCompareStructureMergeViewer.java
@@ -817,7 +817,12 @@
// display problem tabs if any
SWTUtil.safeAsyncExec(new Runnable() {
public void run() {
- updateProblemIndication(comparison.getDiagnostic());
+ Diagnostic diagnostic = comparison.getDiagnostic();
+ if (diagnostic == null) {
+ updateProblemIndication(Diagnostic.OK_INSTANCE);
+ } else {
+ updateProblemIndication(diagnostic);
+ }
}
});
@@ -1145,6 +1150,7 @@
}
private void updateProblemIndication(Diagnostic diagnostic) {
+ Assert.isNotNull(diagnostic);
int lastEditorPage = getPageCount() - 1;
if (lastEditorPage >= 0 && getItemControl(lastEditorPage) instanceof ProblemIndicationComposite) {
((ProblemIndicationComposite)getItemControl(lastEditorPage)).setDiagnostic(diagnostic);