Index: Source/core/xml/parser/XMLDocumentParser.cpp |
diff --git a/Source/core/xml/parser/XMLDocumentParser.cpp b/Source/core/xml/parser/XMLDocumentParser.cpp |
index 008125d6652d19944091601e8eff1c09cd061add..695b2783adcd235fde2e827c88948f1027710087 100644 |
--- a/Source/core/xml/parser/XMLDocumentParser.cpp |
+++ b/Source/core/xml/parser/XMLDocumentParser.cpp |
@@ -1036,14 +1036,15 @@ void XMLDocumentParser::endElementNs() |
ASSERT(!m_pendingScript); |
m_requestingScript = true; |
- if (scriptLoader->prepareScript(m_scriptStartPosition, ScriptLoader::AllowLegacyTypeInTypeAttribute)) { |
+ ScriptPrep prep = scriptLoader->prepareScript(m_scriptStartPosition, ScriptLoader::AllowLegacyTypeInTypeAttribute); |
+ if (prep.succeeded()) { |
// FIXME: Script execution should be shared between |
// the libxml2 and Qt XMLDocumentParser implementations. |
if (scriptLoader->readyToBeParserExecuted()) { |
scriptLoader->executeScript(ScriptSourceCode(scriptLoader->scriptContent(), document()->url(), m_scriptStartPosition)); |
} else if (scriptLoader->willBeParserExecuted()) { |
- m_pendingScript = scriptLoader->resource(); |
+ m_pendingScript = prep.resource(); |
m_scriptElement = element; |
m_pendingScript->addClient(this); |