diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/SelectionListenerWithASTManager.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/SelectionListenerWithASTManager.java index 91552f75bbd..6c00ecba7a4 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/SelectionListenerWithASTManager.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/viewsupport/SelectionListenerWithASTManager.java @@ -35,6 +35,7 @@ import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.ISelectionChangedListener; import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.ui.ISelectionListener; +import org.eclipse.ui.PlatformUI; import org.eclipse.ui.texteditor.ITextEditor; /** @@ -134,7 +135,7 @@ public class SelectionListenerWithASTManager { // Try to acquire the lock while (!monitor.isCanceled() && !fJobLock.acquire(10)) { } - if (!monitor.isCanceled() && isSelectionValid(selection)) { + if (!monitor.isCanceled() && isSelectionValid(selection) && PlatformUI.isWorkbenchRunning()) { return calculateASTandInform(workingCopy, selection, monitor); } } catch (InterruptedException e) {