Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/org.eclipse.tcf/src/org/eclipse/tcf/EventQueue.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/plugins/org.eclipse.tcf/src/org/eclipse/tcf/EventQueue.java b/plugins/org.eclipse.tcf/src/org/eclipse/tcf/EventQueue.java
index 5fd4f564e..f3540a673 100644
--- a/plugins/org.eclipse.tcf/src/org/eclipse/tcf/EventQueue.java
+++ b/plugins/org.eclipse.tcf/src/org/eclipse/tcf/EventQueue.java
@@ -12,6 +12,7 @@ package org.eclipse.tcf;
import java.util.LinkedList;
+import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.jobs.IJobChangeEvent;
import org.eclipse.core.runtime.jobs.IJobChangeListener;
import org.eclipse.core.runtime.jobs.Job;
@@ -102,7 +103,12 @@ class EventQueue implements IEventQueue, Runnable {
public synchronized void invokeLater(final Runnable r) {
assert r != null;
- if (shutdown) throw new IllegalStateException("TCF event dispatcher has shut down"); //$NON-NLS-1$
+ if (shutdown) {
+ // If not in debug mode, silently ignore this case to avoid
+ // confusion and bad impression to the user.
+ if (Platform.inDebugMode()) throw new IllegalStateException("TCF event dispatcher has shut down"); //$NON-NLS-1$
+ else return;
+ }
queue.add(r);
if (waiting) {
waiting = false;

Back to the top