Bug 1534351 - HTMLInputElement should always allow popups for system principal, r=smaug

Differential Revision: https://phabricator.services.mozilla.com/D26671
This commit is contained in:
Andrea Marchesini
2019-04-09 14:25:58 +00:00
parent 9ca031c723
commit 6b552fd8ae
5 changed files with 14 additions and 5 deletions

View File

@@ -9622,7 +9622,10 @@ nsresult nsDocShell::DoURILoad(nsDocShellLoadState* aLoadState,
// page is allowed to open them without abuse regardless of allowed
// events
if (PopupBlocker::GetPopupControlState() <= PopupBlocker::openBlocked) {
popupBlocked = !PopupBlocker::TryUsePopupOpeningToken();
nsCOMPtr<nsINode> loadingNode =
mScriptGlobal->AsOuter()->GetFrameElementInternal();
popupBlocked = !PopupBlocker::TryUsePopupOpeningToken(
loadingNode ? loadingNode->NodePrincipal() : nullptr);
} else if (mIsActive &&
PopupBlocker::ConsumeTimerTokenForExternalProtocolIframe()) {
popupBlocked = false;