summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2021-11-27 11:06:03 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2021-11-27 11:06:03 +0000
commitefa65195eb49c8c6c62a741f65e605c46231fac0 (patch)
tree7c0a52325af534dc47cf5d3e870d331c8b78d1dc
parenta3b9f4b108d5f3ae95b7bb57cc3c83234ee29ef4 (diff)
parenteb009cc2f3337df458237a923472f4463baf49bd (diff)
Snap for 7949007 from eb009cc2f3337df458237a923472f4463baf49bd to s-keystone-qcom-release
Change-Id: I7dbf881a9f0f7d8fe75a20773c15d93730dfeba4
-rw-r--r--services/surfaceflinger/SurfaceFlinger.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 47ae4dec6e..23e33d197b 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -3519,14 +3519,18 @@ void SurfaceFlinger::processDisplayHotplugEventsLocked() {
updateInternalDisplaysPresentationMode();
}
}
-
+ uint32_t hwcDisplayId = static_cast<uint32_t>(event.hwcDisplayId);
+ bool isConnected = (event.connection == hal::Connection::CONNECTED);
if (isDisplayExtnEnabled() && isInternalDisplay) {
- uint32_t hwcDisplayId = static_cast<uint32_t>(event.hwcDisplayId);
- bool isConnected = (event.connection == hal::Connection::CONNECTED);
auto activeConfigId = getHwComposer().getActiveMode(displayId);
LOG_ALWAYS_FATAL_IF(!activeConfigId, "HWC returned no active config");
updateDisplayExtension(hwcDisplayId, *activeConfigId, isConnected);
}
+#if defined(QTI_UNIFIED_DRAW) && defined(UNIFIED_DRAW_EXT)
+ if (mDisplayExtnIntf && !isConnected && !isInternalDisplay) {
+ mDisplayExtnIntf->EndUnifiedDraw(hwcDisplayId);
+ }
+#endif
processDisplayChangesLocked();
}