Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 593d5755c04a9acec50d2382b64e560eafe1ec75..ec6d667b37cf628a51653ab33f68799e2e21c81c 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -66,6 +66,7 @@ |
#include "content/common/site_isolation_policy.h" |
#include "content/common/swapped_out_messages.h" |
#include "content/common/view_messages.h" |
+#include "content/public/common/appcache_info.h" |
#include "content/public/common/associated_interface_provider.h" |
#include "content/public/common/bindings_policy.h" |
#include "content/public/common/browser_side_navigation_policy.h" |
@@ -1107,6 +1108,7 @@ RenderFrameImpl::RenderFrameImpl(const CreateParams& params) |
frame_binding_(this), |
host_zoom_binding_(this), |
has_accessed_initial_document_(false), |
+ appcache_host_id_(kAppCacheNoHostId), |
weak_factory_(this) { |
// We don't have a service_manager::Connection at this point, so use empty |
// identity/specs. |
@@ -2853,7 +2855,8 @@ blink::WebApplicationCacheHost* RenderFrameImpl::createApplicationCacheHost( |
return NULL; |
return new RendererWebApplicationCacheHostImpl( |
RenderViewImpl::FromWebView(frame_->view()), client, |
- RenderThreadImpl::current()->appcache_dispatcher()->backend_proxy()); |
+ RenderThreadImpl::current()->appcache_dispatcher()->backend_proxy(), |
+ appcache_host_id_); |
} |
blink::WebWorkerContentSettingsClientProxy* |
@@ -4999,8 +5002,13 @@ void RenderFrameImpl::OnCommitNavigation( |
request_params.has_user_gesture ? new blink::WebScopedUserGesture(frame_) |
: nullptr); |
+ appcache_host_id_ = request_params.appcache_host_id; |
+ |
NavigateInternal(common_params, StartNavigationParams(), request_params, |
std::move(stream_override)); |
+ |
+ appcache_host_id_ = kAppCacheNoHostId; |
+ |
browser_side_navigation_pending_ = false; |
} |