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

Commit 0813c5aa authored by Adam Lesinski's avatar Adam Lesinski Committed by gitbuildkicker
Browse files

Don't hold on to AssetManager instances

If we enter multi-window mode or load WebView
assets into a Resources object, then the underlying
AssetManager instance may change.

crbug.com/627586

Bug:30118654

Change-Id: I837637bdad5370809db7f060d7d8536b536cad9e
parent cad52fe4
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -49,6 +49,10 @@ public class TypedArray {
            attrs.mLength = len;
            attrs.mRecycled = false;

            // Reset the assets, which may have changed due to configuration changes
            // or further resource loading.
            attrs.mAssets = res.getAssets();

            final int fullLen = len * AssetManager.STYLE_NUM_ENTRIES;
            if (attrs.mData.length >= fullLen) {
                return attrs;
@@ -66,7 +70,7 @@ public class TypedArray {

    private final Resources mResources;
    private final DisplayMetrics mMetrics;
    private final AssetManager mAssets;
    private AssetManager mAssets;

    private boolean mRecycled;

@@ -1086,6 +1090,7 @@ public class TypedArray {
        // These may have been set by the client.
        mXml = null;
        mTheme = null;
        mAssets = null;

        mResources.mTypedArrayPool.release(this);
    }