From df33b95e682711881325aaa080d3347f26f9c74c Mon Sep 17 00:00:00 2001 From: Leon Scroggins III Date: Mon, 26 Apr 2021 15:35:56 -0400 Subject: [PATCH] AImageDecoder: only support animation for F16 and 8888 (impl) Bug: 180594747 Test: I51dedd94aa8ff5d6846cada96861ffca30d509d7 See I03818703dc79942be4e574db31c6e2927ab571ed Change-Id: Ibce55e4af38713d2e40fcb8846d9d7a939367fd6 --- native/graphics/jni/imagedecoder.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/native/graphics/jni/imagedecoder.cpp b/native/graphics/jni/imagedecoder.cpp index 385e455e3e1f3..b0c8c612036ab 100644 --- a/native/graphics/jni/imagedecoder.cpp +++ b/native/graphics/jni/imagedecoder.cpp @@ -442,6 +442,15 @@ int AImageDecoder_advanceFrame(AImageDecoder* decoder) { return ANDROID_IMAGE_DECODER_BAD_PARAMETER; } + const auto colorType = imageDecoder->getOutputInfo().colorType(); + switch (colorType) { + case kN32_SkColorType: + case kRGBA_F16_SkColorType: + break; + default: + return ANDROID_IMAGE_DECODER_INVALID_STATE; + } + if (imageDecoder->advanceFrame()) { return ANDROID_IMAGE_DECODER_SUCCESS; }