Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 23cd3075 authored by Rachel Lee's avatar Rachel Lee Committed by Automerger Merge Worker
Browse files

Merge "Return frame period from vsynctracker." into tm-dev am: 4d035493 am:...

Merge "Return frame period from vsynctracker." into tm-dev am: 4d035493 am: fd275d2e am: 4ff178c5

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/17699150



Change-Id: Ibe9bbc7d983e52a74a4e79fc5f38cd7d712edc57
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 3abe1e1f 4ff178c5
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -167,18 +167,19 @@ impl::EventThread::ThrottleVsyncCallback Scheduler::makeThrottleVsyncCallback()
impl::EventThread::GetVsyncPeriodFunction Scheduler::makeGetVsyncPeriodFunction() const {
    return [this](uid_t uid) {
        const Fps refreshRate = holdRefreshRateConfigs()->getActiveMode()->getFps();
        const nsecs_t basePeriod = refreshRate.getPeriodNsecs();
        const auto currentPeriod =
                mVsyncSchedule->getTracker().currentPeriod() ?: refreshRate.getPeriodNsecs();

        const auto frameRate = getFrameRateOverride(uid);
        if (!frameRate.has_value()) {
            return basePeriod;
            return currentPeriod;
        }

        const auto divisor = RefreshRateConfigs::getFrameRateDivisor(refreshRate, *frameRate);
        if (divisor <= 1) {
            return basePeriod;
            return currentPeriod;
        }
        return basePeriod * divisor;
        return currentPeriod * divisor;
    };
}