diff --git a/services/print/java/com/android/server/print/UserState.java b/services/print/java/com/android/server/print/UserState.java index 71821613c889f..7a3ebf422a8a1 100644 --- a/services/print/java/com/android/server/print/UserState.java +++ b/services/print/java/com/android/server/print/UserState.java @@ -555,7 +555,11 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks, new PrintJobStateChangeListenerRecord(listener, appId) { @Override public void onBinderDied() { - mPrintJobStateChangeListenerRecords.remove(this); + synchronized (mLock) { + if (mPrintJobStateChangeListenerRecords != null) { + mPrintJobStateChangeListenerRecords.remove(this); + } + } } }); } @@ -639,7 +643,11 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks, new ListenerRecord(listener) { @Override public void onBinderDied() { - mPrintServiceRecommendationsChangeListenerRecords.remove(this); + synchronized (mLock) { + if (mPrintServiceRecommendationsChangeListenerRecords != null) { + mPrintServiceRecommendationsChangeListenerRecords.remove(this); + } + } } }); }