X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.interop.update%2Fsrc%2Forg%2Fsimantics%2Finterop%2Fupdate%2Fmodel%2FUpdateOperations.java;fp=org.simantics.interop.update%2Fsrc%2Forg%2Fsimantics%2Finterop%2Fupdate%2Fmodel%2FUpdateOperations.java;h=0c1882c3fbcc38b6c7eadaeb5b88fa0f65ff146b;hb=e6b171dde507f78b977b08cb481a24221ef2c56f;hp=0814ecf7fe524b0077c4cec85774af7d9c418144;hpb=3359124df6020037e7065723397fb00839e5a14b;p=simantics%2Finterop.git diff --git a/org.simantics.interop.update/src/org/simantics/interop/update/model/UpdateOperations.java b/org.simantics.interop.update/src/org/simantics/interop/update/model/UpdateOperations.java index 0814ecf..0c1882c 100644 --- a/org.simantics.interop.update/src/org/simantics/interop/update/model/UpdateOperations.java +++ b/org.simantics.interop.update/src/org/simantics/interop/update/model/UpdateOperations.java @@ -79,16 +79,16 @@ public abstract class UpdateOperations { return; } stack.push(op); - if (op.requiresParentOps()) { - for (UpdateOp pop : op.getParentOps()) - if (!pop.applied()) - _apply(g, stack, pop); - } - if (op.requiresSubOps()) { - for (UpdateOp sop : op.getSubOps()) - if (!sop.applied()) - _apply(g, stack, sop); - } + for (UpdateOp pop : op.getParentOps()) + if (op.requiresOp(pop)) { + if (!pop.applied()) + _apply(g, stack, pop); + } + for (UpdateOp sop : op.getSubOps()) + if (op.requiresOp(sop)) { + if (!sop.applied()) + _apply(g, stack, sop); + } stack.pop(); op.apply(g); }