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

Commit bb53dad6 authored by Adam Powell's avatar Adam Powell
Browse files

Remove overzealous mutate() sanity check in LayerDrawable

Child drawables of a LayerDrawable should be able to mutate() as a
no-op even if they !canConstantState.

Bug 7622311

Change-Id: I32c00961310f23aaf9ad868c419cbefb9d27a1d2
parent ba4ac518
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -575,10 +575,6 @@ public class LayerDrawable extends Drawable implements Drawable.Callback {
    @Override
    public Drawable mutate() {
        if (!mMutated && super.mutate() == this) {
            if (!mLayerState.canConstantState()) {
                throw new IllegalStateException("One or more children of this LayerDrawable does " +
                        "not have constant state; this drawable cannot be mutated.");
            }
            mLayerState = new LayerState(mLayerState, this, null);
            final ChildDrawable[] array = mLayerState.mChildren;
            final int N = mLayerState.mNum;