From f6cf88103c861f4312d7c33c56ae81eae289bc59 Mon Sep 17 00:00:00 2001 From: NathanSweet Date: Wed, 14 Dec 2016 22:43:09 +0100 Subject: [PATCH] Fixed recursion when calling clearTracks from a listener. #797 --- .../src/com/esotericsoftware/spine/AnimationState.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java index 27a811dbb..e98c3d68e 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java @@ -339,11 +339,12 @@ public class AnimationState { * It may be desired to use {@link AnimationState#setEmptyAnimations(float)} to mix the skeletons back to the setup pose, * rather than leaving them in their previous pose. */ public void clearTracks () { + boolean oldDrainDisabled = queue.drainDisabled; queue.drainDisabled = true; for (int i = 0, n = tracks.size; i < n; i++) clearTrack(i); tracks.clear(); - queue.drainDisabled = false; + queue.drainDisabled = oldDrainDisabled; queue.drain(); }