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

Commit eb24079b authored by Jorim Jaggi's avatar Jorim Jaggi Committed by Android (Google) Code Review
Browse files

Merge "Ensure reportFrameMetrics not being called on deleted instance" into sc-dev

parents cf28c485 e4a52711
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -680,6 +680,7 @@ void CanvasContext::onSurfaceStatsAvailable(void* context, ASurfaceControl* cont
        frameInfo->set(FrameInfoIndex::FrameCompleted) = std::max(gpuCompleteTime,
                frameInfo->get(FrameInfoIndex::SwapBuffersCompleted));
        frameInfo->set(FrameInfoIndex::GpuCompleted) = gpuCompleteTime;
        std::lock_guard(instance->mFrameMetricsReporterMutex);
        instance->mJankTracker.finishFrame(*frameInfo, instance->mFrameMetricsReporter);
    }
}
+2 −0
Original line number Diff line number Diff line
@@ -170,6 +170,7 @@ public:
        if (mFrameMetricsReporter.get() != nullptr) {
            mFrameMetricsReporter->removeObserver(observer);
            if (!mFrameMetricsReporter->hasObservers()) {
                std::lock_guard lock(mFrameMetricsReporterMutex);
                mFrameMetricsReporter.reset(nullptr);
            }
        }
@@ -295,6 +296,7 @@ private:
    JankTracker mJankTracker;
    FrameInfoVisualizer mProfiler;
    std::unique_ptr<FrameMetricsReporter> mFrameMetricsReporter;
    std::mutex mFrameMetricsReporterMutex;

    std::set<RenderNode*> mPrefetchedLayers;