summaryrefslogtreecommitdiff
path: root/libs/hwui/AnimatorManager.h
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2014-09-03 16:46:05 -0700
committerJohn Reck <jreck@google.com>2014-09-03 17:37:59 -0700
commite2478d45ccbe5b6abb360ac9d44771b5f4a50bde (patch)
treef66b0980340a65a83bfd790bd63dc6b179221790 /libs/hwui/AnimatorManager.h
parent3215da25dd24c9570a90a6151b692e5fd38fbbc7 (diff)
Fix some wrong-thread issues around animator management
Bug: 17372309 Fixes a case where UI thread and RT thread both used the same method which wasn't safe for either of them. Adds additional assertions & logging in unusual circumstances to try and track down where the issue is occuring from. Change-Id: I93d31a6fd0c5927259b67bdf96a475944226eee6
Diffstat (limited to 'libs/hwui/AnimatorManager.h')
-rw-r--r--libs/hwui/AnimatorManager.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/hwui/AnimatorManager.h b/libs/hwui/AnimatorManager.h
index d5f56ed283bf..d03d4272e34d 100644
--- a/libs/hwui/AnimatorManager.h
+++ b/libs/hwui/AnimatorManager.h
@@ -50,8 +50,12 @@ public:
void animateNoDamage(TreeInfo& info);
- // Hard-ends all animators. Used for cleanup if the root is being destroyed.
- ANDROID_API void endAllAnimators();
+ // Hard-ends all animators. May only be called on the UI thread.
+ ANDROID_API void endAllStagingAnimators();
+
+ // Hard-ends all animators that have been pushed. Used for cleanup if
+ // the ActivityContext is being destroyed
+ void endAllActiveAnimators();
bool hasAnimators() { return mAnimators.size(); }