Bug 1590748 - Setup result principal URI on the content process LoadInfo as well as the parent process one, since ServiceWorkers depends on it there. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D50372
This commit is contained in:
@@ -9862,17 +9862,6 @@ static bool HasHttpScheme(nsIURI* aURI) {
|
|||||||
MOZ_ASSERT(NS_SUCCEEDED(aRv));
|
MOZ_ASSERT(NS_SUCCEEDED(aRv));
|
||||||
}
|
}
|
||||||
|
|
||||||
nsCOMPtr<nsIURI> rpURI;
|
|
||||||
aLoadInfo->GetResultPrincipalURI(getter_AddRefs(rpURI));
|
|
||||||
Maybe<nsCOMPtr<nsIURI>> originalResultPrincipalURI;
|
|
||||||
aLoadState->GetMaybeResultPrincipalURI(originalResultPrincipalURI);
|
|
||||||
if (originalResultPrincipalURI &&
|
|
||||||
(!aLoadState->KeepResultPrincipalURIIfSet() || !rpURI)) {
|
|
||||||
// Unconditionally override, we want the replay to be equal to what has
|
|
||||||
// been captured.
|
|
||||||
aLoadInfo->SetResultPrincipalURI(originalResultPrincipalURI.ref());
|
|
||||||
}
|
|
||||||
|
|
||||||
if (httpChannel) {
|
if (httpChannel) {
|
||||||
if (aLoadState->HeadersStream()) {
|
if (aLoadState->HeadersStream()) {
|
||||||
aRv = AddHeadersToChannel(aLoadState->HeadersStream(), httpChannel);
|
aRv = AddHeadersToChannel(aLoadState->HeadersStream(), httpChannel);
|
||||||
@@ -9918,6 +9907,20 @@ static bool HasHttpScheme(nsIURI* aURI) {
|
|||||||
NS_LITERAL_STRING("docshell.internalReferrer"), referrer);
|
NS_LITERAL_STRING("docshell.internalReferrer"), referrer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nsCOMPtr<nsILoadInfo> loadInfo;
|
||||||
|
MOZ_ALWAYS_SUCCEEDS(aChannel->GetLoadInfo(getter_AddRefs(loadInfo)));
|
||||||
|
|
||||||
|
nsCOMPtr<nsIURI> rpURI;
|
||||||
|
loadInfo->GetResultPrincipalURI(getter_AddRefs(rpURI));
|
||||||
|
Maybe<nsCOMPtr<nsIURI>> originalResultPrincipalURI;
|
||||||
|
aLoadState->GetMaybeResultPrincipalURI(originalResultPrincipalURI);
|
||||||
|
if (originalResultPrincipalURI &&
|
||||||
|
(!aLoadState->KeepResultPrincipalURIIfSet() || !rpURI)) {
|
||||||
|
// Unconditionally override, we want the replay to be equal to what has
|
||||||
|
// been captured.
|
||||||
|
loadInfo->SetResultPrincipalURI(originalResultPrincipalURI.ref());
|
||||||
|
}
|
||||||
|
|
||||||
nsresult rv = NS_OK;
|
nsresult rv = NS_OK;
|
||||||
if (aLoadState->OriginalURI()) {
|
if (aLoadState->OriginalURI()) {
|
||||||
aChannel->SetOriginalURI(aLoadState->OriginalURI());
|
aChannel->SetOriginalURI(aLoadState->OriginalURI());
|
||||||
@@ -10034,9 +10037,6 @@ static bool HasHttpScheme(nsIURI* aURI) {
|
|||||||
|
|
||||||
nsCOMPtr<nsIContentSecurityPolicy> csp = aLoadState->Csp();
|
nsCOMPtr<nsIContentSecurityPolicy> csp = aLoadState->Csp();
|
||||||
if (csp) {
|
if (csp) {
|
||||||
nsCOMPtr<nsILoadInfo> loadInfo;
|
|
||||||
MOZ_ALWAYS_SUCCEEDS(aChannel->GetLoadInfo(getter_AddRefs(loadInfo)));
|
|
||||||
|
|
||||||
// Navigational requests that are same origin need to be upgraded in case
|
// Navigational requests that are same origin need to be upgraded in case
|
||||||
// upgrade-insecure-requests is present.
|
// upgrade-insecure-requests is present.
|
||||||
bool upgradeInsecureRequests = false;
|
bool upgradeInsecureRequests = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user