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

Commit 20ec11b4 authored by Wale Ogunwale's avatar Wale Ogunwale
Browse files

Fixed NPE during boot animation on fugu.

- Don't set a dim layer in the docked controller if we are not dimming.
- Check to make sure the docked divider window isn't null before trying
to use its layer for dimming.

Bug: 28339915
Change-Id: I33d49d26ffcaec63d135f82a6208e127ba0f0570
parent 6e685dc3
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -538,12 +538,15 @@ public class DockedStackDividerController implements DimLayerUser {
    }

    public boolean animate(long now) {
        if (mWindow == null) {
            return false;
        }
        if (mAnimatingForMinimizedDockedStack) {
            return animateForMinimizedDockedStack(now);
        } else if (mAnimatingForIme) {
            return animateForIme(now);
        } else {
            if (mDimLayer != null) {
            if (mDimLayer != null && mDimLayer.isDimming()) {
                mDimLayer.setLayer(mService.mLayersController.getResizeDimLayer());
            }
            return false;
+2 −1
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ import static android.app.ActivityManager.StackId.PINNED_STACK_ID;
import static android.view.WindowManager.LayoutParams.TYPE_DOCK_DIVIDER;
import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_LAYERS;
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
import static com.android.server.wm.WindowManagerService.LAYER_OFFSET_DIM;
import static com.android.server.wm.WindowManagerService.WINDOW_LAYER_MULTIPLIER;

/**
@@ -150,7 +151,7 @@ public class WindowLayersController {
     *         above all application surfaces.
     */
    int getResizeDimLayer() {
        return mDockDivider.mLayer - 1;
        return (mDockDivider != null) ? mDockDivider.mLayer - 1 : LAYER_OFFSET_DIM;
    }

    private void logDebugLayers(WindowList windows) {