| Index: chrome/renderer/page_load_metrics/page_timing_metrics_sender.cc
|
| diff --git a/chrome/renderer/page_load_metrics/page_timing_metrics_sender.cc b/chrome/renderer/page_load_metrics/page_timing_metrics_sender.cc
|
| index f4a88559e9c5980815b4c5eca7d724d0f968a8e8..e1d242448a98d1f55934e4453edc0528d52fffc3 100644
|
| --- a/chrome/renderer/page_load_metrics/page_timing_metrics_sender.cc
|
| +++ b/chrome/renderer/page_load_metrics/page_timing_metrics_sender.cc
|
| @@ -23,13 +23,13 @@ PageTimingMetricsSender::PageTimingMetricsSender(
|
| IPC::Sender* ipc_sender,
|
| int routing_id,
|
| std::unique_ptr<base::Timer> timer,
|
| - const PageLoadTiming& initial_timing)
|
| + mojom::PageLoadTimingPtr initial_timing)
|
| : ipc_sender_(ipc_sender),
|
| routing_id_(routing_id),
|
| timer_(std::move(timer)),
|
| - last_timing_(initial_timing),
|
| - metadata_(PageLoadMetadata()) {
|
| - if (!initial_timing.IsEmpty()) {
|
| + last_timing_(std::move(initial_timing)),
|
| + metadata_(mojom::PageLoadMetadata()) {
|
| + if (!IsEmpty(*last_timing_)) {
|
| EnsureSendTimer();
|
| }
|
| }
|
| @@ -51,19 +51,19 @@ void PageTimingMetricsSender::DidObserveLoadingBehavior(
|
| EnsureSendTimer();
|
| }
|
|
|
| -void PageTimingMetricsSender::Send(const PageLoadTiming& timing) {
|
| - if (timing == last_timing_)
|
| +void PageTimingMetricsSender::Send(mojom::PageLoadTimingPtr timing) {
|
| + if (last_timing_->Equals(*timing))
|
| return;
|
|
|
| // We want to make sure that each PageTimingMetricsSender is associated
|
| // with a distinct page navigation. Because we reset the object on commit,
|
| // we can trash last_timing_ on a provisional load before SendNow() fires.
|
| - if (!last_timing_.navigation_start.is_null() &&
|
| - last_timing_.navigation_start != timing.navigation_start) {
|
| + if (!last_timing_->navigation_start.is_null() &&
|
| + last_timing_->navigation_start != timing->navigation_start) {
|
| return;
|
| }
|
|
|
| - last_timing_ = timing;
|
| + last_timing_ = std::move(timing);
|
| EnsureSendTimer();
|
| }
|
|
|
| @@ -82,7 +82,7 @@ void PageTimingMetricsSender::EnsureSendTimer() {
|
| void PageTimingMetricsSender::SendNow() {
|
| have_sent_ipc_ = true;
|
| ipc_sender_->Send(new PageLoadMetricsMsg_TimingUpdated(
|
| - routing_id_, last_timing_, metadata_));
|
| + routing_id_, *last_timing_, metadata_));
|
| }
|
|
|
| } // namespace page_load_metrics
|
|
|