summaryrefslogtreecommitdiffstats
path: root/dom/base/nsContentUtils.cpp
diff options
context:
space:
mode:
authorMoonchild <mcwerewolf@gmail.com>2018-05-01 09:53:46 +0200
committerGitHub <noreply@github.com>2018-05-01 09:53:46 +0200
commitae45e61da06ba989fcbb856183d9578d4d4f51ed (patch)
tree5c7dea17ce684c1cce57011ef487370c22d0e677 /dom/base/nsContentUtils.cpp
parentfefce8f7ccbc476cfc46e61b01eff069346d3c73 (diff)
parentcc4036a9cd56d504667c07fe215e61b22ab0e1f4 (diff)
downloadUXP-ae45e61da06ba989fcbb856183d9578d4d4f51ed.tar
UXP-ae45e61da06ba989fcbb856183d9578d4d4f51ed.tar.gz
UXP-ae45e61da06ba989fcbb856183d9578d4d4f51ed.tar.lz
UXP-ae45e61da06ba989fcbb856183d9578d4d4f51ed.tar.xz
UXP-ae45e61da06ba989fcbb856183d9578d4d4f51ed.zip
Merge pull request #311 from janekptacijarabaci/security_blocking_data_2
Use asyncOpen2() for docshell loads
Diffstat (limited to 'dom/base/nsContentUtils.cpp')
-rw-r--r--dom/base/nsContentUtils.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/dom/base/nsContentUtils.cpp b/dom/base/nsContentUtils.cpp
index bc8cea35a..34c7d23b8 100644
--- a/dom/base/nsContentUtils.cpp
+++ b/dom/base/nsContentUtils.cpp
@@ -5104,7 +5104,7 @@ nsContentUtils::TriggerLink(nsIContent *aContent, nsPresContext *aPresContext,
handler->OnLinkClick(aContent, aLinkURI,
fileName.IsVoid() ? aTargetSpec.get() : EmptyString().get(),
- fileName, nullptr, nullptr, aIsTrusted);
+ fileName, nullptr, nullptr, aIsTrusted, aContent->NodePrincipal());
}
}
@@ -9776,9 +9776,13 @@ nsContentUtils::AttemptLargeAllocationLoad(nsIHttpChannel* aChannel)
rv = aChannel->GetReferrer(getter_AddRefs(referrer));
NS_ENSURE_SUCCESS(rv, false);
+ nsCOMPtr<nsILoadInfo> loadInfo = aChannel->GetLoadInfo();
+ nsCOMPtr<nsIPrincipal> triggeringPrincipal = loadInfo->TriggeringPrincipal();
+
// Actually perform the cross process load
bool reloadSucceeded = false;
- rv = wbc3->ReloadInFreshProcess(docShell, uri, referrer, &reloadSucceeded);
+ rv = wbc3->ReloadInFreshProcess(docShell, uri, referrer,
+ triggeringPrincipal, &reloadSucceeded);
NS_ENSURE_SUCCESS(rv, false);
return reloadSucceeded;