summaryrefslogtreecommitdiffstats
path: root/graphics/java/android/graphics/drawable/LayerDrawable.java
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/java/android/graphics/drawable/LayerDrawable.java')
-rw-r--r--graphics/java/android/graphics/drawable/LayerDrawable.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/graphics/java/android/graphics/drawable/LayerDrawable.java b/graphics/java/android/graphics/drawable/LayerDrawable.java
index 505bd1d..9e4674b 100644
--- a/graphics/java/android/graphics/drawable/LayerDrawable.java
+++ b/graphics/java/android/graphics/drawable/LayerDrawable.java
@@ -92,6 +92,8 @@ public class LayerDrawable extends Drawable implements Drawable.Callback {
private int[] mPaddingB;
private final Rect mTmpRect = new Rect();
+ private final Rect mTmpOutRect = new Rect();
+ private final Rect mTmpContainer = new Rect();
private Rect mHotspotBounds;
private boolean mMutated;
@@ -945,7 +947,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback {
int padR = 0;
int padB = 0;
- final Rect outRect = mTmpRect;
+ final Rect outRect = mTmpOutRect;
final int layoutDirection = getLayoutDirection();
final boolean nest = mLayerState.mPaddingMode == PADDING_MODE_NEST;
final ChildDrawable[] array = mLayerState.mChildren;
@@ -953,7 +955,8 @@ public class LayerDrawable extends Drawable implements Drawable.Callback {
for (int i = 0; i < N; i++) {
final ChildDrawable r = array[i];
final Drawable d = r.mDrawable;
- final Rect container = d.getBounds();
+ final Rect container = mTmpContainer;
+ container.set(d.getBounds());
// Take the resolved layout direction into account. If start / end
// padding are defined, they will be resolved (hence overriding) to