mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-30 20:37:31 +09:00
Bug 1332310 - Update AddState and CreateContentViewer to provide an accurate triggeringPrincipal for creating a history entry
This commit is contained in:
parent
dee826b7ee
commit
ea7e6d41a3
1 changed files with 10 additions and 2 deletions
|
|
@ -9147,8 +9147,13 @@ nsDocShell::CreateContentViewer(const nsACString& aContentType,
|
||||||
|
|
||||||
// Make sure we have a URI to set currentURI.
|
// Make sure we have a URI to set currentURI.
|
||||||
nsCOMPtr<nsIURI> failedURI;
|
nsCOMPtr<nsIURI> failedURI;
|
||||||
|
nsCOMPtr<nsIPrincipal> triggeringPrincipal;
|
||||||
if (failedChannel) {
|
if (failedChannel) {
|
||||||
NS_GetFinalChannelURI(failedChannel, getter_AddRefs(failedURI));
|
NS_GetFinalChannelURI(failedChannel, getter_AddRefs(failedURI));
|
||||||
|
} else {
|
||||||
|
// if there is no failed channel we have to explicitly provide
|
||||||
|
// a triggeringPrincipal for the history entry.
|
||||||
|
triggeringPrincipal = nsContentUtils::GetSystemPrincipal();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!failedURI) {
|
if (!failedURI) {
|
||||||
|
|
@ -9169,7 +9174,8 @@ nsDocShell::CreateContentViewer(const nsACString& aContentType,
|
||||||
// Create an shistory entry for the old load.
|
// Create an shistory entry for the old load.
|
||||||
if (failedURI) {
|
if (failedURI) {
|
||||||
bool errorOnLocationChangeNeeded = OnNewURI(
|
bool errorOnLocationChangeNeeded = OnNewURI(
|
||||||
failedURI, failedChannel, nullptr, nullptr, mLoadType, false, false, false);
|
failedURI, failedChannel, triggeringPrincipal,
|
||||||
|
nullptr, mLoadType, false, false, false);
|
||||||
|
|
||||||
if (errorOnLocationChangeNeeded) {
|
if (errorOnLocationChangeNeeded) {
|
||||||
FireOnLocationChange(this, failedChannel, failedURI,
|
FireOnLocationChange(this, failedChannel, failedURI,
|
||||||
|
|
@ -12126,7 +12132,9 @@ nsDocShell::AddState(JS::Handle<JS::Value> aData, const nsAString& aTitle,
|
||||||
|
|
||||||
// Since we're not changing which page we have loaded, pass
|
// Since we're not changing which page we have loaded, pass
|
||||||
// true for aCloneChildren.
|
// true for aCloneChildren.
|
||||||
rv = AddToSessionHistory(newURI, nullptr, nullptr, nullptr, true,
|
rv = AddToSessionHistory(newURI, nullptr,
|
||||||
|
document->NodePrincipal(), // triggeringPrincipal
|
||||||
|
nullptr, true,
|
||||||
getter_AddRefs(newSHEntry));
|
getter_AddRefs(newSHEntry));
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue