summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVikas batchu <quic_vikabatc@quicinc.com>2022-06-09 18:45:49 +0530
committerVikas batchu <quic_vikabatc@quicinc.com>2022-06-09 19:09:50 +0530
commit8973353855b9b73e4e84123b6ae282ccfe4d800a (patch)
tree3f39d23b9cd63bd3c9d6d227ebf57bb831161bee
parent0cd2304dfad25401cf47174689d446aa0ecbbe33 (diff)
sf: check max display count for async virtual display creation
CRs-Fixed: 3205758 Change-Id: Ib2f0f7529b19422d8d7f025174973d6a9d1cccb3
-rw-r--r--services/surfaceflinger/SurfaceFlinger.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 630997cd3a..e385c517ec 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -5045,7 +5045,8 @@ void SurfaceFlinger::checkVirtualDisplayHint(const Vector<DisplayState>& display
if (what & DisplayState::eSurfaceChanged) {
if (IInterface::asBinder(state.surface) != IInterface::asBinder(s.surface)) {
if (state.isVirtual() && s.surface != nullptr &&
- mVirtualDisplayIdGenerators.hal) {
+ mVirtualDisplayIdGenerators.hal &&
+ getHwComposer().getMaxVirtualDisplayCount() > 0) {
width = 0;
int status = s.surface->query(NATIVE_WINDOW_WIDTH, &width);
ALOGE_IF(status != NO_ERROR, "Unable to query width (%d)", status);