Index: content/browser/loader/cross_site_resource_handler.cc |
diff --git a/content/browser/loader/cross_site_resource_handler.cc b/content/browser/loader/cross_site_resource_handler.cc |
index 29dc77ea6b08b14babbce8b77910e99e17e32ab8..d778f139d69a80dadb89b4336f5c8e7cc2dd0843 100644 |
--- a/content/browser/loader/cross_site_resource_handler.cc |
+++ b/content/browser/loader/cross_site_resource_handler.cc |
@@ -87,11 +87,13 @@ void OnCrossSiteResponseHelper(const CrossSiteResponseParams& params) { |
void OnDeferredAfterResponseStartedHelper( |
const GlobalRequestID& global_request_id, |
- int render_frame_id) { |
+ int render_frame_id, |
+ const TransitionLayerData& transition_layer_data) { |
RenderFrameHostImpl* rfh = |
RenderFrameHostImpl::FromID(global_request_id.child_id, render_frame_id); |
if (rfh) |
- rfh->OnDeferredAfterResponseStarted(global_request_id); |
+ rfh->OnDeferredAfterResponseStarted(global_request_id, |
+ transition_layer_data); |
} |
bool CheckNavigationPolicyOnUI(GURL url, int process_id, int render_frame_id) { |
@@ -232,13 +234,21 @@ bool CrossSiteResourceHandler::OnNavigationTransitionResponseStarted( |
bool* defer) { |
ResourceRequestInfoImpl* info = GetRequestInfo(); |
+ TransitionLayerData transition_layer_data; |
+ if (response_ && response_->head.headers) |
+ TransitionRequestManager::ParseTransitionStylesheetsFromHeaders( |
+ response_->head.headers, transition_layer_data, request()->url()); |
+ |
GlobalRequestID global_id(info->GetChildID(), info->GetRequestID()); |
int render_frame_id = info->GetRenderFrameID(); |
BrowserThread::PostTask( |
BrowserThread::UI, |
FROM_HERE, |
base::Bind( |
- &OnDeferredAfterResponseStartedHelper, global_id, render_frame_id)); |
+ &OnDeferredAfterResponseStartedHelper, |
+ global_id, |
+ render_frame_id, |
+ transition_layer_data)); |
*defer = true; |
OnDidDefer(); |