diff options
Diffstat (limited to 'netwerk/base')
-rw-r--r-- | netwerk/base/LoadInfo.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/netwerk/base/LoadInfo.cpp b/netwerk/base/LoadInfo.cpp index e840a708fd..c06e8d660c 100644 --- a/netwerk/base/LoadInfo.cpp +++ b/netwerk/base/LoadInfo.cpp @@ -20,6 +20,7 @@ #include "mozilla/dom/ToJSValue.h" #include "mozilla/dom/BrowsingContext.h" #include "mozilla/dom/WindowGlobalParent.h" +#include "mozilla/dom/nsHTTPSOnlyUtils.h" #include "mozilla/net/CookieJarSettings.h" #include "mozilla/NullPrincipal.h" #include "mozilla/StaticPrefs_network.h" @@ -216,8 +217,9 @@ LoadInfo::LoadInfo( mDocumentHasUserInteracted = aLoadingContext->OwnerDoc()->UserHasInteracted(); - // Inherit HTTPS-Only Mode flags from parent document - mHttpsOnlyStatus |= aLoadingContext->OwnerDoc()->HttpsOnlyStatus(); + // Inherit HTTPS-Only Mode flags from parent document. + mHttpsOnlyStatus |= nsHTTPSOnlyUtils::GetStatusForSubresourceLoad( + aLoadingContext->OwnerDoc()->HttpsOnlyStatus()); // When the element being loaded is a frame, we choose the frame's window // for the window ID and the frame element's window as the parent @@ -527,7 +529,9 @@ LoadInfo::LoadInfo(dom::WindowGlobalParent* aParentWGP, parentBC->UsePrivateBrowsing()); } - mHttpsOnlyStatus |= aParentWGP->HttpsOnlyStatus(); + // Inherit HTTPS-Only Mode flags from embedder document. + mHttpsOnlyStatus |= nsHTTPSOnlyUtils::GetStatusForSubresourceLoad( + aParentWGP->HttpsOnlyStatus()); // For chrome BC, the mPrivateBrowsingId remains 0 even its // UsePrivateBrowsing() is true, so we only update the mPrivateBrowsingId in |