summaryrefslogtreecommitdiff
path: root/cmds/bootanimation/BootAnimation.cpp
diff options
context:
space:
mode:
author Lucas Dupin <dupin@google.com> 2023-08-17 17:42:03 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2023-08-17 17:42:03 +0000
commitf9ec8533b96b7d9ecb4b2da2d904a9094b25322a (patch)
tree360757f2b17b6cc302c32409061091cfe9916e18 /cmds/bootanimation/BootAnimation.cpp
parentb66c33862dcf86c30ea4d133b8905062122c0b18 (diff)
parent2484bfca4a01731b01f7f7e3f8c0a75f8f25d2cf (diff)
Merge "bootanimation: do not create texture for parts with count=1" into main am: 13399aefd2 am: 2484bfca4a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2646620 Change-Id: If16c20cb79b68052897393f26328389f0dcaf36e Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'cmds/bootanimation/BootAnimation.cpp')
-rw-r--r--cmds/bootanimation/BootAnimation.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/cmds/bootanimation/BootAnimation.cpp b/cmds/bootanimation/BootAnimation.cpp
index a8b6c0b70804..782351c14399 100644
--- a/cmds/bootanimation/BootAnimation.cpp
+++ b/cmds/bootanimation/BootAnimation.cpp
@@ -1523,6 +1523,7 @@ bool BootAnimation::playAnimation(const Animation& animation) {
for (size_t i=0 ; i<pcount ; i++) {
const Animation::Part& part(animation.parts[i]);
const size_t fcount = part.frames.size();
+ glBindTexture(GL_TEXTURE_2D, 0);
// Handle animation package
if (part.animation != nullptr) {
@@ -1599,8 +1600,10 @@ bool BootAnimation::playAnimation(const Animation& animation) {
if (r > 0) {
glBindTexture(GL_TEXTURE_2D, frame.tid);
} else {
- glGenTextures(1, &frame.tid);
- glBindTexture(GL_TEXTURE_2D, frame.tid);
+ if (part.count != 1) {
+ glGenTextures(1, &frame.tid);
+ glBindTexture(GL_TEXTURE_2D, frame.tid);
+ }
int w, h;
// Set decoding option to alpha unpremultiplied so that the R, G, B channels
// of transparent pixels are preserved.