Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEugene Tarassov2013-01-23 18:52:13 -0500
committerEugene Tarassov2013-01-23 18:52:13 -0500
commit8220b2707482f39aea0fc4751b7a59ea79521b96 (patch)
treea66a67328714e2e86ac6429a4aeb22aebaba5e46 /plugins
parentae75d404146564da22105c23ed9cdff267a227ab (diff)
downloadorg.eclipse.tcf-8220b2707482f39aea0fc4751b7a59ea79521b96.tar.gz
org.eclipse.tcf-8220b2707482f39aea0fc4751b7a59ea79521b96.tar.xz
org.eclipse.tcf-8220b2707482f39aea0fc4751b7a59ea79521b96.zip
TCF Debugger: fixed: volatile attributes of CDT breakpoint marker generate unwanted debugger traffic
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.tcf.cdt.ui/src/org/eclipse/tcf/internal/cdt/ui/TCFBreakpointStatusListener.java4
-rw-r--r--plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java7
2 files changed, 7 insertions, 4 deletions
diff --git a/plugins/org.eclipse.tcf.cdt.ui/src/org/eclipse/tcf/internal/cdt/ui/TCFBreakpointStatusListener.java b/plugins/org.eclipse.tcf.cdt.ui/src/org/eclipse/tcf/internal/cdt/ui/TCFBreakpointStatusListener.java
index e0f7bd816..ad519f97d 100644
--- a/plugins/org.eclipse.tcf.cdt.ui/src/org/eclipse/tcf/internal/cdt/ui/TCFBreakpointStatusListener.java
+++ b/plugins/org.eclipse.tcf.cdt.ui/src/org/eclipse/tcf/internal/cdt/ui/TCFBreakpointStatusListener.java
@@ -12,7 +12,6 @@ package org.eclipse.tcf.internal.cdt.ui;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -39,7 +38,6 @@ import org.eclipse.core.runtime.jobs.ISchedulingRule;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.debug.core.DebugPlugin;
import org.eclipse.debug.core.IBreakpointListener;
-import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.tcf.internal.debug.model.ITCFBreakpointListener;
import org.eclipse.tcf.internal.debug.model.TCFBreakpoint;
@@ -250,7 +248,7 @@ class TCFBreakpointStatusListener {
private void createOrUpdateBreakpoint(final String id) {
Map<String,Object> properties = status.getProperties(id);
if (properties == null) return;
- if (bp_model.isLocal(properties)) return;
+ if (TCFBreakpointsModel.isLocal(properties)) return;
final boolean create = foreign.add(id);
final Map<String, Object> markerAttrs = bp_model.toMarkerAttributes(properties);
markerAttrs.put(IBreakpoint.PERSISTED, Boolean.FALSE);
diff --git a/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java b/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java
index 5f88520bd..6cdf44fff 100644
--- a/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java
+++ b/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java
@@ -193,6 +193,7 @@ public class TCFBreakpointsModel {
if (marker.getAttribute(ATTR_REQESTED_LINE, -1) >= 0) keys.remove(ATTR_LINE);
if (marker.getAttribute(ATTR_REQESTED_CHAR, -1) >= 0) keys.remove(ATTR_CHAR);
keys.remove(ATTR_INSTALL_COUNT);
+ keys.remove(ATTR_TCF_STAMP);
keys.remove(ATTR_MESSAGE);
keys.remove(ATTR_STATUS);
return keys;
@@ -610,7 +611,11 @@ public class TCFBreakpointsModel {
client_data.put(CDATA_CLIENT_ID, Activator.getClientID());
if (type != null) client_data.put(CDATA_TYPE, type);
if (file != null) client_data.put(CDATA_FILE, file);
- client_data.put(CDATA_MARKER, p);
+ Map<String,Object> x = new HashMap<String,Object>(p);
+ x.remove(ATTR_INSTALL_COUNT);
+ x.remove(ATTR_TCF_STAMP);
+ x.remove(ATTR_STATUS);
+ client_data.put(CDATA_MARKER, x);
}
for (Map.Entry<String,Object> e : p.entrySet()) {
String key = e.getKey();

Back to the top