summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/am/ActivityManagerService.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index 85d288317b6a..62d7eb1d0448 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -18376,7 +18376,18 @@ public class ActivityManagerService extends IActivityManager.Stub
}
}
- proc.thread.dumpHeap(managed, mallocInfo, runGc, path, fd, finishCallback);
+ Process.enableFreezer(false);
+
+ final RemoteCallback intermediateCallback = new RemoteCallback(
+ new RemoteCallback.OnResultListener() {
+ @Override
+ public void onResult(Bundle result) {
+ finishCallback.sendResult(result);
+ Process.enableFreezer(true);
+ }
+ }, null);
+
+ proc.thread.dumpHeap(managed, mallocInfo, runGc, path, fd, intermediateCallback);
fd = null;
return true;
}