Loading services/core/java/com/android/server/wm/DisplayAreaOrganizerController.java +11 −2 Original line number Diff line number Diff line Loading @@ -65,10 +65,19 @@ public class DisplayAreaOrganizerController extends IDisplayAreaOrganizerControl @Override public void binderDied() { synchronized (mGlobalLock) { IDisplayAreaOrganizer featureOrganizer = getOrganizerByFeature(mFeature); if (featureOrganizer != null) { IBinder organizerBinder = featureOrganizer.asBinder(); if (!organizerBinder.equals(mOrganizer.asBinder()) && organizerBinder.isBinderAlive()) { Slog.d(TAG, "Dead organizer replaced for feature=" + mFeature); return; } mOrganizersByFeatureIds.remove(mFeature).destroy(); } } } } private class DisplayAreaOrganizerState { private final IDisplayAreaOrganizer mOrganizer; Loading Loading @@ -172,7 +181,7 @@ public class DisplayAreaOrganizerController extends IDisplayAreaOrganizerControl organizer.asBinder(), uid); mOrganizersByFeatureIds.entrySet().removeIf((entry) -> { final boolean matches = entry.getValue().mOrganizer.asBinder() == organizer.asBinder(); .equals(organizer.asBinder()); if (matches) { entry.getValue().destroy(); } Loading Loading
services/core/java/com/android/server/wm/DisplayAreaOrganizerController.java +11 −2 Original line number Diff line number Diff line Loading @@ -65,10 +65,19 @@ public class DisplayAreaOrganizerController extends IDisplayAreaOrganizerControl @Override public void binderDied() { synchronized (mGlobalLock) { IDisplayAreaOrganizer featureOrganizer = getOrganizerByFeature(mFeature); if (featureOrganizer != null) { IBinder organizerBinder = featureOrganizer.asBinder(); if (!organizerBinder.equals(mOrganizer.asBinder()) && organizerBinder.isBinderAlive()) { Slog.d(TAG, "Dead organizer replaced for feature=" + mFeature); return; } mOrganizersByFeatureIds.remove(mFeature).destroy(); } } } } private class DisplayAreaOrganizerState { private final IDisplayAreaOrganizer mOrganizer; Loading Loading @@ -172,7 +181,7 @@ public class DisplayAreaOrganizerController extends IDisplayAreaOrganizerControl organizer.asBinder(), uid); mOrganizersByFeatureIds.entrySet().removeIf((entry) -> { final boolean matches = entry.getValue().mOrganizer.asBinder() == organizer.asBinder(); .equals(organizer.asBinder()); if (matches) { entry.getValue().destroy(); } Loading