Merge "Move emulator check & save system properties access" into klp-modular-dev
diff --git a/services/core/java/com/android/server/am/TaskRecord.java b/services/core/java/com/android/server/am/TaskRecord.java
index 9740812..67a411a 100644
--- a/services/core/java/com/android/server/am/TaskRecord.java
+++ b/services/core/java/com/android/server/am/TaskRecord.java
@@ -64,6 +64,10 @@
      * Display.DEFAULT_DISPLAY. */
     boolean mOnTopOfHome = false;
 
+    // Used in the unique case where we are clearing the task in order to reuse it. In that case we
+    // do not want to delete the stack when the task goes empty.
+    boolean mReuseTask = false;
+
     TaskRecord(int _taskId, ActivityInfo info, Intent _intent) {
         taskId = _taskId;
         affinity = info.taskAffinity;
@@ -219,7 +223,7 @@
             // Was previously in list.
             numFullscreen--;
         }
-        return mActivities.size() == 0;
+        return mActivities.size() == 0 && !mReuseTask;
     }
 
     /**
@@ -244,7 +248,9 @@
      * Completely remove all activities associated with an existing task.
      */
     final void performClearTaskLocked() {
+        mReuseTask = true;
         performClearTaskAtIndexLocked(0);
+        mReuseTask = false;
     }
 
     /**