Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java
index 1a9de3977..a9b078176 100644
--- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java
+++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java
@@ -715,6 +715,7 @@ public class TCFNodeExpression extends TCFNode implements IElementEditor, ICastT
}
void onRegisterValueChanged() {
+ prev_value = null;
value.reset();
type.reset();
type_name.reset();
@@ -726,6 +727,7 @@ public class TCFNodeExpression extends TCFNode implements IElementEditor, ICastT
}
void onMemoryChanged() {
+ prev_value = null;
value.reset();
type.reset();
type_name.reset();
@@ -2035,6 +2037,17 @@ public class TCFNodeExpression extends TCFNode implements IElementEditor, ICastT
done(node.is_empty || node.script != null);
return;
}
+ TCFNode n = node.getRootExpression().parent;
+ if (n instanceof TCFNodeStackFrame) {
+ TCFNodeExecContext exe = (TCFNodeExecContext)n.parent;
+ TCFDataCache<TCFContextState> state_cache = exe.getState();
+ if (!state_cache.validate(this)) return;
+ TCFContextState state_data = state_cache.getData();
+ if (state_data == null || !state_data.is_suspended) {
+ done(Boolean.FALSE);
+ return;
+ }
+ }
if (!node.is_empty && node.enabled) {
if (!node.rem_expression.validate(this)) return;
IExpressions.Expression exp = node.rem_expression.getData();

Back to the top