summaryrefslogtreecommitdiff
path: root/libs/hwui/renderthread/VulkanManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/hwui/renderthread/VulkanManager.cpp')
-rw-r--r--libs/hwui/renderthread/VulkanManager.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/libs/hwui/renderthread/VulkanManager.cpp b/libs/hwui/renderthread/VulkanManager.cpp
index 9916da5d9f10..7f979d6c3e53 100644
--- a/libs/hwui/renderthread/VulkanManager.cpp
+++ b/libs/hwui/renderthread/VulkanManager.cpp
@@ -467,6 +467,10 @@ Frame VulkanManager::dequeueNextBuffer(VulkanSurface* surface) {
GrBackendSemaphore backendSemaphore;
backendSemaphore.initVulkan(semaphore);
bufferInfo->skSurface->wait(1, &backendSemaphore);
+ // The following flush blocks the GPU immediately instead of waiting for other
+ // drawing ops. It seems dequeue_fence is not respected otherwise.
+ //TODO: remove the flush after finding why backendSemaphore is not working.
+ bufferInfo->skSurface->flush();
}
}