Bug #1642 --> don't run JS urls with the default browser (effects shrimp only)
r=prass git-svn-id: svn://10.0.0.236/trunk@75848 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
94be5f8b8d
commit
ced2ee490a
@ -3007,11 +3007,15 @@ NS_IMETHODIMP nsDocShell::DoURILoad(nsIURI* aURI, nsIURI* aReferrerURI,
|
||||
{
|
||||
nsXPIDLCString urlScheme;
|
||||
aURI->GetScheme(getter_Copies(urlScheme));
|
||||
nsCOMPtr<nsIExternalProtocolService> extProtService (do_GetService(NS_EXTERNALPROTOCOLSERVICE_PROGID));
|
||||
PRBool haveHandler = PR_FALSE;
|
||||
extProtService->ExternalProtocolHandlerExists(urlScheme, &haveHandler);
|
||||
if (haveHandler)
|
||||
return extProtService->LoadUrl(aURI);
|
||||
// don't do it for javascript urls!
|
||||
if (urlScheme && nsCRT::strcasecmp("javascript", urlScheme))
|
||||
{
|
||||
nsCOMPtr<nsIExternalProtocolService> extProtService (do_GetService(NS_EXTERNALPROTOCOLSERVICE_PROGID));
|
||||
PRBool haveHandler = PR_FALSE;
|
||||
extProtService->ExternalProtocolHandlerExists(urlScheme, &haveHandler);
|
||||
if (haveHandler)
|
||||
return extProtService->LoadUrl(aURI);
|
||||
}
|
||||
}
|
||||
nsCOMPtr<nsIURILoader> uriLoader(do_GetService(NS_URI_LOADER_PROGID));
|
||||
NS_ENSURE_TRUE(uriLoader, NS_ERROR_FAILURE);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user