diff options
Diffstat (limited to 'libs/hwui/JankTracker.cpp')
-rw-r--r-- | libs/hwui/JankTracker.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libs/hwui/JankTracker.cpp b/libs/hwui/JankTracker.cpp index 1e5be6c3eed7..4b0ddd2fa2ef 100644 --- a/libs/hwui/JankTracker.cpp +++ b/libs/hwui/JankTracker.cpp @@ -201,8 +201,9 @@ void JankTracker::finishFrame(FrameInfo& frame, std::unique_ptr<FrameMetricsRepo // If we are in triple buffering, we have enough buffers in queue to sustain a single frame // drop without jank, so adjust the frame interval to the deadline. if (isTripleBuffered) { - deadline += frameInterval; - frame.set(FrameInfoIndex::FrameDeadline) += frameInterval; + int64_t originalDeadlineDuration = deadline - frame[FrameInfoIndex::IntendedVsync]; + deadline = mNextFrameStartUnstuffed + originalDeadlineDuration; + frame.set(FrameInfoIndex::FrameDeadline) = deadline; } // If we hit the deadline, cool! |