diff options
| -rw-r--r-- | packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java index 743df999fdab..8a3d83986504 100644 --- a/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java +++ b/packages/PrintSpooler/src/com/android/printspooler/ui/PrintActivity.java @@ -337,7 +337,7 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat @Override public void onStart() { super.onStart(); - if (mState != STATE_INITIALIZING && mCurrentPrinter != null) { + if (mPrinterRegistry != null && mCurrentPrinter != null) { mPrinterRegistry.setTrackedPrinter(mCurrentPrinter.getId()); } MetricsLogger.count(this, "print_preview", 1); @@ -384,7 +384,10 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat @Override protected void onStop() { mPrinterAvailabilityDetector.cancel(); - mPrinterRegistry.setTrackedPrinter(null); + + if (mPrinterRegistry != null) { + mPrinterRegistry.setTrackedPrinter(null); + } super.onStop(); } @@ -1912,9 +1915,12 @@ public class PrintActivity extends Activity implements RemotePrintDocument.Updat } private void doFinish() { + if (mPrinterRegistry != null) { + mPrinterRegistry.setTrackedPrinter(null); + } + if (mState != STATE_INITIALIZING) { mProgressMessageController.cancel(); - mPrinterRegistry.setTrackedPrinter(null); mSpoolerProvider.destroy(); mPrintedDocument.finish(); mPrintedDocument.destroy(); |