Return a copy of the read-only identity Matrix

An app trying to modify the returned matrix (despite what the
documentation says...) would crash when the matrix is identity.

Change-Id: I8aae06b712907085088fb9f0321352dd2c3462ac
This commit is contained in:
Romain Guy
2013-01-30 16:25:50 -08:00
parent b20abf4132
commit 5370405db2

View File

@@ -562,13 +562,14 @@ public class ImageView extends View {
/** Return the view's optional matrix. This is applied to the
view's drawable when it is drawn. If there is not matrix,
this method will return null.
Do not change this matrix in place. If you want a different matrix
applied to the drawable, be sure to call setImageMatrix().
this method will return an identity matrix.
Do not change this matrix in place but make a copy.
If you want a different matrix applied to the drawable,
be sure to call setImageMatrix().
*/
public Matrix getImageMatrix() {
if (mDrawMatrix == null) {
return Matrix.IDENTITY_MATRIX;
return new Matrix(Matrix.IDENTITY_MATRIX);
}
return mDrawMatrix;
}