diff options
author | Eugene Tarassov | 2013-04-05 16:26:43 +0000 |
---|---|---|
committer | Eugene Tarassov | 2013-04-05 16:26:43 +0000 |
commit | aefe31a28116c0c81dc44148654539c1ae4c60c0 (patch) | |
tree | 31aa0261dd148d09ff4d583b7c2a040565e683ff /plugins | |
parent | c8c9b5bb485ffbe446e429108ae374e5d1087d70 (diff) | |
download | org.eclipse.tcf-aefe31a28116c0c81dc44148654539c1ae4c60c0.tar.gz org.eclipse.tcf-aefe31a28116c0c81dc44148654539c1ae4c60c0.tar.xz org.eclipse.tcf-aefe31a28116c0c81dc44148654539c1ae4c60c0.zip |
TCF Debugger: fixed: the Variables view is not properly updated on MemoryMap.changed event
Diffstat (limited to 'plugins')
2 files changed, 14 insertions, 9 deletions
diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModel.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModel.java index 6e34a250a..a03269824 100644 --- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModel.java +++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModel.java @@ -352,7 +352,7 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab if (node instanceof TCFNodeExecContext) { ((TCFNodeExecContext)node).onContextChanged(ctx); } - onMemoryChanged(id, true, false); + onMemoryChanged(id, true, false, false); } } @@ -365,7 +365,7 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab if (node instanceof TCFNodeExecContext) { ((TCFNodeExecContext)node).onMemoryChanged(addr, size); } - onMemoryChanged(id, true, false); + onMemoryChanged(id, true, false, false); } }; @@ -396,7 +396,7 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab if (!id.equals(context) && node instanceof TCFNodeExecContext) { ((TCFNodeExecContext)node).onContainerSuspended(func_call); } - onMemoryChanged(id, false, true); + onMemoryChanged(id, false, true, false); } TCFNode node = getNode(context); if (node instanceof TCFNodeExecContext) { @@ -436,7 +436,7 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab if (node instanceof TCFNodeExecContext) { ((TCFNodeExecContext)node).onContextChanged(ctx); } - onMemoryChanged(id, true, false); + onMemoryChanged(id, true, false, false); if (active_actions.get(id) == null) { TCFNodePropertySource.refresh(node); } @@ -480,7 +480,7 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab updateAnnotations(null); TCFNodePropertySource.refresh(node); } - onMemoryChanged(id, false, true); + onMemoryChanged(id, false, true, false); } }; @@ -492,7 +492,7 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab TCFNodeExecContext exe = (TCFNodeExecContext)node; exe.onMemoryMapChanged(); } - onMemoryChanged(id, true, false); + onMemoryChanged(id, true, false, true); refreshSourceView(); } }; @@ -875,7 +875,7 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab Activator.log(bf.toString(), x); } - void onMemoryChanged(String id, boolean notify_references, boolean context_suspended) { + void onMemoryChanged(String id, boolean notify_references, boolean context_suspended, boolean mem_map) { if (channel == null) return; if (notify_references) { for (Object obj : context_map.values()) { @@ -884,7 +884,12 @@ public class TCFModel implements ITCFModel, IElementContentProvider, IElementLab if (id.equals(subctx.getProcessID()) && !id.equals(subctx.getID())) { TCFNode subnode = getNode(subctx.getID()); if (subnode instanceof TCFNodeExecContext) { - ((TCFNodeExecContext)subnode).onMemoryChanged(null, null); + if (mem_map) { + ((TCFNodeExecContext)subnode).onMemoryMapChanged(); + } + else { + ((TCFNodeExecContext)subnode).onMemoryChanged(null, null); + } } } } diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExecContext.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExecContext.java index 9f02da9f1..6a1b142d9 100644 --- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExecContext.java +++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExecContext.java @@ -1218,7 +1218,7 @@ public class TCFNodeExecContext extends TCFNode implements ISymbolOwner, ITCFExe @Override public void refresh(IWorkbenchPart part) { if (part instanceof IMemoryRenderingSite) { - model.onMemoryChanged(id, false, false); + model.onMemoryChanged(id, false, false, false); } else { last_children_list = null; |