wm: recycle bitmaps immediately in TaskSnapshotPersister
Bitmap created in TaskSnapshotPersister are very short lived and shouldn't be left around in the Java heap. Test: boot, switch apps, works bug 117795621 Exempt-From-Owner-Approval: approved in another branch Merged-in: I4b5e0db50c2b7adaa71cb0d22535c1b37c7523e8 Change-Id: I4b5e0db50c2b7adaa71cb0d22535c1b37c7523e8
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
package com.android.server.wm;
|
||||
|
||||
import static android.graphics.Bitmap.CompressFormat.*;
|
||||
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
|
||||
|
||||
@@ -360,6 +361,7 @@ class TaskSnapshotPersister {
|
||||
|
||||
// For snapshots with reduced resolution, do not create or save full sized bitmaps
|
||||
if (mSnapshot.isReducedResolution()) {
|
||||
swBitmap.recycle();
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -372,6 +374,8 @@ class TaskSnapshotPersister {
|
||||
Slog.e(TAG, "Unable to open " + file + " for persisting.", e);
|
||||
return false;
|
||||
}
|
||||
reduced.recycle();
|
||||
swBitmap.recycle();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user