Bug 464222 - Allow URI loads with a base URI argument. r=bz
This commit is contained in:
@@ -4278,6 +4278,18 @@ nsDocShell::LoadURI(const char16_t * aURI,
|
||||
nsIURI * aReferringURI,
|
||||
nsIInputStream * aPostStream,
|
||||
nsIInputStream * aHeaderStream)
|
||||
{
|
||||
return LoadURIWithBase(aURI, aLoadFlags, aReferringURI, aPostStream,
|
||||
aHeaderStream, nullptr);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsDocShell::LoadURIWithBase(const char16_t * aURI,
|
||||
uint32_t aLoadFlags,
|
||||
nsIURI * aReferringURI,
|
||||
nsIInputStream * aPostStream,
|
||||
nsIInputStream * aHeaderStream,
|
||||
nsIURI * aBaseURI)
|
||||
{
|
||||
NS_ASSERTION((aLoadFlags & 0xf) == 0, "Unexpected flags");
|
||||
|
||||
@@ -4371,6 +4383,7 @@ nsDocShell::LoadURI(const char16_t * aURI,
|
||||
loadInfo->SetPostDataStream(postStream);
|
||||
loadInfo->SetReferrer(aReferringURI);
|
||||
loadInfo->SetHeadersStream(aHeaderStream);
|
||||
loadInfo->SetBaseURI(aBaseURI);
|
||||
|
||||
rv = LoadURI(uri, loadInfo, extraFlags, true);
|
||||
|
||||
@@ -9767,6 +9780,12 @@ nsDocShell::DoURILoad(nsIURI * aURI,
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
if (aBaseURI) {
|
||||
nsCOMPtr<nsIViewSourceChannel> vsc = do_QueryInterface(channel);
|
||||
if (vsc) {
|
||||
vsc->SetBaseURI(aBaseURI);
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
nsAutoCString scheme;
|
||||
|
||||
Reference in New Issue
Block a user