From 7e84455e4c8a0b751c4524ebfed8f0c12c9f29a0 Mon Sep 17 00:00:00 2001 From: Vishnu Nair Date: Sat, 29 Jun 2024 01:17:02 +0000 Subject: Enable single hop screenshots for only threaded re Fixes a deadlock where screenshot requests are blocked on the main thread which inturn is blocked by the screenshot request finishing. Flag: EXEMPT bug fix Bug: 349776684 Bug: 349741485 Bug: 352267188 Test: presubmit (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:5aadd249f326b21e5ef6cadfebc15b6a0a016816) Merged-In: Ibf038ad6db3e87c84508d3e101ca1eb144836d7c Change-Id: Ibf038ad6db3e87c84508d3e101ca1eb144836d7c --- services/surfaceflinger/RegionSamplingThread.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'services/surfaceflinger/RegionSamplingThread.cpp') diff --git a/services/surfaceflinger/RegionSamplingThread.cpp b/services/surfaceflinger/RegionSamplingThread.cpp index 5add290e96..2ad70bb169 100644 --- a/services/surfaceflinger/RegionSamplingThread.cpp +++ b/services/surfaceflinger/RegionSamplingThread.cpp @@ -356,7 +356,7 @@ void RegionSamplingThread::captureSample() { FenceResult fenceResult; if (FlagManager::getInstance().single_hop_screenshot() && - FlagManager::getInstance().ce_fence_promise()) { + FlagManager::getInstance().ce_fence_promise() && mFlinger.mRenderEngine->isThreaded()) { std::vector> layerFEs; auto displayState = mFlinger.getDisplayAndLayerSnapshotsFromMainThread(renderAreaBuilder, -- cgit v1.2.3-59-g8ed1b