Bug 1098415 - Skip DNS prefetch requests that point to local resources. r=sworkman r=dragana

This commit is contained in:
Jeff Lu 2015-03-12 09:00:00 +01:00
Родитель 66ca086aa3
Коммит c31d7cf997
1 изменённых файлов: 9 добавлений и 3 удалений

Просмотреть файл

@ -852,9 +852,15 @@ nsContentSink::PrefetchDNS(const nsAString &aHref)
if (!uri) { if (!uri) {
return; return;
} }
nsAutoCString host; nsresult rv;
uri->GetHost(host); bool isLocalResource = false;
CopyUTF8toUTF16(host, hostname); rv = NS_URIChainHasFlags(uri, nsIProtocolHandler::URI_IS_LOCAL_RESOURCE,
&isLocalResource);
if (NS_SUCCEEDED(rv) && !isLocalResource) {
nsAutoCString host;
uri->GetHost(host);
CopyUTF8toUTF16(host, hostname);
}
} }
if (!hostname.IsEmpty() && nsHTMLDNSPrefetch::IsAllowed(mDocument)) { if (!hostname.IsEmpty() && nsHTMLDNSPrefetch::IsAllowed(mDocument)) {