Prevent NPE from the title builder job if run during/after disposal

Change-Id: Ia059bcfb8ae2d21fd3a096cf0b70226394013788
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 544d9fc..6b2231e 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
@@ -243,14 +243,17 @@
 		@Override
 		protected IStatus run(IProgressMonitor monitor) {
 			final String title = new TitleBuilder(getCompareConfiguration()).toString();
-			getContentProvider().runWhenReady(IN_UI_ASYNC, new Runnable() {
-				public void run() {
-					CTabFolder control = getControl();
-					if (!control.isDisposed()) {
-						((CompareViewerSwitchingPane)control.getParent()).setTitleArgument(title);
+			EMFCompareStructureMergeViewerContentProvider contentProvider = getContentProvider();
+			if (contentProvider != null) {
+				contentProvider.runWhenReady(IN_UI_ASYNC, new Runnable() {
+					public void run() {
+						CTabFolder control = getControl();
+						if (!control.isDisposed()) {
+							((CompareViewerSwitchingPane)control.getParent()).setTitleArgument(title);
+						}
 					}
-				}
-			});
+				});
+			}
 			return Status.OK_STATUS;
 		}
 	}