diff --git a/netwerk/base/Predictor.cpp b/netwerk/base/Predictor.cpp index 643acf13a803..e97b11d16264 100644 --- a/netwerk/base/Predictor.cpp +++ b/netwerk/base/Predictor.cpp @@ -972,7 +972,7 @@ Predictor::PredictForLink(nsIURI *targetURI, nsIURI *sourceURI, } } - mSpeculativeService->SpeculativeConnect(targetURI, nullptr); + mSpeculativeService->SpeculativeConnect2(targetURI, nullptr, nullptr); if (verifier) { PREDICTOR_LOG((" sending verification")); verifier->OnPredictPreconnect(targetURI); @@ -1360,7 +1360,7 @@ Predictor::RunPredictions(nsIURI *referrer, nsINetworkPredictorVerifier *verifie nsCOMPtr uri = preconnects[i]; ++totalPredictions; ++totalPreconnects; - mSpeculativeService->SpeculativeConnect(uri, this); + mSpeculativeService->SpeculativeConnect2(uri, nullptr, this); predicted = true; if (verifier) { PREDICTOR_LOG((" sending preconnect verification")); diff --git a/netwerk/base/nsIOService.cpp b/netwerk/base/nsIOService.cpp index 9861f3b515fb..410dc195c3e7 100644 --- a/netwerk/base/nsIOService.cpp +++ b/netwerk/base/nsIOService.cpp @@ -1752,12 +1752,18 @@ IOServiceProxyCallback::OnProxyAvailable(nsICancelable *request, nsIChannel *cha if (!speculativeHandler) return NS_OK; + nsCOMPtr loadInfo = channel->GetLoadInfo(); + nsCOMPtr principal; + if (loadInfo) { + principal = loadInfo->LoadingPrincipal(); + } + nsLoadFlags loadFlags = 0; channel->GetLoadFlags(&loadFlags); if (loadFlags & nsIRequest::LOAD_ANONYMOUS) { - speculativeHandler->SpeculativeAnonymousConnect(uri, mCallbacks); + speculativeHandler->SpeculativeAnonymousConnect2(uri, principal, mCallbacks); } else { - speculativeHandler->SpeculativeConnect(uri, mCallbacks); + speculativeHandler->SpeculativeConnect2(uri, principal, mCallbacks); } return NS_OK;