Merge "Fix TextureView calling eglCreateImage with a destructed buffer" into rvc-dev am: 1ca53a0901 am: 469955b887

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

Change-Id: I36a78ed9c07e41ca9897bf10e7c47d8f5f9782f7
This commit is contained in:
TreeHugger Robot
2020-07-17 15:22:25 +00:00
committed by Automerger Merge Worker

View File

@@ -149,6 +149,9 @@ void DeferredLayerUpdater::apply() {
sk_sp<SkImage> layerImage = mImageSlots[slot].createIfNeeded(
hardwareBuffer, dataspace, newContent,
mRenderState.getRenderThread().getGrContext());
// unref to match the ref added by ASurfaceTexture_dequeueBuffer. eglCreateImageKHR
// (invoked by createIfNeeded) will add a ref to the AHardwareBuffer.
AHardwareBuffer_release(hardwareBuffer);
if (layerImage.get()) {
SkMatrix textureTransform;
mat4(transformMatrix).copyTo(textureTransform);