Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2fb30fb6 authored by Geoffrey Pitsch's avatar Geoffrey Pitsch
Browse files

Wait until end of BootAnimation to free looping textures

glDeleteTextures causes a noticeable framerate hitch when switching to
the outro.  By the time looping is finished, the system has finished
booting, so freeing the textures immediately is less beneficial.

Bug: 29878551
Bug: 30040263
Change-Id: I5a404a6e18cd2cf64d6c94343f82fa5db8dfbab3
parent 3cc69357
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -839,8 +839,12 @@ bool BootAnimation::playAnimation(const Animation& animation)
                break;
        }

        // free the textures for this part
    }

    // Free textures created for looping parts now that the animation is done.
    for (const Animation::Part& part : animation.parts) {
        if (part.count != 1) {
            const size_t fcount = part.frames.size();
            for (size_t j = 0; j < fcount; j++) {
                const Animation::Frame& frame(part.frames[j]);
                glDeleteTextures(1, &frame.tid);