Skip to main content
summaryrefslogtreecommitdiffstats
path: root/dsf
diff options
context:
space:
mode:
authorPawel Piech2011-10-05 01:41:02 -0400
committerPawel Piech2011-10-05 01:41:02 -0400
commit93d76c18d7b1444d206bb6311120a3a34d783275 (patch)
tree7351f1f495cead782c12ec4b604a74001c1b0070 /dsf
parentd643d3b26edd27abb0bd80c4c3621f00c95277b7 (diff)
downloadorg.eclipse.cdt-93d76c18d7b1444d206bb6311120a3a34d783275.tar.gz
org.eclipse.cdt-93d76c18d7b1444d206bb6311120a3a34d783275.tar.xz
org.eclipse.cdt-93d76c18d7b1444d206bb6311120a3a34d783275.zip
Bug 359783 - (comment #3: Fixed handling of suspended event to match
previous behavior)
Diffstat (limited to 'dsf')
-rw-r--r--dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/SteppingController.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/SteppingController.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/SteppingController.java
index d8d17968ea..3ba3357d4e 100644
--- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/SteppingController.java
+++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/SteppingController.java
@@ -609,6 +609,7 @@ public final class SteppingController {
@DsfServiceEventHandler
public void eventDispatched(final ISuspendedDMEvent e) {
// Take care of the stepping time out
+ boolean timedOut = false;
IExecutionDMContext dmc = e.getDMContext();
for (Iterator<Map.Entry<IExecutionDMContext, Boolean>> itr = fTimedOutFlags.entrySet().iterator(); itr.hasNext();) {
Map.Entry<IExecutionDMContext,Boolean> entry = itr.next();
@@ -617,6 +618,7 @@ public final class SteppingController {
if (entry.getValue()) {
// after step timeout do not process queued steps
fStepQueues.remove(dmc);
+ timedOut = true;
}
itr.remove();
}
@@ -634,7 +636,7 @@ public final class SteppingController {
if (e.getReason() != StateChangeReason.STEP) {
// after any non-step suspend reason do not process queued steps for given context
fStepQueues.remove(dmc);
- } else {
+ } else if (!timedOut){
// Check if there's a step pending, if so execute it
processStepQueue(dmc);
}

Back to the top