Index: third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp |
diff --git a/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp b/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp |
index 5f21df77cecdece5778751731868621b2f203f17..fc8e190107d8cfd769b5e67b0469559e7a15b478 100644 |
--- a/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp |
+++ b/third_party/WebKit/Source/platform/loader/fetch/ResourceFetcher.cpp |
@@ -312,13 +312,13 @@ void ResourceFetcher::requestLoadStarted(unsigned long identifier, |
!m_validatedURLs.contains(request.resourceRequest().url())) { |
// Resources loaded from memory cache should be reported the first time |
// they're used. |
- std::unique_ptr<ResourceTimingInfo> info = ResourceTimingInfo::create( |
+ RefPtr<ResourceTimingInfo> info = ResourceTimingInfo::create( |
request.options().initiatorInfo.name, monotonicallyIncreasingTime(), |
resource->getType() == Resource::MainResource); |
populateTimingInfo(info.get(), resource); |
info->clearLoadTimings(); |
info->setLoadFinishTime(info->initialTime()); |
- m_scheduledResourceTimingReports.push_back(std::move(info)); |
+ m_scheduledResourceTimingReports.push_back(info.release()); |
if (!m_resourceTimingReportTimer.isActive()) |
m_resourceTimingReportTimer.startOneShot(0, BLINK_FROM_HERE); |
} |
@@ -633,7 +633,7 @@ Resource* ResourceFetcher::requestResource( |
void ResourceFetcher::resourceTimingReportTimerFired(TimerBase* timer) { |
DCHECK_EQ(timer, &m_resourceTimingReportTimer); |
- Vector<std::unique_ptr<ResourceTimingInfo>> timingReports; |
+ Vector<RefPtr<ResourceTimingInfo>> timingReports; |
timingReports.swap(m_scheduledResourceTimingReports); |
for (const auto& timingInfo : timingReports) |
context().addResourceTiming(*timingInfo); |
@@ -670,6 +670,10 @@ void ResourceFetcher::initializeResourceRequest( |
(type == Resource::MainResource) ? FetchMainResource : FetchSubresource); |
} |
+ResourceTimingInfo* ResourceFetcher::getNavigationTimingInfo() { |
Kunihiko Sakamoto
2017/02/13 08:22:29
Why is this moved from line 1134?
sunjian
2017/02/14 21:29:03
I think i deleted it because i thought i didn't ne
Kunihiko Sakamoto
2017/02/15 06:35:30
I see. Can you move it back to original position,
sunjian
2017/02/15 20:30:28
Done.
|
+ return m_navigationTimingInfo.get(); |
+} |
+ |
void ResourceFetcher::initializeRevalidation( |
ResourceRequest& revalidatingRequest, |
Resource* resource) { |
@@ -761,7 +765,7 @@ void ResourceFetcher::storePerformanceTimingInitiatorInformation( |
ResourceTimingInfo::create(fetchInitiator, startTime, isMainResource); |
} |
- std::unique_ptr<ResourceTimingInfo> info = |
+ RefPtr<ResourceTimingInfo> info = |
ResourceTimingInfo::create(fetchInitiator, startTime, isMainResource); |
if (resource->isCacheValidator()) { |
@@ -773,7 +777,7 @@ void ResourceFetcher::storePerformanceTimingInitiatorInformation( |
if (!isMainResource || |
context().updateTimingInfoForIFrameNavigation(info.get())) { |
- m_resourceTimingInfoMap.add(resource, std::move(info)); |
+ m_resourceTimingInfoMap.add(resource, info.release()); |
} |
} |
@@ -1131,10 +1135,6 @@ ArchiveResource* ResourceFetcher::createArchive(Resource* resource) { |
return m_archive ? m_archive->mainResource() : nullptr; |
} |
-ResourceTimingInfo* ResourceFetcher::getNavigationTimingInfo() { |
- return m_navigationTimingInfo.get(); |
-} |
- |
void ResourceFetcher::handleLoadCompletion(Resource* resource) { |
context().didLoadResource(resource); |
@@ -1169,7 +1169,7 @@ void ResourceFetcher::handleLoaderFinish(Resource* resource, |
encodedDataLength == -1 ? 0 : encodedDataLength); |
} |
} |
- if (std::unique_ptr<ResourceTimingInfo> info = |
+ if (RefPtr<ResourceTimingInfo> info = |
m_resourceTimingInfoMap.take(resource)) { |
// Store redirect responses that were packed inside the final response. |
addRedirectsToTimingInfo(resource, info.get()); |