Clear references to animation runner when the animation ends.

Bug: 79322746
Test: Swipe up, ensure that there are no references from the system to the
      launcher animation runner

Change-Id: Ib0fd59c20ab9f9b24dfad732519d33c4a8a148e3
(cherry picked from commit 5c91e8f16dfc42365940fe2cdd343ed9d48b7b36)
diff --git a/services/core/java/com/android/server/wm/RecentsAnimationController.java b/services/core/java/com/android/server/wm/RecentsAnimationController.java
index 85e4ac7..553b4fe 100644
--- a/services/core/java/com/android/server/wm/RecentsAnimationController.java
+++ b/services/core/java/com/android/server/wm/RecentsAnimationController.java
@@ -79,7 +79,7 @@
     public @interface ReorderMode {}
 
     private final WindowManagerService mService;
-    private final IRecentsAnimationRunner mRunner;
+    private IRecentsAnimationRunner mRunner;
     private final RecentsAnimationCallbacks mCallbacks;
     private final ArrayList<TaskAnimationAdapter> mPendingAnimations = new ArrayList<>();
     private final int mDisplayId;
@@ -426,7 +426,10 @@
             removeAnimation(taskAdapter);
         }
 
+        // Clear references to the runner
         unlinkToDeathOfRunner();
+        mRunner = null;
+
         // Clear associated input consumers
         mService.mInputMonitor.updateInputWindowsLw(true /*force*/);
         mService.destroyInputConsumer(INPUT_CONSUMER_RECENTS_ANIMATION);