diff options
-rw-r--r-- | services/java/com/android/server/am/ActivityManagerService.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java index a7dac61..d676c00 100644 --- a/services/java/com/android/server/am/ActivityManagerService.java +++ b/services/java/com/android/server/am/ActivityManagerService.java @@ -5992,7 +5992,7 @@ public final class ActivityManagerService extends ActivityManagerNative implemen final boolean clearWhenTaskReset = (target.intent.getFlags() &Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET) != 0; - if (!finishOnTaskLaunch && target.resultTo != null) { + if (!finishOnTaskLaunch && !clearWhenTaskReset && target.resultTo != null) { // If this activity is sending a reply to a previous // activity, we can't do anything with it now until // we reach the start of the reply chain. @@ -6002,7 +6002,7 @@ public final class ActivityManagerService extends ActivityManagerNative implemen if (replyChainEnd < 0) { replyChainEnd = targetI; } - } else if (!finishOnTaskLaunch && allowTaskReparenting + } else if (!finishOnTaskLaunch && !clearWhenTaskReset && allowTaskReparenting && target.taskAffinity != null && !target.taskAffinity.equals(task.affinity)) { // If this activity has an affinity for another |