Return if HWCDisplay is not yet created
Test: device boots with VRR flag enabled, atest HWComposerTest
BUG: 311300327
Change-Id: I29ddd536c9718b97f90d7400d3ea12f35f182054
diff --git a/services/surfaceflinger/DisplayHardware/HWComposer.cpp b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
index 6be57d4..252e934 100644
--- a/services/surfaceflinger/DisplayHardware/HWComposer.cpp
+++ b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
@@ -944,6 +944,10 @@
std::optional<Period> timeoutOpt) {
RETURN_IF_INVALID_DISPLAY(displayId, BAD_INDEX);
auto& displayData = mDisplayData[displayId];
+ if (!displayData.hwcDisplay) {
+ // Display setup has not completed yet
+ return BAD_INDEX;
+ }
{
std::scoped_lock lock{displayData.expectedPresentLock};
const auto lastExpectedPresentTimestamp = displayData.lastExpectedPresentTimestamp;