diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/EventThread.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/EventThread.java index d00717da222..10e88e81b84 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/EventThread.java +++ b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/EventThread.java @@ -6,6 +6,7 @@ package org.eclipse.cdt.debug.mi.core; import org.eclipse.cdt.debug.mi.core.event.MIEvent; +import org.eclipse.cdt.debug.mi.core.event.MIStoppedEvent; /** * Event Thread blocks on the event Queue, wakes up @@ -31,6 +32,9 @@ public class EventThread extends Thread { } catch (InterruptedException e) { //e.printStackTrace(); } + if (event instanceof MIStoppedEvent) { + processSuspendedEvent((MIStoppedEvent)event); + } try { if (event != null) { session.notifyObservers(event); @@ -40,4 +44,11 @@ public class EventThread extends Thread { } } } + + void processSuspendedEvent(MIStoppedEvent stopped) { + // give a chance also to the underlying inferior. + session.getMIInferior().update(); + + } + }