diff --git a/de.prob.core/src/de/prob/core/Animator.java b/de.prob.core/src/de/prob/core/Animator.java
index e78a5611b36a4821ca7e01fd01fdc0075bfba21c..b147a8df738c304b71ccb83b5ed0a944bffa8a74 100644
--- a/de.prob.core/src/de/prob/core/Animator.java
+++ b/de.prob.core/src/de/prob/core/Animator.java
@@ -39,6 +39,7 @@ import de.prob.exceptions.ProBException;
 public final class Animator {
 
 	private static Animator animator = new Animator();
+	private static Animator auxanimator = null;
 
 	/**
 	 * 
@@ -66,6 +67,14 @@ public final class Animator {
 		return animator;
 	}
 
+	public final static Animator getAuxAnimator() {
+		if (auxanimator == null) {
+			auxanimator = new Animator();
+		}
+		return auxanimator;
+	}
+
+
 	/**
 	 * Terminates the current animation (forcefully!) and restarts the ProB
 	 * core. After calling this method, all information from the current
diff --git a/de.prob.eventb.disprover.core/src/de/prob/eventb/disprover/core/DisproverReasoner.java b/de.prob.eventb.disprover.core/src/de/prob/eventb/disprover/core/DisproverReasoner.java
index e7e51182a2ad5e1b4a9f9e5fa15f63b38ae79a82..6eaa13155176cc519eb31b21f24953b437741af0 100644
--- a/de.prob.eventb.disprover.core/src/de/prob/eventb/disprover/core/DisproverReasoner.java
+++ b/de.prob.eventb.disprover.core/src/de/prob/eventb/disprover/core/DisproverReasoner.java
@@ -121,7 +121,7 @@ public class DisproverReasoner implements IReasoner {
 		IEventBProject evbProject = (IEventBProject) project
 				.getAdapter(IEventBProject.class);
 		ICounterExample counterExample = DisproverCommand.disprove(
-				Animator.getAnimator(), evbProject, allHypotheses,
+				Animator.getAuxAnimator(), evbProject, allHypotheses,
 				selectedHypotheses, goal, timeoutFactor, context, pm);
 		// Logger.info("Disprover: Result: " + counterExample.toString());