diff --git a/plugins/org.eclipse.dd.mi/src/org/eclipse/dd/mi/service/MIRegisters.java b/plugins/org.eclipse.dd.mi/src/org/eclipse/dd/mi/service/MIRegisters.java index 002231d4410..fa471bb2377 100644 --- a/plugins/org.eclipse.dd.mi/src/org/eclipse/dd/mi/service/MIRegisters.java +++ b/plugins/org.eclipse.dd.mi/src/org/eclipse/dd/mi/service/MIRegisters.java @@ -525,7 +525,7 @@ public class MIRegisters extends AbstractDsfService implements IRegisters { final FormattedValueDMContext valueDmc = exprService.getFormattedValueContext(exprCtxt, formatId); exprService.getModelData( valueDmc, - new DataRequestMonitor(getExecutor(), null) { + new DataRequestMonitor(getExecutor(), rm) { @Override protected void handleSuccess() { if(! regValue.equals(getData().getFormattedValue()) || ! valueDmc.getFormatID().equals(formatId)){ @@ -533,10 +533,13 @@ public class MIRegisters extends AbstractDsfService implements IRegisters { @Override protected void handleSuccess() { generateRegisterChangedEvent(regDmc); + rm.done(); } }); }//if - rm.done(); + else { + rm.done(); + } }//handleOK } );