bug 125713 sr=brendan

git-svn-id: svn://10.0.0.236/trunk@115094 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
pavlov%netscape.com
2002-02-20 07:44:35 +00:00
parent 2175432b2c
commit ee5bd6103b
2 changed files with 26 additions and 20 deletions

View File

@@ -1506,19 +1506,22 @@ nsPresContext::LoadImage(const nsString& aURL,
if (content) {
nsCOMPtr<nsIDocument> document;
rv = content->GetDocument(*getter_AddRefs(document));
if (NS_FAILED(rv)) return rv;
nsCOMPtr<nsIScriptGlobalObject> globalScript;
rv = document->GetScriptGlobalObject(getter_AddRefs(globalScript));
if (NS_FAILED(rv)) return rv;
// If there is no document, skip the policy check
if (document) {
nsCOMPtr<nsIScriptGlobalObject> globalScript;
rv = document->GetScriptGlobalObject(getter_AddRefs(globalScript));
nsCOMPtr<nsIDOMWindow> domWin(do_QueryInterface(globalScript));
if (globalScript) {
nsCOMPtr<nsIDOMWindow> domWin(do_QueryInterface(globalScript));
PRBool shouldLoad = PR_TRUE;
rv = NS_CheckContentLoadPolicy(nsIContentPolicy::IMAGE,
uri, element, domWin, &shouldLoad);
if (NS_SUCCEEDED(rv) && !shouldLoad)
return NS_ERROR_FAILURE;
PRBool shouldLoad = PR_TRUE;
rv = NS_CheckContentLoadPolicy(nsIContentPolicy::IMAGE,
uri, element, domWin, &shouldLoad);
if (NS_SUCCEEDED(rv) && !shouldLoad)
return NS_ERROR_FAILURE;
}
}
}
nsImageLoader *newLoader = new nsImageLoader();

View File

@@ -1506,19 +1506,22 @@ nsPresContext::LoadImage(const nsString& aURL,
if (content) {
nsCOMPtr<nsIDocument> document;
rv = content->GetDocument(*getter_AddRefs(document));
if (NS_FAILED(rv)) return rv;
nsCOMPtr<nsIScriptGlobalObject> globalScript;
rv = document->GetScriptGlobalObject(getter_AddRefs(globalScript));
if (NS_FAILED(rv)) return rv;
// If there is no document, skip the policy check
if (document) {
nsCOMPtr<nsIScriptGlobalObject> globalScript;
rv = document->GetScriptGlobalObject(getter_AddRefs(globalScript));
nsCOMPtr<nsIDOMWindow> domWin(do_QueryInterface(globalScript));
if (globalScript) {
nsCOMPtr<nsIDOMWindow> domWin(do_QueryInterface(globalScript));
PRBool shouldLoad = PR_TRUE;
rv = NS_CheckContentLoadPolicy(nsIContentPolicy::IMAGE,
uri, element, domWin, &shouldLoad);
if (NS_SUCCEEDED(rv) && !shouldLoad)
return NS_ERROR_FAILURE;
PRBool shouldLoad = PR_TRUE;
rv = NS_CheckContentLoadPolicy(nsIContentPolicy::IMAGE,
uri, element, domWin, &shouldLoad);
if (NS_SUCCEEDED(rv) && !shouldLoad)
return NS_ERROR_FAILURE;
}
}
}
nsImageLoader *newLoader = new nsImageLoader();