36082: don't load contents of script tag if script evaluation is off. r=brendan

This commit is contained in:
akkana%netscape.com 2000-09-11 22:27:53 +00:00
parent b408a1058c
commit f9508b7d47
2 changed files with 28 additions and 4 deletions

View File

@ -4884,8 +4884,20 @@ HTMLContentSink::ProcessSCRIPTTag(const nsIParserNode& aNode)
MOZ_TIMER_STOP(mWatch);
// Don't process scripts that aren't JavaScript and don't process
// scripts that are inside iframes, noframe, or noscript tags.
if (isJavaScript && !mNumOpenIFRAMES && !mInsideNoXXXTag) {
// scripts that are inside iframes, noframe, or noscript tags,
// or if the script context has script evaluation disabled:
PRBool scriptsEnabled = PR_TRUE;
nsCOMPtr<nsIScriptGlobalObject> globalObject;
mDocument->GetScriptGlobalObject(getter_AddRefs(globalObject));
if (globalObject)
{
nsCOMPtr<nsIScriptContext> context;
if (NS_SUCCEEDED(globalObject->GetContext(getter_AddRefs(context)))
&& context)
context->GetScriptsEnabled(&scriptsEnabled);
}
if (scriptsEnabled && isJavaScript && !mNumOpenIFRAMES && !mInsideNoXXXTag) {
mScriptLanguageVersion = jsVersionString;
// If there is a SRC attribute...

View File

@ -4884,8 +4884,20 @@ HTMLContentSink::ProcessSCRIPTTag(const nsIParserNode& aNode)
MOZ_TIMER_STOP(mWatch);
// Don't process scripts that aren't JavaScript and don't process
// scripts that are inside iframes, noframe, or noscript tags.
if (isJavaScript && !mNumOpenIFRAMES && !mInsideNoXXXTag) {
// scripts that are inside iframes, noframe, or noscript tags,
// or if the script context has script evaluation disabled:
PRBool scriptsEnabled = PR_TRUE;
nsCOMPtr<nsIScriptGlobalObject> globalObject;
mDocument->GetScriptGlobalObject(getter_AddRefs(globalObject));
if (globalObject)
{
nsCOMPtr<nsIScriptContext> context;
if (NS_SUCCEEDED(globalObject->GetContext(getter_AddRefs(context)))
&& context)
context->GetScriptsEnabled(&scriptsEnabled);
}
if (scriptsEnabled && isJavaScript && !mNumOpenIFRAMES && !mInsideNoXXXTag) {
mScriptLanguageVersion = jsVersionString;
// If there is a SRC attribute...