From 93d76c18d7b1444d206bb6311120a3a34d783275 Mon Sep 17 00:00:00 2001 From: Pawel Piech Date: Tue, 4 Oct 2011 22:41:02 -0700 Subject: Bug 359783 - (comment #3: Fixed handling of suspended event to match previous behavior) --- .../org/eclipse/cdt/dsf/debug/ui/viewmodel/SteppingController.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'dsf') 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 d8d17968ea9..3ba3357d4ea 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> itr = fTimedOutFlags.entrySet().iterator(); itr.hasNext();) { Map.Entry 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); } -- cgit v1.2.3