Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0c6d83cc authored by Chet Haase's avatar Chet Haase
Browse files

Protect code in ViewPropertyAnimator from potential null deref

The monkeys threw a NullPointerException in ViewPropertyAnimator, from
calling into a data structure that should have been not null. Not sure what
weird onkey-driven timing issue caused the problem, but protecting the null
deref is easy and safe.

Issue 5626496

Change-Id: I902b510db60a8a85f776f48582ae0326522a9400
parent 45c62be2
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -837,6 +837,11 @@ public class ViewPropertyAnimator {
         */
        @Override
        public void onAnimationUpdate(ValueAnimator animation) {
            PropertyBundle propertyBundle = mAnimatorMap.get(animation);
            if (propertyBundle == null) {
                // Shouldn't happen, but just to play it safe
                return;
            }
            // alpha requires slightly different treatment than the other (transform) properties.
            // The logic in setAlpha() is not simply setting mAlpha, plus the invalidation
            // logic is dependent on how the view handles an internal call to onSetAlpha().
@@ -845,7 +850,6 @@ public class ViewPropertyAnimator {
            boolean alphaHandled = false;
            mView.invalidateParentCaches();
            float fraction = animation.getAnimatedFraction();
            PropertyBundle propertyBundle = mAnimatorMap.get(animation);
            int propertyMask = propertyBundle.mPropertyMask;
            if ((propertyMask & TRANSFORM_MASK) != 0) {
                mView.invalidate(false);