bug 263546: move external protocol warning down a level, r=jsr,sr=darin
git-svn-id: svn://10.0.0.236/trunk@164343 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -536,7 +536,6 @@ nsWebShell::OnLinkClickSync(nsIContent *aContent,
|
||||
nsIDocShell** aDocShell,
|
||||
nsIRequest** aRequest)
|
||||
{
|
||||
PRBool earlyReturn = PR_FALSE;
|
||||
{
|
||||
// defer to an external protocol handler if necessary...
|
||||
nsCOMPtr<nsIExternalProtocolService> extProtService = do_GetService(NS_EXTERNALPROTOCOLSERVICE_CONTRACTID);
|
||||
@@ -549,17 +548,11 @@ nsWebShell::OnLinkClickSync(nsIContent *aContent,
|
||||
PRBool isExposed;
|
||||
nsresult rv = extProtService->IsExposedProtocol(scheme.get(), &isExposed);
|
||||
if (NS_SUCCEEDED(rv) && !isExposed) {
|
||||
rv = extProtService->LoadUrl(aURI);
|
||||
if (NS_SUCCEEDED(rv))
|
||||
earlyReturn = PR_TRUE;
|
||||
else
|
||||
NS_WARNING("failed to launch external protocol handler");
|
||||
return extProtService->LoadUrl(aURI);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (earlyReturn)
|
||||
return NS_OK;
|
||||
|
||||
nsCOMPtr<nsIDOMNode> node(do_QueryInterface(aContent));
|
||||
NS_ENSURE_TRUE(node, NS_ERROR_UNEXPECTED);
|
||||
|
||||
Reference in New Issue
Block a user