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

Commit 961f916b authored by Robert Phillips's avatar Robert Phillips Committed by Automerger Merge Worker
Browse files

Don't look through the buffer cache in protected contexts am: a0c7cca5 am:...

Don't look through the buffer cache in protected contexts am: a0c7cca5 am: 6fd105f0 am: e8799f6b

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/24666066



Change-Id: Icce494adb6428025769c8ffd16b74e08a1e144a2
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 5f0bf742 e8799f6b
Loading
Loading
Loading
Loading
+5 −8
Original line number Diff line number Diff line
@@ -397,12 +397,10 @@ void SkiaRenderEngine::mapExternalTextureBuffer(const sp<GraphicBuffer>& buffer,
    }
    // We don't attempt to map a buffer if the buffer contains protected content. In GL this is
    // important because GPU resources for protected buffers are much more limited. (In Vk we
    // simply match the existing behavior for protected buffers.)  In Vk, we never cache any
    // buffers while in a protected context, since Vk cannot share across contexts, and protected
    // is less common.
    // simply match the existing behavior for protected buffers.)  We also never cache any
    // buffers while in a protected context.
    const bool isProtectedBuffer = buffer->getUsage() & GRALLOC_USAGE_PROTECTED;
    if (isProtectedBuffer ||
        (mRenderEngineType == RenderEngineType::SKIA_VK_THREADED && isProtected())) {
    if (isProtectedBuffer || isProtected()) {
        return;
    }
    ATRACE_CALL();
@@ -467,9 +465,8 @@ void SkiaRenderEngine::unmapExternalTextureBuffer(sp<GraphicBuffer>&& buffer) {

std::shared_ptr<AutoBackendTexture::LocalRef> SkiaRenderEngine::getOrCreateBackendTexture(
        const sp<GraphicBuffer>& buffer, bool isOutputBuffer) {
    // Do not lookup the buffer in the cache for protected contexts with the SkiaVk back-end
    if (mRenderEngineType == RenderEngineType::SKIA_GL_THREADED ||
        (mRenderEngineType == RenderEngineType::SKIA_VK_THREADED && !isProtected())) {
    // Do not lookup the buffer in the cache for protected contexts
    if (!isProtected()) {
        if (const auto& it = mTextureCache.find(buffer->getId()); it != mTextureCache.end()) {
            return it->second;
        }