1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

[205288] Fixes to canceled update mis-handling.

This commit is contained in:
Pawel Piech 2007-10-03 14:34:26 +00:00
parent 441f6bc65b
commit 2bbc801bdf
3 changed files with 7 additions and 4 deletions

View file

@ -60,7 +60,10 @@ public abstract class DsfCommandRunnable extends DsfRunnable {
}
public final void run() {
if (fRequest.isCanceled()) return;
if (fRequest.isCanceled()) {
fRequest.done();
return;
}
if (getContext() == null) {
fRequest.setStatus(makeError("Selected object does not support run control.", null)); //$NON-NLS-1$
} else if (getRunControl() == null) {

View file

@ -282,7 +282,7 @@ public class RegisterLayoutNode extends AbstractExpressionLayoutNode<IRegisterDM
protected void updateLabelInSessionThread(ILabelUpdate[] updates) {
for (final ILabelUpdate update : updates) {
final IRegisterDMContext dmc = findDmcInPath(update.getElementPath(), IRegisters.IRegisterDMContext.class);
if (!checkDmc(dmc, update) || !checkService(null, dmc.getServiceFilter(), update)) return;
if (!checkDmc(dmc, update) || !checkService(null, dmc.getServiceFilter(), update)) continue;
VMCacheManager.getVMCacheManager().getCache(update.getPresentationContext())
.getModelData((IDMService)getServicesTracker().getService(null, dmc.getServiceFilter()),

View file

@ -220,7 +220,7 @@ abstract public class AbstractDMVMLayoutNode<V extends IDMData> extends Abstract
protected void updateHasElementsInSessionThread(IHasChildrenUpdate[] updates) {
for (final IHasChildrenUpdate update : updates) {
if (!checkUpdate(update)) return;
if (!checkUpdate(update)) continue;
updateElementsInSessionThread(
new ElementsUpdate(
@ -318,7 +318,7 @@ abstract public class AbstractDMVMLayoutNode<V extends IDMData> extends Abstract
protected void updateLabelInSessionThread(ILabelUpdate[] updates) {
for (final ILabelUpdate update : updates) {
final IDMContext<V> dmc = findDmcInPath(update.getElementPath(), fDMCClassType);
if (!checkDmc(dmc, update) || !checkService(null, dmc.getServiceFilter(), update)) return;
if (!checkDmc(dmc, update) || !checkService(null, dmc.getServiceFilter(), update)) continue;
VMCacheManager.getVMCacheManager().getCache(update.getPresentationContext())
.getModelData((IDMService)getServicesTracker().getService(null, dmc.getServiceFilter()),