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

Issue 660083003: Fix support for multiple frames per SiteInstance in CreateProxiesForSiteInstance (Closed)

Created:
6 years, 2 months ago by alexmos
Modified:
6 years, 2 months ago
Reviewers:
Charlie Reis, nasko
CC:
chromium-reviews, darin-cc_chromium.org, nasko+codewatch_chromium.org, jam, creis+watch_chromium.org, site-isolation-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Fix support for multiple frames per SiteInstance in CreateProxiesForSiteInstance. When a new cross-site frame is created, RFHM::CreateProxiesForSiteInstance walks the frame tree and creates proxies for the new frame in other nodes' SiteInstances. This traversal currently hits this CHECK in RFHM::CreateRenderFrameProxy in cases where the new frame is added to a SiteInstance that already has other frames: CHECK_NE(instance, render_frame_host_->GetSiteInstance()); For example, if site A embeds two frames, B1 and B2, both pointing to site B, we hit this when we are visiting B1's frame tree node to create a proxy for B2, since B2's and B1's SiteInstance is the same. This CL ensures that we aren't trying to create a proxy at frame tree nodes that share the new frame's SiteInstance. BUG=None Committed: https://crrev.com/cfd77e1a1875a1a8abecf22c012e7b18db80e61e Cr-Commit-Position: refs/heads/master@{#300604}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Address comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+6 lines, -1 line) Patch
M content/browser/frame_host/frame_tree.cc View 1 1 chunk +6 lines, -1 line 0 comments Download

Messages

Total messages: 11 (3 generated)
alexmos
Nasko, could you please take a look?
6 years, 2 months ago (2014-10-21 22:05:28 UTC) #2
nasko
LGTM with a nit. https://codereview.chromium.org/660083003/diff/1/content/browser/frame_host/frame_tree.cc File content/browser/frame_host/frame_tree.cc (right): https://codereview.chromium.org/660083003/diff/1/content/browser/frame_host/frame_tree.cc#newcode61 content/browser/frame_host/frame_tree.cc:61: if (current_instance != instance.get()) { ...
6 years, 2 months ago (2014-10-21 22:25:23 UTC) #3
Charlie Reis
https://codereview.chromium.org/660083003/diff/1/content/browser/frame_host/frame_tree.cc File content/browser/frame_host/frame_tree.cc (right): https://codereview.chromium.org/660083003/diff/1/content/browser/frame_host/frame_tree.cc#newcode60 content/browser/frame_host/frame_tree.cc:60: node->render_manager()->current_frame_host()->GetSiteInstance(); What about the SiteInstances that already have RenderFrameProxyHosts ...
6 years, 2 months ago (2014-10-21 22:31:27 UTC) #5
alexmos
On 2014/10/21 22:25:23, nasko wrote: > LGTM with a nit. > > https://codereview.chromium.org/660083003/diff/1/content/browser/frame_host/frame_tree.cc > File ...
6 years, 2 months ago (2014-10-21 22:47:09 UTC) #6
Charlie Reis
Thanks! LGTM.
6 years, 2 months ago (2014-10-21 22:55:29 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/660083003/20001
6 years, 2 months ago (2014-10-21 23:11:14 UTC) #9
commit-bot: I haz the power
Committed patchset #2 (id:20001)
6 years, 2 months ago (2014-10-22 01:37:50 UTC) #10
commit-bot: I haz the power
6 years, 2 months ago (2014-10-22 04:04:55 UTC) #11
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/cfd77e1a1875a1a8abecf22c012e7b18db80e61e
Cr-Commit-Position: refs/heads/master@{#300604}

Powered by Google App Engine
This is Rietveld 408576698