LayerTraceGenerator: Skip updating transform hint if display is not found
Special case for LayerTraceGenerator where we do not mock a display,
we just ignore updating the transform hint instead.
Test: atest transactiontrace_testsuite
Bug: 235376060
Change-Id: I5313bc26703cd52e36c7eb6f86f139a2752d40d1
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index f6f71ae..3043809 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -3199,7 +3199,7 @@
}
}
- if (!hintDisplay) {
+ if (!hintDisplay && mDisplays.size() > 0) {
// NOTE: TEMPORARY FIX ONLY. Real fix should cause layers to
// redraw after transform hint changes. See bug 8508397.
@@ -3209,7 +3209,11 @@
hintDisplay = getDefaultDisplayDeviceLocked();
}
- layer->updateTransformHint(hintDisplay->getTransformHint());
+ if (hintDisplay) {
+ layer->updateTransformHint(hintDisplay->getTransformHint());
+ } else {
+ ALOGW("Ignoring transform hint update for %s", layer->getDebugName());
+ }
});
}