Revert "Avoid sending messages after HandlerThread.quit()."
Fabrice Di Meglio [Tue, 26 Mar 2013 03:12:57 +0000 (03:12 +0000)]
This reverts commit 97d507d95f9885ceb12f2ce2483361b5ed265f9f

Change-Id: I20374301561b3a1c79c2d986292af50049de2aac

src/com/android/providers/downloads/DownloadService.java

index c519faa..6c61193 100644 (file)
@@ -189,7 +189,6 @@ public class DownloadService extends Service {
         getContentResolver().unregisterContentObserver(mObserver);
         mScanner.shutdown();
         mUpdateThread.quit();
-        mUpdateThread = null;
         if (Constants.LOGVV) {
             Log.v(Constants.TAG, "Service onDestroy");
         }
@@ -200,10 +199,8 @@ public class DownloadService extends Service {
      * Enqueue an {@link #updateLocked()} pass to occur in future.
      */
     private void enqueueUpdate() {
-        if (mUpdateThread != null) {
-            mUpdateHandler.removeMessages(MSG_UPDATE);
-            mUpdateHandler.obtainMessage(MSG_UPDATE, mLastStartId, -1).sendToTarget();
-        }
+        mUpdateHandler.removeMessages(MSG_UPDATE);
+        mUpdateHandler.obtainMessage(MSG_UPDATE, mLastStartId, -1).sendToTarget();
     }
 
     /**
@@ -211,12 +208,10 @@ public class DownloadService extends Service {
      * catch any finished operations that didn't trigger an update pass.
      */
     private void enqueueFinalUpdate() {
-        if (mUpdateThread != null) {
-            mUpdateHandler.removeMessages(MSG_FINAL_UPDATE);
-            mUpdateHandler.sendMessageDelayed(
-                    mUpdateHandler.obtainMessage(MSG_FINAL_UPDATE, mLastStartId, -1),
-                    5 * MINUTE_IN_MILLIS);
-        }
+        mUpdateHandler.removeMessages(MSG_FINAL_UPDATE);
+        mUpdateHandler.sendMessageDelayed(
+                mUpdateHandler.obtainMessage(MSG_FINAL_UPDATE, mLastStartId, -1),
+                5 * MINUTE_IN_MILLIS);
     }
 
     private static final int MSG_UPDATE = 1;
@@ -274,7 +269,6 @@ public class DownloadService extends Service {
                 if (stopSelfResult(startId)) {
                     if (DEBUG_LIFECYCLE) Log.v(TAG, "Nothing left; stopped");
                     mUpdateThread.quit();
-                    mUpdateThread = null;
                 }
             }