summaryrefslogtreecommitdiff
path: root/java/debugger/impl/src/com/intellij/debugger/engine/JavaDebuggerEvaluator.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/debugger/impl/src/com/intellij/debugger/engine/JavaDebuggerEvaluator.java')
-rw-r--r--java/debugger/impl/src/com/intellij/debugger/engine/JavaDebuggerEvaluator.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/java/debugger/impl/src/com/intellij/debugger/engine/JavaDebuggerEvaluator.java b/java/debugger/impl/src/com/intellij/debugger/engine/JavaDebuggerEvaluator.java
index e37576bae8f4..f2178c1d4fb5 100644
--- a/java/debugger/impl/src/com/intellij/debugger/engine/JavaDebuggerEvaluator.java
+++ b/java/debugger/impl/src/com/intellij/debugger/engine/JavaDebuggerEvaluator.java
@@ -15,6 +15,7 @@
*/
package com.intellij.debugger.engine;
+import com.intellij.debugger.engine.evaluation.EvaluateException;
import com.intellij.debugger.engine.evaluation.EvaluationContextImpl;
import com.intellij.debugger.engine.evaluation.TextWithImportsImpl;
import com.intellij.debugger.engine.events.DebuggerContextCommandImpl;
@@ -73,9 +74,16 @@ public class JavaDebuggerEvaluator extends XDebuggerEvaluator {
callback.errorOccurred("Context is not available");
return;
}
+ descriptor.setContext(evalContext);
+ @SuppressWarnings("ThrowableResultOfMethodCallIgnored")
+ EvaluateException exception = descriptor.getEvaluateException();
+ if (exception != null) {
+ callback.errorOccurred(exception.getMessage());
+ return;
+ }
JavaDebugProcess process = myDebugProcess.getXdebugProcess();
if (process != null) {
- callback.evaluated(JavaValue.create(descriptor, evalContext, process.getNodeManager()));
+ callback.evaluated(JavaValue.create(null, descriptor, evalContext, process.getNodeManager(), true));
}
}
});