From fd386abe7cd5ab21b3adcaa1cfebebe9c3a7ff3d Mon Sep 17 00:00:00 2001 From: Alvaro Sanchez-Leon Date: Mon, 22 Feb 2016 09:55:14 -0500 Subject: [PATCH] Bug 284459 - Traditional Memory does not show Memory Change color after the memory changes When using DSF-GDB, the handleSuspend event is received only when a breakpoint is hit (i.e. not when it's actually suspended), However memory changed events are received when applicable during stepping, however the base code does not call the "archiveDeltas()" for this event. This change adds a call to archiveDeltas if the update mode is set to UPDATE_ALWAYS upon reception of memory change events. TO REPRODUCE this problem: The issue is that only one snap shot of history is applied with the first address / expression search, and this is used for all other comparissions, So you can search for a variable with bigger address value as a first memory search, and then step the code and see that variables close by with smaller address values will be updated but not colored. e.g. &Test -> address 0x110 &X -> address 0x100 if &Test is used as the first memory search, and then the code changes value of &X while stepping the code, the cell holding &X will not be colored as expected. Change-Id: Ibdc1fae6ed73ec2819fe9539d56f9ea9b6302535 --- .../org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java | 1 + 1 file changed, 1 insertion(+) diff --git a/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java b/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java index da868d29511..c4effe10ceb 100755 --- a/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java +++ b/memory/org.eclipse.cdt.debug.ui.memory.traditional/src/org/eclipse/cdt/debug/ui/memory/traditional/Rendering.java @@ -631,6 +631,7 @@ public class Rendering extends Composite implements IDebugEventSetListener { public void run() { + archiveDeltas(); refresh(); } });