From 038953da05c641f6551134f710ac0e4f46b624b7 Mon Sep 17 00:00:00 2001 From: Keun young Park Date: Fri, 12 Oct 2012 11:36:13 -0700 Subject: [PATCH] fix wrong read size in ToColor_S4444_Opaque - S4444 takes 16bits, not 32bits - This caused sporadic failure in CTS BitmapFactoryTest#testDecodeStream4 Bug: 7179389 Change-Id: Ib36a3a569b3149d74f36ae67a069a7b65a72e895 --- core/jni/android/graphics/Bitmap.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/jni/android/graphics/Bitmap.cpp b/core/jni/android/graphics/Bitmap.cpp index 1bba5b434477b..fd7a6a757a354 100644 --- a/core/jni/android/graphics/Bitmap.cpp +++ b/core/jni/android/graphics/Bitmap.cpp @@ -145,7 +145,7 @@ static void ToColor_S4444_Alpha(SkColor dst[], const void* src, int width, static void ToColor_S4444_Opaque(SkColor dst[], const void* src, int width, SkColorTable*) { SkASSERT(width > 0); - const SkPMColor* s = (const SkPMColor*)src; + const SkPMColor16* s = (const SkPMColor16*)src; do { SkPMColor c = SkPixel4444ToPixel32(*s++); *dst++ = SkColorSetRGB(SkGetPackedR32(c), SkGetPackedG32(c),