diff options
author | 2019-12-20 12:06:49 -0800 | |
---|---|---|
committer | 2019-12-20 12:06:49 -0800 | |
commit | 2c09b198fec764d899570cf4f8d21c7cf9abd0f9 (patch) | |
tree | 58b0308e6c0b53c4651268647999d2277574c162 /libs/gui/BufferQueueProducer.cpp | |
parent | 8567047a41e1c4a2d0dfb5e2b7cc9a70659b541e (diff) | |
parent | 3d04184bd246d959af655e5dab63bf03fd5771ba (diff) |
Merge "Change the position of addAndGetFrameTimestamps when queueBuffer"
am: 3d04184bd2
Change-Id: I5200f775bbb09e2911b0ee39f2b1b9ad42857cf9
Diffstat (limited to 'libs/gui/BufferQueueProducer.cpp')
-rw-r--r-- | libs/gui/BufferQueueProducer.cpp | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/libs/gui/BufferQueueProducer.cpp b/libs/gui/BufferQueueProducer.cpp index 92ab41019e..3efb1b6acb 100644 --- a/libs/gui/BufferQueueProducer.cpp +++ b/libs/gui/BufferQueueProducer.cpp @@ -981,6 +981,17 @@ status_t BufferQueueProducer::queueBuffer(int slot, item.mGraphicBuffer.clear(); } + // Update and get FrameEventHistory. + nsecs_t postedTime = systemTime(SYSTEM_TIME_MONOTONIC); + NewFrameEventsEntry newFrameEventsEntry = { + currentFrameNumber, + postedTime, + requestedPresentTimestamp, + std::move(acquireFenceTime) + }; + addAndGetFrameTimestamps(&newFrameEventsEntry, + getFrameTimestamps ? &output->frameTimestamps : nullptr); + // Call back without the main BufferQueue lock held, but with the callback // lock held so we can ensure that callbacks occur in order @@ -1010,17 +1021,6 @@ status_t BufferQueueProducer::queueBuffer(int slot, mCallbackCondition.notify_all(); } - // Update and get FrameEventHistory. - nsecs_t postedTime = systemTime(SYSTEM_TIME_MONOTONIC); - NewFrameEventsEntry newFrameEventsEntry = { - currentFrameNumber, - postedTime, - requestedPresentTimestamp, - std::move(acquireFenceTime) - }; - addAndGetFrameTimestamps(&newFrameEventsEntry, - getFrameTimestamps ? &output->frameTimestamps : nullptr); - // Wait without lock held if (connectedApi == NATIVE_WINDOW_API_EGL) { // Waiting here allows for two full buffers to be queued but not a |