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

Commit d1de40ba authored by The Android Automerger's avatar The Android Automerger
Browse files

Merge branch 'eclair' into eclair-release

parents 193d9cdd 35f28c7d
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -169,7 +169,6 @@ void LayerBlur::onDraw(const Region& clip) const
            // This reads the frame-buffer, so a h/w GL would have to
            // finish() its rendering first. we don't want to do that
            // too often. Read data is 4-bytes aligned.
            glFinish();
            glReadPixels(X, Y, w, h, mReadFormat, mReadType, pixels);

            // blur that texture.
+6 −1
Original line number Diff line number Diff line
@@ -118,7 +118,12 @@ uint32_t LayerBuffer::doTransaction(uint32_t flags)
    sp<Source> source(getSource());
    if (source != 0)
        source->onTransaction(flags);
    return LayerBase::doTransaction(flags);    
    uint32_t res = LayerBase::doTransaction(flags);
    // we always want filtering for these surfaces
    if (!(mFlags & DisplayHardware::SLOW_CONFIG)) {
        mUseLinearFiltering = true;
    }
    return res;
}

void LayerBuffer::unlockPageFlip(const Transform& planeTransform,
+24 −12
Original line number Diff line number Diff line
@@ -1548,28 +1548,40 @@ void glDeleteBuffers(GLsizei n, const GLuint* buffers)
        GLuint name = buffers[i];
        if (name) {
            // unbind bound deleted buffers...
            if (c->arrays.element_array_buffer) {
                if (c->arrays.element_array_buffer->name == name) {
                    c->arrays.element_array_buffer = 0;
                }
            }
            if (c->arrays.array_buffer) {
                if (c->arrays.array_buffer->name == name) {
                    c->arrays.array_buffer = 0;
                }
            }
            if (c->arrays.vertex.bo) {
                if (c->arrays.vertex.bo->name == name) {
                    c->arrays.vertex.bo = 0;
                }
            }
            if (c->arrays.normal.bo) {
                if (c->arrays.normal.bo->name == name) {
                    c->arrays.normal.bo = 0;
                }
            }
            if (c->arrays.color.bo) {
                if (c->arrays.color.bo->name == name) {
                    c->arrays.color.bo = 0;
                }
            }
            for (int t=0 ; t<GGL_TEXTURE_UNIT_COUNT ; t++) {
                if (c->arrays.texture[t].bo) {
                    if (c->arrays.texture[t].bo->name == name) {
                        c->arrays.texture[t].bo = 0;
                    }
                }
            }
        }
    }
    c->bufferObjectManager->deleteBuffers(n, buffers);
    c->bufferObjectManager->recycleTokens(n, buffers);
}