Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1297)

Unified Diff: content/browser/frame_host/render_frame_host_impl.cc

Issue 2857213005: PlzNavigate: implement process reuse for ServiceWorkers (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/frame_host/render_frame_host_impl.cc
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
index 4d7f92c09c1d0f73fc9e6d64ca1e6d46ae621ee2..32da13d938872c1b7a392750a9ed7e0dab748c77 100644
--- a/content/browser/frame_host/render_frame_host_impl.cc
+++ b/content/browser/frame_host/render_frame_host_impl.cc
@@ -476,6 +476,12 @@ RenderFrameHostImpl::~RenderFrameHostImpl() {
// RenderFrameHost during cleanup.
ClearAllWebUI();
+ if (!last_committed_url_.is_empty()) {
Charlie Reis 2017/05/15 03:41:52 I wonder whether using last_committed_url_ here is
clamy 2017/05/16 14:50:45 I'm now storing the last_committed_site_url_. I'm
+ RenderProcessHostImpl::RemoveFrameWithSite(
+ frame_tree_node_->navigator()->GetController()->GetBrowserContext(),
+ GetProcess(), last_committed_url_);
+ }
+
GetProcess()->RemoveRoute(routing_id_);
g_routing_id_frame_map.Get().erase(
RenderFrameHostID(GetProcess()->GetID(), routing_id_));
@@ -1160,6 +1166,21 @@ void RenderFrameHostImpl::SetLastCommittedOrigin(const url::Origin& origin) {
CSPContext::SetSelf(origin);
}
+void RenderFrameHostImpl::SetLastCommittedUrl(const GURL& url) {
+ BrowserContext* browser_context =
+ frame_tree_node_->navigator()->GetController()->GetBrowserContext();
+
+ if (!last_committed_url_.is_empty()) {
nasko 2017/05/05 05:22:00 Since we are registering only origins, should we e
Charlie Reis 2017/05/15 03:41:52 Yes, I agree that we need to be careful about what
clamy 2017/05/16 14:50:45 I'm now storing the site_url as suggested above, s
+ RenderProcessHostImpl::RemoveFrameWithSite(browser_context, GetProcess(),
+ last_committed_url_);
+ }
+
+ last_committed_url_ = url;
+
+ RenderProcessHostImpl::AddFrameWithSite(browser_context, GetProcess(),
+ last_committed_url_);
+}
+
void RenderFrameHostImpl::OnDetach() {
frame_tree_->RemoveFrame(frame_tree_node_);
}

Powered by Google App Engine
This is Rietveld 408576698