diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-05-27 21:51:42 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-05-27 21:51:42 +0200 |
commit | be01689f43cf6882cf670d33df49ead1f570c53a (patch) | |
tree | 4bb2161d8983b38e3e7ed37b4a50303bfd5e2e85 /Source/WebCore/dom/ScriptElement.cpp | |
parent | a89b2ebb8e192c5e8cea21079bda2ee2c0c7dddd (diff) | |
download | qtwebkit-be01689f43cf6882cf670d33df49ead1f570c53a.tar.gz |
Imported WebKit commit 8d6c5efc74f0222dfc7bcce8d845d4a2707ed9e6 (http://svn.webkit.org/repository/webkit/trunk@118629)
Diffstat (limited to 'Source/WebCore/dom/ScriptElement.cpp')
-rw-r--r-- | Source/WebCore/dom/ScriptElement.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/WebCore/dom/ScriptElement.cpp b/Source/WebCore/dom/ScriptElement.cpp index aefdddb49..746e6c37b 100644 --- a/Source/WebCore/dom/ScriptElement.cpp +++ b/Source/WebCore/dom/ScriptElement.cpp @@ -41,12 +41,14 @@ #include "ScriptRunner.h" #include "ScriptSourceCode.h" #include "ScriptValue.h" +#include "ScriptableDocumentParser.h" #include "SecurityOrigin.h" #include "Settings.h" #include "Text.h" #include <wtf/StdLibExtras.h> #include <wtf/text/StringBuilder.h> #include <wtf/text/StringHash.h> +#include <wtf/text/TextPosition.h> #if ENABLE(SVG) #include "SVGNames.h" @@ -58,6 +60,7 @@ namespace WebCore { ScriptElement::ScriptElement(Element* element, bool parserInserted, bool alreadyStarted) : m_element(element) , m_cachedScript(0) + , m_startLineNumber(WTF::OrdinalNumber::beforeFirst()) , m_parserInserted(parserInserted) , m_isExternalScript(false) , m_alreadyStarted(alreadyStarted) @@ -70,6 +73,8 @@ ScriptElement::ScriptElement(Element* element, bool parserInserted, bool already , m_requestUsesAccessControl(false) { ASSERT(m_element); + if (parserInserted && m_element->document()->scriptableDocumentParser() && !m_element->document()->isInDocumentWrite()) + m_startLineNumber = m_element->document()->scriptableDocumentParser()->lineNumber(); } ScriptElement::~ScriptElement() @@ -276,7 +281,7 @@ void ScriptElement::executeScript(const ScriptSourceCode& sourceCode) if (sourceCode.isEmpty()) return; - if (!m_isExternalScript && !m_element->document()->contentSecurityPolicy()->allowInlineScript()) + if (!m_isExternalScript && !m_element->document()->contentSecurityPolicy()->allowInlineScript(m_element->document()->url(), m_startLineNumber)) return; RefPtr<Document> document = m_element->document(); |