diff options
author | Svetoslav <svetoslavganov@google.com> | 2014-07-01 16:30:33 -0700 |
---|---|---|
committer | Svetoslav <svetoslavganov@google.com> | 2014-07-01 16:30:43 -0700 |
commit | 564560e46d8a075fe508514f3dbd94f29963e6eb (patch) | |
tree | ce611c66bde0ec0a7f1ba16621eaad6ec6c751b6 /services/print/java/com/android | |
parent | b6efe90b387e8b7bb5bf88257619e043f66e7f11 (diff) | |
download | frameworks_base-564560e46d8a075fe508514f3dbd94f29963e6eb.zip frameworks_base-564560e46d8a075fe508514f3dbd94f29963e6eb.tar.gz frameworks_base-564560e46d8a075fe508514f3dbd94f29963e6eb.tar.bz2 |
Installed and enabled print services not working after boot.
Due to system server changes the print manager services did not
receive the expected callbacks in correct order. This lead to
installed and enabled print services not working until toggled
from settings.
bug:16018217
Change-Id: I8d53d8d8f06507ee135cebe5201f00910a4cb364
Diffstat (limited to 'services/print/java/com/android')
-rw-r--r-- | services/print/java/com/android/server/print/PrintManagerService.java | 1 | ||||
-rw-r--r-- | services/print/java/com/android/server/print/UserState.java | 6 |
2 files changed, 4 insertions, 3 deletions
diff --git a/services/print/java/com/android/server/print/PrintManagerService.java b/services/print/java/com/android/server/print/PrintManagerService.java index 39f228f..0575a5e 100644 --- a/services/print/java/com/android/server/print/PrintManagerService.java +++ b/services/print/java/com/android/server/print/PrintManagerService.java @@ -119,7 +119,6 @@ public final class PrintManagerService extends SystemService { final UserState userState; synchronized (mLock) { userState = getCurrentUserStateLocked(); - userState.updateIfNeededLocked(); } // This is the first time we switch to this user after boot, so // now is the time to remove obsolete print jobs since they diff --git a/services/print/java/com/android/server/print/UserState.java b/services/print/java/com/android/server/print/UserState.java index f647814..33edb11 100644 --- a/services/print/java/com/android/server/print/UserState.java +++ b/services/print/java/com/android/server/print/UserState.java @@ -126,7 +126,8 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks { mSpooler = new RemotePrintSpooler(context, userId, this); mHandler = new UserStateHandler(context.getMainLooper()); synchronized (mLock) { - enableSystemPrintServicesOnFirstBootLocked(); + enableSystemPrintServicesLocked(); + onConfigurationChangedLocked(); } } @@ -727,7 +728,7 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks { } } - private void enableSystemPrintServicesOnFirstBootLocked() { + private void enableSystemPrintServicesLocked() { // Load enabled and installed services. readEnabledPrintServicesLocked(); readInstalledPrintServicesLocked(); @@ -1159,6 +1160,7 @@ final class UserState implements PrintSpoolerCallbacks, PrintServiceCallbacks { Log.w(LOG_TAG, "Not destroying - session destroyed"); return; } + mIsDestroyed = true; // Make sure printer tracking is stopped. final int printerCount = mStateTrackedPrinters.size(); for (int i = 0; i < printerCount; i++) { |