Index: third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
diff --git a/third_party/WebKit/Source/core/loader/DocumentLoader.cpp b/third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
index c264aa70e61d854b124a7713dee1358429a496bf..6d82169a519546b1057e59f98edab6fc98ca4a6b 100644 |
--- a/third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
+++ b/third_party/WebKit/Source/core/loader/DocumentLoader.cpp |
@@ -107,6 +107,7 @@ DocumentLoader::DocumentLoader(LocalFrame* frame, |
ClientRedirectPolicy::ClientRedirect), |
m_replacesCurrentHistoryItem(false), |
m_dataReceived(false), |
+ m_mainResourceIdentifier(0), |
m_navigationType(NavigationTypeOther), |
m_documentLoadTiming(*this), |
m_timeOfLastDataReceived(0.0), |
@@ -145,7 +146,11 @@ DEFINE_TRACE(DocumentLoader) { |
} |
unsigned long DocumentLoader::mainResourceIdentifier() const { |
- return m_mainResource ? m_mainResource->identifier() : 0; |
+ return m_mainResourceIdentifier; |
+} |
+ |
+ResourceTimingInfo* DocumentLoader::getMainResourceTimingInfo() const { |
+ return fetcher()->getMainResourceTimingInfo(mainResourceIdentifier()); |
} |
const ResourceRequest& DocumentLoader::originalRequest() const { |
@@ -718,6 +723,7 @@ void DocumentLoader::startLoadingMainResource() { |
mainResourceLoadOptions); |
m_mainResource = |
RawResource::fetchMainResource(fetchRequest, fetcher(), m_substituteData); |
+ m_mainResourceIdentifier = m_mainResource ? m_mainResource->identifier() : 0; |
// PlzNavigate: |
// The final access checks are still performed here, potentially rejecting |