diff options
| author | 2024-05-24 21:15:37 +0000 | |
|---|---|---|
| committer | 2024-05-24 21:15:37 +0000 | |
| commit | f4cdb4307e47cf5799a27390b8ed894488237f09 (patch) | |
| tree | 02c789ce324427670da4b0d542f63d8eb50b0783 /libs/hwui/HardwareBitmapUploader.cpp | |
| parent | 2e07b93f0f950177eb4afd05670e042b7bd43f65 (diff) | |
| parent | fe285426c4f9149537bdd7cb351b02ec102e6082 (diff) | |
Merge "Merge Android 24Q2 Release (ab/11526283) to aosp-main-future" into aosp-main-future
Diffstat (limited to 'libs/hwui/HardwareBitmapUploader.cpp')
| -rw-r--r-- | libs/hwui/HardwareBitmapUploader.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/libs/hwui/HardwareBitmapUploader.cpp b/libs/hwui/HardwareBitmapUploader.cpp index 16de21def0e3..27ea15075682 100644 --- a/libs/hwui/HardwareBitmapUploader.cpp +++ b/libs/hwui/HardwareBitmapUploader.cpp @@ -378,10 +378,17 @@ static FormatInfo determineFormat(const SkBitmap& skBitmap, bool usingGL) { break; case kAlpha_8_SkColorType: formatInfo.isSupported = HardwareBitmapUploader::hasAlpha8Support(); - formatInfo.bufferFormat = AHARDWAREBUFFER_FORMAT_R8_UNORM; - formatInfo.format = GL_R8; - formatInfo.type = GL_UNSIGNED_BYTE; - formatInfo.vkFormat = VK_FORMAT_R8_UNORM; + if (formatInfo.isSupported) { + formatInfo.bufferFormat = AHARDWAREBUFFER_FORMAT_R8_UNORM; + formatInfo.format = GL_RED; + formatInfo.type = GL_UNSIGNED_BYTE; + formatInfo.vkFormat = VK_FORMAT_R8_UNORM; + } else { + formatInfo.type = GL_UNSIGNED_BYTE; + formatInfo.bufferFormat = AHARDWAREBUFFER_FORMAT_R8G8B8A8_UNORM; + formatInfo.vkFormat = VK_FORMAT_R8G8B8A8_UNORM; + formatInfo.format = GL_RGBA; + } break; default: ALOGW("unable to create hardware bitmap of colortype: %d", skBitmap.info().colorType()); |