summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorChavi Weingarten <chaviw@google.com>2020-05-01 18:51:07 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-05-01 18:51:07 +0000
commitac380004acad7d7d6112848ef4aa17eca1526d4c (patch)
tree4045eb88e5cebf5e255ca14c3dd5d76e54cc14a1 /libs
parente1f9fde7690f507c37682996cefc4be4a0de9a56 (diff)
parent882ba30b8a35baeba4a1b6c5210b57b3fc7aad3a (diff)
Merge "Send drawFinish callback even if did not draw" into rvc-dev am: 882ba30b8a
Change-Id: I7f116f022e8d0370d9d9635396f5e2b7fa17a7d6
Diffstat (limited to 'libs')
-rw-r--r--libs/hwui/renderthread/CanvasContext.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/hwui/renderthread/CanvasContext.cpp b/libs/hwui/renderthread/CanvasContext.cpp
index c19b1878ad45..335bcdcfc1fb 100644
--- a/libs/hwui/renderthread/CanvasContext.cpp
+++ b/libs/hwui/renderthread/CanvasContext.cpp
@@ -440,6 +440,12 @@ void CanvasContext::draw() {
if (dirty.isEmpty() && Properties::skipEmptyFrames && !surfaceRequiresRedraw()) {
mCurrentFrameInfo->addFlag(FrameInfoFlags::SkippedFrame);
+ // Notify the callbacks, even if there's nothing to draw so they aren't waiting
+ // indefinitely
+ for (auto& func : mFrameCompleteCallbacks) {
+ std::invoke(func, mFrameNumber);
+ }
+ mFrameCompleteCallbacks.clear();
return;
}