[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cdt-patch] MemoryBlock check for refresh()
|
2002-10-30 Alain Magloire
* src/.../core/cdi/MemoryBlock.java (setDirty): When need a
refresh setDirty() to true.
(isDirty): Return the flag value.
* src/.../core/cdi/MemoryManager.java (update): Check if
the MemoryBlock isDirty().
Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/ChangeLog,v
retrieving revision 1.24
diff -u -r1.24 ChangeLog
--- ChangeLog 30 Oct 2002 20:52:05 -0000 1.24
+++ ChangeLog 31 Oct 2002 00:14:26 -0000
@@ -1,5 +1,14 @@
2002-10-30 Alain Magloire
+ * src/.../core/cdi/MemoryBlock.java (setDirty): When need a
+ refresh setDirty() to true.
+ (isDirty): Return the flag value.
+
+ * src/.../core/cdi/MemoryManager.java (update): Check if
+ the MemoryBlock isDirty().
+
+2002-10-30 Alain Magloire
+
* src/.../core/cdi/MemoryBlock.java (setValue): reuse refresh()
to update the memory and fire any MemoryChangedEvents.
Index: src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java,v
retrieving revision 1.22
diff -u -r1.22 EventManager.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java 26 Oct 2002 20:23:49 -0000 1.22
+++ src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java 31 Oct 2002 00:14:28 -0000
@@ -78,8 +78,10 @@
MIMemoryChangedEvent miMem = (MIMemoryChangedEvent)miEvent;
Long[] addresses = miMem.getAddresses();
for (int i = 0; i < blocks.length; i++) {
- if (blocks[i].contains(addresses) && ! blocks[i].isFrozen()) {
+ if (blocks[i].contains(addresses) &&
+ (! blocks[i].isFrozen() || blocks[i].isDirty())) {
cdiList.add(new MemoryChangedEvent(session, blocks[i], miMem));
+ blocks[i].setDirty(false);
}
}
}
Index: src/org/eclipse/cdt/debug/mi/core/cdi/MemoryBlock.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/MemoryBlock.java,v
retrieving revision 1.7
diff -u -r1.7 MemoryBlock.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/MemoryBlock.java 30 Oct 2002 20:51:53 -0000 1.7
+++ src/org/eclipse/cdt/debug/mi/core/cdi/MemoryBlock.java 31 Oct 2002 00:14:29 -0000
@@ -21,6 +21,7 @@
MIDataReadMemoryInfo mem;
String expression;
boolean frozen;
+ boolean dirty;
public MemoryBlock(CTarget target, String exp, MIDataReadMemoryInfo info) {
super(target);
@@ -75,6 +76,20 @@
}
/**
+ * Use by the EventManager to check fire events when doing refresh().
+ */
+ public boolean isDirty() {
+ return dirty;
+ }
+
+ /**
+ * Use by the EventManager to check fire events when doing refresh().
+ */
+ public void setDirty(boolean d) {
+ dirty = d;
+ }
+
+ /**
* @see org.eclipse.cdt.debug.core.cdi.model.ICDIMemoryBlock#getBytes()
*/
public byte[] getBytes() throws CDIException {
@@ -99,6 +114,7 @@
*/
public void refresh() throws CDIException {
MemoryManager mgr = (MemoryManager)getCTarget().getCSession().getMemoryManager();
+ setDirty(true);
mgr.update(this, null);
}