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

Commit 01d28a5c authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix potential NPE when removing TaskOrganizerController" into rvc-dev...

Merge "Fix potential NPE when removing TaskOrganizerController" into rvc-dev am: b556cb72 am: da89ceb5 am: 017e3f9f

Change-Id: Iac25f4c1210b50f20285dfc032f22fd997f82f0c
parents aa837e3d 017e3f9f
Loading
Loading
Loading
Loading
+17 −4
Original line number Diff line number Diff line
@@ -78,9 +78,11 @@ class TaskOrganizerController extends ITaskOrganizerController.Stub {
            synchronized (mGlobalLock) {
                final TaskOrganizerState state = mTaskOrganizerStates.remove(
                        mTaskOrganizer.asBinder());
                if (state != null) {
                    state.dispose();
                }
            }
        }
    };

    private class TaskOrganizerState {
@@ -222,10 +224,21 @@ class TaskOrganizerController extends ITaskOrganizerController.Stub {

    @Override
    public void unregisterTaskOrganizer(ITaskOrganizer organizer) {
        enforceStackPermission("unregisterTaskOrganizer()");
        final long origId = Binder.clearCallingIdentity();
        try {
            synchronized (mGlobalLock) {
                final TaskOrganizerState state = mTaskOrganizerStates.remove(organizer.asBinder());
                if (state == null) {
                    return;
                }
                state.unlinkDeath();
                state.dispose();
            }
        } finally {
            Binder.restoreCallingIdentity(origId);
        }
    }

    ITaskOrganizer getTaskOrganizer(int windowingMode) {
        final IBinder organizer =