commit | 3d5301b3f3c7f2f318305a8c39bf700176eda011 | [log] [tgz] |
---|---|---|
author | Darin Wright <darin> | Mon Sep 23 21:07:07 2002 +0000 |
committer | Darin Wright <darin> | Mon Sep 23 21:07:07 2002 +0000 |
tree | 31729d6c4c54b89253a1fd80c1b8eee04e7bf54f | |
parent | da333d4c3a2f2b533f5c161b79328e8fc783e8d6 [diff] |
bug 8693
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/EvaluateAction.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/EvaluateAction.java index 2db02d6..1be80e6 100644 --- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/EvaluateAction.java +++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/EvaluateAction.java
@@ -184,6 +184,11 @@ * @see IEvaluationListener#evaluationComplete(IEvaluationResult) */ public void evaluationComplete(final IEvaluationResult result) { + // if plug-in has shutdown, ignore - see bug# 8693 + if (JDIDebugUIPlugin.getDefault() == null) { + return; + } + final IJavaValue value= result.getValue(); if (result.hasErrors() || value != null) { final Display display= JDIDebugUIPlugin.getStandardDisplay();
diff --git a/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/LocalEvaluationEngine.java b/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/LocalEvaluationEngine.java index 276614c..76f48ef 100644 --- a/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/LocalEvaluationEngine.java +++ b/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/LocalEvaluationEngine.java
@@ -56,7 +56,7 @@ import org.eclipse.jdt.internal.debug.core.model.JDIValue; import com.sun.jdi.InvocationException; -import com.sun.jdi.ObjectReference; +import com.sun.jdi.ObjectReference; /** * An evaluation engine that deploys class files locally @@ -916,7 +916,10 @@ * and reset for the next evaluation. */ protected void evaluationComplete() { - getListener().evaluationComplete(getResult()); + // only notify if plug-in not yet shutdown (bug# 8693) + if (JDIDebugPlugin.getDefault() != null) { + getListener().evaluationComplete(getResult()); + } evaluationEnded(); reset(); if (isDisposed()) {
diff --git a/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/ast/engine/EvaluationThread.java b/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/ast/engine/EvaluationThread.java index 80e13a2..427b7d1 100644 --- a/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/ast/engine/EvaluationThread.java +++ b/org.eclipse.jdt.debug/eval/org/eclipse/jdt/internal/debug/eval/ast/engine/EvaluationThread.java
@@ -209,7 +209,10 @@ */ private void evaluationFinished(IEvaluationResult result) { fEngine.evaluationThreadFinished(this); - fListener.evaluationComplete(result); + // only notify if plugin not yet shutdown - bug# 8693 + if(JDIDebugPlugin.getDefault() != null) { + fListener.evaluationComplete(result); + } fExpression= null; fContext= null; fThread= null;