diff --git a/plugins/org.eclipse.dd.dsf.debug.ui/src/org/eclipse/dd/dsf/debug/ui/viewmodel/register/RegisterLayoutNode.java b/plugins/org.eclipse.dd.dsf.debug.ui/src/org/eclipse/dd/dsf/debug/ui/viewmodel/register/RegisterLayoutNode.java index edeceaf6d0e..75e500242cd 100644 --- a/plugins/org.eclipse.dd.dsf.debug.ui/src/org/eclipse/dd/dsf/debug/ui/viewmodel/register/RegisterLayoutNode.java +++ b/plugins/org.eclipse.dd.dsf.debug.ui/src/org/eclipse/dd/dsf/debug/ui/viewmodel/register/RegisterLayoutNode.java @@ -388,6 +388,11 @@ public class RegisterLayoutNode extends AbstractExpressionLayoutNode> rm = (DataRequestMonitor>)fRequestMonitor; - rm.setData(fElements); + if (fElements.size() == fLength) { + rm.setData(fElements); + } else { + rm.setStatus(new Status(IStatus.ERROR, DsfUIPlugin.PLUGIN_ID, IDsfService.REQUEST_FAILED, "Incomplete elements of updates", null)); //$NON-NLS-1$ + } super.done(); } + } diff --git a/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/update/VMCache.java b/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/update/VMCache.java index 82ebfe9e33e..d6b7d60dc9e 100644 --- a/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/update/VMCache.java +++ b/plugins/org.eclipse.dd.dsf.ui/src/org/eclipse/dd/dsf/ui/viewmodel/update/VMCache.java @@ -95,9 +95,12 @@ public abstract class VMCache @Override protected void handleCompleted() { - if(isCacheWriteEnabled()) - fHasChildren.put(update.getElement(), this.getData()); - update.setHasChilren(getData()); + if(getStatus().isOK()) + { + if(isCacheWriteEnabled()) + fHasChildren.put(update.getElement(), this.getData()); + update.setHasChilren(getData()); + } update.done(); } });