[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198
abarth at webkit.org
abarth at webkit.org
Mon Feb 21 00:16:06 UTC 2011
The following commit has been merged in the webkit-1.3 branch:
commit 015fdee44cc5b794161f49fe1b5ca0240edd11d6
Author: abarth at webkit.org <abarth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Jan 29 00:58:36 2011 +0000
2011-01-28 Adam Barth <abarth at webkit.org>
Reviewed by Daniel Bates.
Wire up settings->xssAuditorEnabled to XSSFilter
https://bugs.webkit.org/show_bug.cgi?id=53345
* html/parser/XSSFilter.cpp:
(WebCore::XSSFilter::XSSFilter):
(WebCore::XSSFilter::filterToken):
* html/parser/XSSFilter.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77034 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 494a7e8..07a9d83 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -2,6 +2,18 @@
Reviewed by Daniel Bates.
+ Wire up settings->xssAuditorEnabled to XSSFilter
+ https://bugs.webkit.org/show_bug.cgi?id=53345
+
+ * html/parser/XSSFilter.cpp:
+ (WebCore::XSSFilter::XSSFilter):
+ (WebCore::XSSFilter::filterToken):
+ * html/parser/XSSFilter.h:
+
+2011-01-28 Adam Barth <abarth at webkit.org>
+
+ Reviewed by Daniel Bates.
+
Teach XSSFilter about <meta> and <base> tags
https://bugs.webkit.org/show_bug.cgi?id=53339
diff --git a/Source/WebCore/html/parser/XSSFilter.cpp b/Source/WebCore/html/parser/XSSFilter.cpp
index eab5956..eedef98 100644
--- a/Source/WebCore/html/parser/XSSFilter.cpp
+++ b/Source/WebCore/html/parser/XSSFilter.cpp
@@ -27,8 +27,10 @@
#include "XSSFilter.h"
#include "Document.h"
+#include "Frame.h"
#include "HTMLDocumentParser.h"
#include "HTMLNames.h"
+#include "Settings.h"
#include "TextEncoding.h"
#include "TextResourceDecoder.h"
#include <wtf/text/CString.h>
@@ -83,9 +85,14 @@ String decodeURL(const String& string, const TextEncoding& encoding)
XSSFilter::XSSFilter(HTMLDocumentParser* parser)
: m_parser(parser)
+ , m_isEnabled(false)
, m_state(Initial)
{
ASSERT(m_parser);
+ if (Frame* frame = parser->document()->frame()) {
+ if (Settings* settings = frame->settings())
+ m_isEnabled = settings->xssAuditorEnabled();
+ }
}
void XSSFilter::filterToken(HTMLToken& token)
@@ -94,6 +101,9 @@ void XSSFilter::filterToken(HTMLToken& token)
ASSERT_UNUSED(token, &token);
return;
#else
+ if (!m_isEnabled)
+ return;
+
switch (m_state) {
case Initial:
break;
diff --git a/Source/WebCore/html/parser/XSSFilter.h b/Source/WebCore/html/parser/XSSFilter.h
index 8aa8cd6..c7df0eb 100644
--- a/Source/WebCore/html/parser/XSSFilter.h
+++ b/Source/WebCore/html/parser/XSSFilter.h
@@ -61,6 +61,7 @@ private:
bool isContainedInRequest(const String&);
HTMLDocumentParser* m_parser;
+ bool m_isEnabled;
State m_state;
String m_cachedSnippet;
};
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list