summaryrefslogtreecommitdiffstats
path: root/WebCore/svg/SVGDocumentExtensions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/svg/SVGDocumentExtensions.cpp')
-rw-r--r--WebCore/svg/SVGDocumentExtensions.cpp23
1 files changed, 18 insertions, 5 deletions
diff --git a/WebCore/svg/SVGDocumentExtensions.cpp b/WebCore/svg/SVGDocumentExtensions.cpp
index 7b285eb..fc31551 100644
--- a/WebCore/svg/SVGDocumentExtensions.cpp
+++ b/WebCore/svg/SVGDocumentExtensions.cpp
@@ -37,7 +37,7 @@
#include "SVGSMILElement.h"
#include "SVGSVGElement.h"
#include "SMILTimeContainer.h"
-#include "XMLDocumentParser.h"
+#include "ScriptableDocumentParser.h"
#include "ScriptController.h"
namespace WebCore {
@@ -125,16 +125,29 @@ bool SVGDocumentExtensions::sampleAnimationAtTime(const String& elementId, SVGSM
return true;
}
+// FIXME: Callers should probably use ScriptController::eventHandlerLineNumber()
+static int parserLineNumber(Document* document)
+{
+ ScriptableDocumentParser* parser = document->scriptableDocumentParser();
+ if (!parser)
+ return 1;
+ return parser->lineNumber();
+}
+
+static void reportMessage(Document* document, MessageLevel level, const String& message)
+{
+ if (Frame* frame = document->frame())
+ frame->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, level, message, parserLineNumber(document), String());
+}
+
void SVGDocumentExtensions::reportWarning(const String& message)
{
- if (Frame* frame = m_doc->frame())
- frame->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, ErrorMessageLevel, "Warning: " + message, m_doc->parser() ? m_doc->parser()->lineNumber() : 1, String());
+ reportMessage(m_doc, WarningMessageLevel, "Warning: " + message);
}
void SVGDocumentExtensions::reportError(const String& message)
{
- if (Frame* frame = m_doc->frame())
- frame->domWindow()->console()->addMessage(JSMessageSource, LogMessageType, ErrorMessageLevel, "Error: " + message, m_doc->parser() ? m_doc->parser()->lineNumber() : 1, String());
+ reportMessage(m_doc, ErrorMessageLevel, "Error: " + message);
}
void SVGDocumentExtensions::addPendingResource(const AtomicString& id, SVGStyledElement* obj)