diff --git a/java/debugger/impl/src/com/intellij/debugger/memory/action/MemoryAgentActionBase.java b/java/debugger/impl/src/com/intellij/debugger/memory/action/MemoryAgentActionBase.java index 446a9ef6837f..0fc11faa050e 100644 --- a/java/debugger/impl/src/com/intellij/debugger/memory/action/MemoryAgentActionBase.java +++ b/java/debugger/impl/src/com/intellij/debugger/memory/action/MemoryAgentActionBase.java @@ -31,11 +31,7 @@ public abstract class MemoryAgentActionBase extends DebuggerTreeAction { debugProcess.getManagerThread().schedule(new SuspendContextCommandImpl(suspendContext) { @Override public void contextAction(@NotNull SuspendContextImpl suspendContext) { - EvaluationContextImpl evaluationContext = suspendContext.getEvaluationContext(); - if (evaluationContext == null) { - LOG.error("Evaluation impossible"); - return; - } + EvaluationContextImpl evaluationContext = new EvaluationContextImpl(suspendContext, suspendContext.getFrameProxy()); try { perform(evaluationContext, reference, node); } @@ -55,7 +51,7 @@ public abstract class MemoryAgentActionBase extends DebuggerTreeAction { protected boolean isEnabled(@NotNull XValueNodeImpl node, @NotNull AnActionEvent e) { if (!super.isEnabled(node, e)) return false; DebugProcessImpl debugProcess = JavaDebugProcess.getCurrentDebugProcess(node.getTree().getProject()); - if (debugProcess == null || debugProcess.isEvaluationPossible() || !MemoryAgent.get(debugProcess).capabilities().isLoaded()) { + if (debugProcess == null || !debugProcess.isEvaluationPossible() || !MemoryAgent.get(debugProcess).capabilities().isLoaded()) { e.getPresentation().setVisible(false); return false; }