diff options
| author | 2020-07-17 15:22:25 +0000 | |
|---|---|---|
| committer | 2020-07-17 15:22:25 +0000 | |
| commit | 8efd35622e2a09306987eef938fac76e3ca5ff6b (patch) | |
| tree | ad4367fbf45edca6fbf9db58db87a7ce30ce94a4 /libs/hwui/DeferredLayerUpdater.cpp | |
| parent | 2909a2ae8fe29d6e4de609e785c1106520ce7257 (diff) | |
| parent | 469955b887d0e44ba82fb0a35a08cc73e7bf9007 (diff) | |
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
Diffstat (limited to 'libs/hwui/DeferredLayerUpdater.cpp')
| -rw-r--r-- | libs/hwui/DeferredLayerUpdater.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libs/hwui/DeferredLayerUpdater.cpp b/libs/hwui/DeferredLayerUpdater.cpp index 5a50245a3765..67d8c07e61de 100644 --- a/libs/hwui/DeferredLayerUpdater.cpp +++ b/libs/hwui/DeferredLayerUpdater.cpp @@ -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); |