From 1558cf1498ecc687532f2dad3de720053dca9309 Mon Sep 17 00:00:00 2001 From: Romain Guy Date: Fri, 7 Sep 2012 18:35:22 -0700 Subject: Fix crash in ShapeDrawable Change-Id: Ibc277db46912a73dc3f971f8487baa5eafa8bc84 --- graphics/java/android/graphics/drawable/ShapeDrawable.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'graphics') diff --git a/graphics/java/android/graphics/drawable/ShapeDrawable.java b/graphics/java/android/graphics/drawable/ShapeDrawable.java index a3622a2..2ec1293 100644 --- a/graphics/java/android/graphics/drawable/ShapeDrawable.java +++ b/graphics/java/android/graphics/drawable/ShapeDrawable.java @@ -373,8 +373,16 @@ public class ShapeDrawable extends Drawable { @Override public Drawable mutate() { if (!mMutated && super.mutate() == this) { - mShapeState.mPaint = new Paint(mShapeState.mPaint); - mShapeState.mPadding = new Rect(mShapeState.mPadding); + if (mShapeState.mPaint != null) { + mShapeState.mPaint = new Paint(mShapeState.mPaint); + } else { + mShapeState.mPaint = new Paint(Paint.ANTI_ALIAS_FLAG); + } + if (mShapeState.mPadding != null) { + mShapeState.mPadding = new Rect(mShapeState.mPadding); + } else { + mShapeState.mPadding = new Rect(); + } try { mShapeState.mShape = mShapeState.mShape.clone(); } catch (CloneNotSupportedException e) { -- cgit v1.1