summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Valerie Hau <vhau@google.com> 2020-01-31 14:28:00 -0800
committer Valerie Hau <vhau@google.com> 2020-02-03 10:00:01 -0800
commitf0a24dd2be43c650a9c21004a0c8c2f562f3883f (patch)
treee6f50b93c6697c3a4af1d779835a017e4cefc671
parentbc0a0675c0d5f6b659c7a0bc94a41488c4512f07 (diff)
Fix segfault in ViewRootImpl on BLAST
Recent deferTransaction change created bootloop when BLAST is turned on Bug: 146345307 Test: build, boot, manual Change-Id: Ib5e484c39d11260026694fc2a32015d8a7f04baf
-rw-r--r--core/java/android/view/ViewRootImpl.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index 2b4b71f01aa5..7613dd8f0355 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -1691,7 +1691,7 @@ public final class ViewRootImpl implements ViewParent,
.build();
setBoundsLayerCrop();
mTransaction.show(mBoundsLayer).apply();
- }
+ }
return mBoundsLayer;
}
@@ -1699,7 +1699,9 @@ public final class ViewRootImpl implements ViewParent,
if (mSurfaceControl == null || !mSurfaceControl.isValid()) {
return null;
}
- if ((mBlastBufferQueue != null) && mBlastSurfaceControl.isValid()) {
+ if ((mBlastSurfaceControl != null)
+ && (mBlastBufferQueue == null)
+ && mBlastSurfaceControl.isValid()) {
mBlastBufferQueue = new BLASTBufferQueue(
mBlastSurfaceControl, width, height);
}