diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java index 4d839d20c49ac..8731cdad69c58 100644 --- a/services/core/java/com/android/server/am/ActivityManagerService.java +++ b/services/core/java/com/android/server/am/ActivityManagerService.java @@ -7145,6 +7145,9 @@ public class ActivityManagerService extends IActivityManager.Stub if (profilerInfo != null && profilerInfo.profileFd != null) { profilerInfo.profileFd = profilerInfo.profileFd.dup(); + if (TextUtils.equals(mProfileApp, processName) && mProfilerInfo != null) { + clearProfilerLocked(); + } } // We deprecated Build.SERIAL and it is not accessible to @@ -7211,7 +7214,10 @@ public class ActivityManagerService extends IActivityManager.Stub mCoreSettingsObserver.getCoreSettingsLocked(), buildSerial); } - + if (profilerInfo != null) { + profilerInfo.closeFd(); + profilerInfo = null; + } checkTime(startTime, "attachApplicationLocked: immediately after bindApplication"); updateLruProcessLocked(app, false, null); checkTime(startTime, "attachApplicationLocked: after updateLruProcessLocked");