Index: Source/core/dom/ErrorEvent.h |
diff --git a/Source/core/dom/ErrorEvent.h b/Source/core/dom/ErrorEvent.h |
index 821554452fb4a24decb2d92844213b9222475257..583f07fe1a4d475b31763e390402b9c1d7c7c7f9 100644 |
--- a/Source/core/dom/ErrorEvent.h |
+++ b/Source/core/dom/ErrorEvent.h |
@@ -65,19 +65,26 @@ public: |
} |
virtual ~ErrorEvent(); |
- const String& message() const { return m_message; } |
+ // As 'message' is exposed to JavaScript, never return unsanitizedMessage. |
+ const String& message() const { return m_sanitizedMessage; } |
const String& filename() const { return m_fileName; } |
unsigned lineno() const { return m_lineNumber; } |
unsigned colno() const { return m_columnNumber; } |
+ // 'messageForConsole' is not exposed to JavaScript, and prefers 'm_unsanitizedMessage'. |
+ const String& messageForConsole() const { return !m_unsanitizedMessage.isEmpty() ? m_unsanitizedMessage : m_sanitizedMessage; } |
+ |
virtual const AtomicString& interfaceName() const; |
+ void setUnsanitizedMessage(const String&); |
+ |
private: |
ErrorEvent(); |
ErrorEvent(const String& message, const String& fileName, unsigned lineNumber, unsigned columnNumber); |
ErrorEvent(const AtomicString&, const ErrorEventInit&); |
- String m_message; |
+ String m_unsanitizedMessage; |
+ String m_sanitizedMessage; |
String m_fileName; |
unsigned m_lineNumber; |
unsigned m_columnNumber; |