From b6bdb0f02df1004307d25ae86e09cdbbc6865e75 Mon Sep 17 00:00:00 2001 From: Adam Lesinski Date: Thu, 5 Feb 2015 11:11:03 -0800 Subject: Make ArrayMap.EMPTY immutable This is a regression from KitKat. Bug:19271657 Change-Id: I11b8e4dd50f6a8d2b15fef66b44aa2d72b1f0349 --- core/java/android/util/ArrayMap.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/java/android/util/ArrayMap.java b/core/java/android/util/ArrayMap.java index 7c9861f..6ed3885 100644 --- a/core/java/android/util/ArrayMap.java +++ b/core/java/android/util/ArrayMap.java @@ -255,7 +255,10 @@ public final class ArrayMap implements Map { } private ArrayMap(boolean immutable) { - mHashes = EmptyArray.INT; + // If this is immutable, use the sentinal EMPTY_IMMUTABLE_INTS + // instance instead of the usual EmptyArray.INT. The reference + // is checked later to see if the array is allowed to grow. + mHashes = immutable ? EMPTY_IMMUTABLE_INTS : EmptyArray.INT; mArray = EmptyArray.OBJECT; mSize = 0; } -- cgit v1.1