diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/.settings/.api_filters b/dsf-gdb/org.eclipse.cdt.dsf.gdb/.settings/.api_filters
new file mode 100644
index 00000000000..e6b5c7de505
--- /dev/null
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/.settings/.api_filters
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF b/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF
index 4e896ba4dc2..d7c953ad535 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-SymbolicName: org.eclipse.cdt.dsf.gdb;singleton:=true
-Bundle-Version: 4.1.0.qualifier
+Bundle-Version: 4.1.1.qualifier
Bundle-Activator: org.eclipse.cdt.dsf.gdb.internal.GdbPlugin
Bundle-Localization: plugin
Require-Bundle: org.eclipse.core.runtime,
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/pom.xml b/dsf-gdb/org.eclipse.cdt.dsf.gdb/pom.xml
index de9fb7ee0d0..44ff0c8ce1c 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/pom.xml
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/pom.xml
@@ -11,7 +11,7 @@
../../pom.xml
- 4.1.0-SNAPSHOT
+ 4.1.1-SNAPSHOT
org.eclipse.cdt.dsf.gdb
eclipse-plugin
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/MIBreakpointsManager.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/MIBreakpointsManager.java
index d9f92ccf869..c7b2a6565ce 100644
--- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/MIBreakpointsManager.java
+++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/MIBreakpointsManager.java
@@ -54,6 +54,7 @@ import org.eclipse.cdt.dsf.debug.service.IDsfBreakpointExtension;
import org.eclipse.cdt.dsf.debug.service.IRunControl;
import org.eclipse.cdt.dsf.debug.service.IRunControl.IContainerDMContext;
import org.eclipse.cdt.dsf.debug.service.IRunControl.IExecutionDMContext;
+import org.eclipse.cdt.dsf.debug.service.IRunControl.ISuspendedDMEvent;
import org.eclipse.cdt.dsf.debug.service.ISourceLookup;
import org.eclipse.cdt.dsf.debug.service.ISourceLookup.ISourceLookupDMContext;
import org.eclipse.cdt.dsf.debug.service.command.ICommandControl;
@@ -65,6 +66,7 @@ import org.eclipse.cdt.dsf.mi.service.MIBreakpoints.BreakpointUpdatedEvent;
import org.eclipse.cdt.dsf.mi.service.MIBreakpoints.MIBreakpointDMContext;
import org.eclipse.cdt.dsf.mi.service.MIRunControl.SuspendedEvent;
import org.eclipse.cdt.dsf.mi.service.breakpoint.actions.BreakpointActionAdapter;
+import org.eclipse.cdt.dsf.mi.service.command.events.IMIDMEvent;
import org.eclipse.cdt.dsf.mi.service.command.events.MIBreakpointHitEvent;
import org.eclipse.cdt.dsf.mi.service.command.events.MIWatchpointScopeEvent;
import org.eclipse.cdt.dsf.mi.service.command.events.MIWatchpointTriggerEvent;
@@ -1340,21 +1342,34 @@ public class MIBreakpointsManager extends AbstractDsfService implements IBreakpo
// Breakpoint actions
//-------------------------------------------------------------------------
+ /** @since 4.1 */
@DsfServiceEventHandler
+ public void eventDispatched(ISuspendedDMEvent e) {
+ assert e instanceof IMIDMEvent;
+ if (e instanceof IMIDMEvent) {
+ Object miEvent = ((IMIDMEvent)e).getMIEvent();
+
+ if (miEvent instanceof MIBreakpointHitEvent) {
+ // This covers catchpoints, too
+ MIBreakpointHitEvent evt = (MIBreakpointHitEvent)miEvent;
+ performBreakpointAction(evt.getDMContext(), evt.getNumber());
+ return;
+ }
+
+ if (miEvent instanceof MIWatchpointTriggerEvent) {
+ MIWatchpointTriggerEvent evt = (MIWatchpointTriggerEvent)miEvent;
+ performBreakpointAction(evt.getDMContext(), evt.getNumber());
+ return;
+ }
+ }
+ }
+
+ /**
+ * @deprecated Replaced by the generic {@link #eventDispatched(ISuspendedDMEvent)}
+ */
+ @Deprecated
+ @DsfServiceEventHandler
public void eventDispatched(SuspendedEvent e) {
-
- if (e.getMIEvent() instanceof MIBreakpointHitEvent) {
- // This covers catchpoints, too
- MIBreakpointHitEvent evt = (MIBreakpointHitEvent) e.getMIEvent();
- performBreakpointAction(evt.getDMContext(), evt.getNumber());
- return;
- }
-
- if (e.getMIEvent() instanceof MIWatchpointTriggerEvent) {
- MIWatchpointTriggerEvent evt = (MIWatchpointTriggerEvent) e.getMIEvent();
- performBreakpointAction(evt.getDMContext(), evt.getNumber());
- return;
- }
}
private void performBreakpointAction(final IDMContext context, int number) {