From f889444fa9d6b0ab505b3ebd3812c70605ca8c96 Mon Sep 17 00:00:00 2001 From: Leon Scroggins III Date: Thu, 2 Apr 2020 11:38:48 -0400 Subject: [PATCH] AImageDecoder: Suppress log messages Bug: 153071768 Test: AImageDecoderTest For simplicity, I1aff544e8d6932b9ed0931a00da66a0aba6cd536 made ImageDecoder skip specifying kOpaque when setting the SkImageInfo for decoding. For some formats (e.g. jpeg and heif), this results in a log message: "Warning: an opaque image should be decoded as opaque - it is being decoded as non-opaque, which will draw slower" This isn't relevant to AImageDecoder, which doesn't let you specify kOpaque or not (since the intent is not to create an SkBitmap for Skia). Now that ImageDecoder specifies kOpaque properly, the JNI code no longer needs to correct it. Replace another opacity check with ::opaque() for simplicity. Change-Id: I7c270d9b9db61a61a338f40b056ce5d23a56e14d --- libs/hwui/hwui/ImageDecoder.cpp | 9 +++------ libs/hwui/jni/ImageDecoder.cpp | 3 --- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/libs/hwui/hwui/ImageDecoder.cpp b/libs/hwui/hwui/ImageDecoder.cpp index afd82aca07c58..43cc4f244f711 100644 --- a/libs/hwui/hwui/ImageDecoder.cpp +++ b/libs/hwui/hwui/ImageDecoder.cpp @@ -50,10 +50,8 @@ ImageDecoder::ImageDecoder(std::unique_ptr codec, sk_spcomputeSampleSize(&decodeSize); - if (decodeSize != targetSize && mUnpremultipliedRequired - && !mCodec->getInfo().isOpaque()) { + if (decodeSize != targetSize && mUnpremultipliedRequired && !opaque()) { return false; } diff --git a/libs/hwui/jni/ImageDecoder.cpp b/libs/hwui/jni/ImageDecoder.cpp index b6b378539bd03..41d939bd63737 100644 --- a/libs/hwui/jni/ImageDecoder.cpp +++ b/libs/hwui/jni/ImageDecoder.cpp @@ -305,9 +305,6 @@ static jobject ImageDecoder_nDecodeBitmap(JNIEnv* env, jobject /*clazz*/, jlong } SkImageInfo bitmapInfo = decoder->getOutputInfo(); - if (decoder->opaque()) { - bitmapInfo = bitmapInfo.makeAlphaType(kOpaque_SkAlphaType); - } if (asAlphaMask && colorType == kGray_8_SkColorType) { bitmapInfo = bitmapInfo.makeColorType(kAlpha_8_SkColorType); }