Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 92bfb3d6a3cf230ce5cc86dc21238ab1ee03e6b3..3facf1a62be1341eb35cd8f8ba325a03d2a6c27f 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -45,6 +45,7 @@ |
#include "third_party/WebKit/public/web/WebStorageQuotaCallbacks.h" |
#include "third_party/WebKit/public/web/WebUserGestureIndicator.h" |
#include "third_party/WebKit/public/web/WebView.h" |
+#include "webkit/child/site_isolation_policy.h" |
#include "webkit/child/weburlresponse_extradata_impl.h" |
using WebKit::WebDataSource; |
@@ -67,6 +68,8 @@ using WebKit::WebVector; |
using WebKit::WebView; |
using base::Time; |
using base::TimeDelta; |
+ |
+using webkit_glue::SiteIsolationPolicy; |
using webkit_glue::WebURLResponseExtraDataImpl; |
namespace content { |
@@ -372,6 +375,8 @@ void RenderFrameImpl::didFailProvisionalLoad( |
// * MaybeLoadAlternateErrorPage |
// * LoadNavigationErrorPage |
render_view_->didFailProvisionalLoad(frame, error); |
+ |
+ SiteIsolationPolicy::DidFinishResourceLoadForUrl(error.unreachableURL); |
} |
void RenderFrameImpl::didCommitProvisionalLoad(WebKit::WebFrame* frame, |
@@ -441,6 +446,8 @@ void RenderFrameImpl::didFailLoad(WebKit::WebFrame* frame, |
const WebKit::WebURLError& error) { |
// TODO(nasko): Move implementation here. No state needed. |
render_view_->didFailLoad(frame, error); |
+ |
+ SiteIsolationPolicy::DidFinishResourceLoadForUrl(error.unreachableURL); |
} |
void RenderFrameImpl::didFinishLoad(WebKit::WebFrame* frame) { |
@@ -598,12 +605,19 @@ void RenderFrameImpl::willSendRequest( |
if (!render_view_->renderer_preferences_.enable_referrers) |
request.clearHTTPHeaderField("Referer"); |
+ |
+ SiteIsolationPolicy::WillSendRequest(identifier, request.targetType()); |
} |
void RenderFrameImpl::didReceiveResponse( |
WebKit::WebFrame* frame, |
unsigned identifier, |
const WebKit::WebURLResponse& response) { |
+ |
+ // Calling will update bookkeeping related to the response for later |
+ // use. |
+ SiteIsolationPolicy::DidReceiveResponse(frame, identifier, response); |
+ |
// Only do this for responses that correspond to a provisional data source |
// of the top-most frame. If we have a provisional data source, then we |
// can't have any sub-resources yet, so we know that this response must |
@@ -653,6 +667,8 @@ void RenderFrameImpl::didFinishResourceLoad(WebKit::WebFrame* frame, |
// Needed methods: |
// * LoadNavigationErrorPage |
render_view_->didFinishResourceLoad(frame, identifier); |
+ |
+ SiteIsolationPolicy::DidFinishResourceLoad(identifier); |
} |
void RenderFrameImpl::didLoadResourceFromMemoryCache( |