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

Commit e7240a52 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Stop observing death of PrintManager listener when it is removed"

parents f8fdb06c 05b6857f
Loading
Loading
Loading
Loading
+11 −0
Original line number Original line Diff line number Diff line
@@ -586,6 +586,7 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks,
                PrintJobStateChangeListenerRecord record =
                PrintJobStateChangeListenerRecord record =
                        mPrintJobStateChangeListenerRecords.get(i);
                        mPrintJobStateChangeListenerRecords.get(i);
                if (record.listener.asBinder().equals(listener.asBinder())) {
                if (record.listener.asBinder().equals(listener.asBinder())) {
                    record.destroy();
                    mPrintJobStateChangeListenerRecords.remove(i);
                    mPrintJobStateChangeListenerRecords.remove(i);
                    break;
                    break;
                }
                }
@@ -628,6 +629,7 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks,
                ListenerRecord<IPrintServicesChangeListener> record =
                ListenerRecord<IPrintServicesChangeListener> record =
                        mPrintServicesChangeListenerRecords.get(i);
                        mPrintServicesChangeListenerRecords.get(i);
                if (record.listener.asBinder().equals(listener.asBinder())) {
                if (record.listener.asBinder().equals(listener.asBinder())) {
                    record.destroy();
                    mPrintServicesChangeListenerRecords.remove(i);
                    mPrintServicesChangeListenerRecords.remove(i);
                    break;
                    break;
                }
                }
@@ -675,6 +677,7 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks,
                ListenerRecord<IRecommendationsChangeListener> record =
                ListenerRecord<IRecommendationsChangeListener> record =
                        mPrintServiceRecommendationsChangeListenerRecords.get(i);
                        mPrintServiceRecommendationsChangeListenerRecords.get(i);
                if (record.listener.asBinder().equals(listener.asBinder())) {
                if (record.listener.asBinder().equals(listener.asBinder())) {
                    record.destroy();
                    mPrintServiceRecommendationsChangeListenerRecords.remove(i);
                    mPrintServiceRecommendationsChangeListenerRecords.remove(i);
                    break;
                    break;
                }
                }
@@ -1222,6 +1225,10 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks,
            listener.asBinder().linkToDeath(this, 0);
            listener.asBinder().linkToDeath(this, 0);
        }
        }


        public void destroy() {
            listener.asBinder().unlinkToDeath(this, 0);
        }

        @Override
        @Override
        public void binderDied() {
        public void binderDied() {
            listener.asBinder().unlinkToDeath(this, 0);
            listener.asBinder().unlinkToDeath(this, 0);
@@ -1239,6 +1246,10 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks,
            listener.asBinder().linkToDeath(this, 0);
            listener.asBinder().linkToDeath(this, 0);
        }
        }


        public void destroy() {
            listener.asBinder().unlinkToDeath(this, 0);
        }

        @Override
        @Override
        public void binderDied() {
        public void binderDied() {
            listener.asBinder().unlinkToDeath(this, 0);
            listener.asBinder().unlinkToDeath(this, 0);