Disable skip Validate on client composition
SurfaceFlinger should not skip validate when GLComposition is
needed. This can happen when SF decides to force GLComposition
(like when a screen rotation occurs).
Bug: 62906801
Test: Manual
Change-Id: I248146eade395a124cb149773287abd88ae36511
diff --git a/services/surfaceflinger/DisplayHardware/HWComposer.cpp b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
index 913c43f..3f953ea 100644
--- a/services/surfaceflinger/DisplayHardware/HWComposer.cpp
+++ b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
@@ -460,7 +460,8 @@
// First try to skip validate altogether if the HWC supports it.
displayData.validateWasSkipped = false;
- if (hasCapability(HWC2::Capability::SkipValidate)) {
+ if (hasCapability(HWC2::Capability::SkipValidate) &&
+ !displayData.hasClientComposition) {
sp<android::Fence> outPresentFence;
uint32_t state = UINT32_MAX;
error = hwcDisplay->presentOrValidate(&numTypes, &numRequests, &outPresentFence , &state);