diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBRunControl_7_0.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBRunControl_7_0.java index f5f8f1b8055..10ff2c2ee25 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBRunControl_7_0.java +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBRunControl_7_0.java @@ -207,7 +207,7 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro */ @Override public void canResume(IExecutionDMContext context, DataRequestMonitor rm) { - if (fRunControlOperationsEnabled == false) { + if (!fRunControlOperationsEnabled) { rm.setData(false); rm.done(); return; @@ -220,7 +220,7 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro */ @Override public void canSuspend(IExecutionDMContext context, DataRequestMonitor rm) { - if (fRunControlOperationsEnabled == false) { + if (!fRunControlOperationsEnabled) { rm.setData(false); rm.done(); return; @@ -233,7 +233,7 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro */ @Override public void canStep(final IExecutionDMContext context, StepType stepType, final DataRequestMonitor rm) { - if (fRunControlOperationsEnabled == false) { + if (!fRunControlOperationsEnabled) { rm.setData(false); rm.done(); return; @@ -273,6 +273,12 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro /** @since 2.0 */ @Override public void canReverseResume(IExecutionDMContext context, DataRequestMonitor rm) { + if (!fRunControlOperationsEnabled) { + rm.setData(false); + rm.done(); + return; + } + rm.setData(fReverseModeEnabled && doCanResume(context)); rm.done(); } @@ -280,7 +286,13 @@ public class GDBRunControl_7_0 extends MIRunControl implements IReverseRunContro /** @since 2.0 */ @Override public void canReverseStep(final IExecutionDMContext context, StepType stepType, final DataRequestMonitor rm) { - if (context instanceof IContainerDMContext) { + if (!fRunControlOperationsEnabled) { + rm.setData(false); + rm.done(); + return; + } + + if (context instanceof IContainerDMContext) { rm.setData(false); rm.done(); return;