Skip to content

Commit

Permalink
[COOP] Access reporting [9/N] Filter by virtual BCG
Browse files Browse the repository at this point in the history
This patch fixes a TODO. A COOP access report is sent when two windows from
different virtual browsing context groups tries to access each other.

COOP access reporting:
[1/N] https://chromium-review.googlesource.com/c/chromium/src/+/2264294
[2/N] https://chromium-review.googlesource.com/c/chromium/src/+/2270185
[3/N] https://chromium-review.googlesource.com/c/chromium/src/+/2270472
[4/N] https://chromium-review.googlesource.com/c/chromium/src/+/2273120
[5/N] https://chromium-review.googlesource.com/c/chromium/src/+/2309433
[6/N] https://chromium-review.googlesource.com/c/chromium/src/+/2308715
[7/N] https://chromium-review.googlesource.com/c/chromium/src/+/2309697
[8/N] https://chromium-review.googlesource.com/c/chromium/src/+/2275889
[9/N] this patch.

Bug: 1090273
Change-Id: I249183839ee8a5b93b6e8d35a033a99a4942b62b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2310530
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Reviewed-by: Camille Lamy <clamy@chromium.org>
Reviewed-by: Pâris Meuleman <pmeuleman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#790867}
  • Loading branch information
ArthurSonzogni authored and Commit Bot committed Jul 22, 2020
1 parent 0dbb416 commit 6f8564e
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions content/browser/net/cross_origin_opener_policy_reporter.cc
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,8 @@ std::vector<FrameTreeNode*> CollectOtherWindowForCoopAccess(
FrameTreeNode* frame) {
DCHECK(frame->IsMainFrame());
SiteInstance* site_instance = frame->current_frame_host()->GetSiteInstance();
int virtual_browsing_context_group =
frame->current_frame_host()->virtual_browsing_context_group();

std::vector<FrameTreeNode*> out;
for (WebContentsImpl* wc : WebContentsImpl::GetAllWebContents()) {
Expand All @@ -92,13 +94,11 @@ std::vector<FrameTreeNode*> CollectOtherWindowForCoopAccess(
if (!rfh->GetSiteInstance()->IsRelatedSiteInstance(site_instance))
continue;

// TODO(arthursonzogni): Filter out window from the same virtual browsing
// context group.
FrameTreeNode* ftn = rfh->frame_tree_node();
if (ftn == frame)
// Filter out windows from the same virtual browsing context group.
if (rfh->virtual_browsing_context_group() == virtual_browsing_context_group)
continue;

out.push_back(ftn);
out.push_back(rfh->frame_tree_node());
}
return out;
}
Expand Down

0 comments on commit 6f8564e

Please sign in to comment.