Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit af85392b authored by Tim Murray's avatar Tim Murray
Browse files

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
Change-Id: I4b5e0db50c2b7adaa71cb0d22535c1b37c7523e8
parent a354de4c
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -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;

@@ -361,6 +362,7 @@ class TaskSnapshotPersister {

            // For snapshots with reduced resolution, do not create or save full sized bitmaps
            if (mSnapshot.isReducedResolution()) {
                swBitmap.recycle();
                return true;
            }

@@ -373,6 +375,8 @@ class TaskSnapshotPersister {
                Slog.e(TAG, "Unable to open " + file + " for persisting.", e);
                return false;
            }
            reduced.recycle();
            swBitmap.recycle();
            return true;
        }
    }