X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.simulation.sequences%2Fsrc%2Forg%2Fsimantics%2Fsimulation%2Fsequences%2Faction%2FAbstractActionContext.java;h=1187230ad12f4780914797193e4045ac613810ef;hb=refs%2Fchanges%2F27%2F4627%2F2;hp=2adb9a045cf8a06fb525124b1a109b73f2163559;hpb=b70a2c0e4e35308d00e28e42d6fa28b0a46114e5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.simulation.sequences/src/org/simantics/simulation/sequences/action/AbstractActionContext.java b/bundles/org.simantics.simulation.sequences/src/org/simantics/simulation/sequences/action/AbstractActionContext.java index 2adb9a045..1187230ad 100644 --- a/bundles/org.simantics.simulation.sequences/src/org/simantics/simulation/sequences/action/AbstractActionContext.java +++ b/bundles/org.simantics.simulation.sequences/src/org/simantics/simulation/sequences/action/AbstractActionContext.java @@ -82,6 +82,9 @@ public abstract class AbstractActionContext implements ActionContext { public double handleStep(double currentTime) { synchronized (this) { + if (stopped) + return Double.POSITIVE_INFINITY; + this.currentTime = currentTime; { ArrayList> temp = scheduledNow; @@ -128,6 +131,9 @@ public abstract class AbstractActionContext implements ActionContext { synchronized (this) { List> stopFunctions = new ArrayList<>(scheduledWhenStopped); scheduledWhenStopped.clear(); + + scheduledNextStep.clear(); + scheduledAt.clear(); SCLContext context = SCLContext.getCurrent(); Object oldActionContext = context.put("sequenceAction", this);