mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-19 08:15:31 +00:00
Bug 1617889 - Fix COOP comparison check r=michal
Differential Revision: https://phabricator.services.mozilla.com/D64083 --HG-- extra : moz-landing-system : lando
This commit is contained in:
parent
2aec0c4d42
commit
8f8a2e2547
@ -166,6 +166,8 @@ already_AddRefed<BrowsingContext> BrowsingContext::CreateDetached(
|
||||
}
|
||||
context->mFields.SetWithoutSyncing<IDX_EmbedderPolicy>(
|
||||
nsILoadInfo::EMBEDDER_POLICY_NULL);
|
||||
context->mFields.SetWithoutSyncing<IDX_OpenerPolicy>(
|
||||
nsILoadInfo::OPENER_POLICY_UNSAFE_NONE);
|
||||
|
||||
BrowsingContext* inherit = aParent ? aParent : aOpener;
|
||||
if (inherit) {
|
||||
|
@ -7424,14 +7424,12 @@ static bool CompareCrossOriginOpenerPolicies(
|
||||
return true;
|
||||
}
|
||||
|
||||
if (documentPolicy != resultPolicy) {
|
||||
if (documentPolicy == nsILoadInfo::OPENER_POLICY_UNSAFE_NONE ||
|
||||
resultPolicy == nsILoadInfo::OPENER_POLICY_UNSAFE_NONE) {
|
||||
return false;
|
||||
}
|
||||
// For the next checks the document and result will have matching policies.
|
||||
|
||||
// We either check if they are same origin or same site.
|
||||
if ((documentPolicy & nsILoadInfo::OPENER_POLICY_SAME_ORIGIN) &&
|
||||
documentOrigin->Equals(resultOrigin)) {
|
||||
if (documentPolicy == resultPolicy && documentOrigin->Equals(resultOrigin)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user