[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