Title: [136722] trunk
Revision
136722
Author
[email protected]
Date
2012-12-05 11:31:20 -0800 (Wed, 05 Dec 2012)

Log Message

REGRESSION(r136615): Incorrect style sharing in view-source documents.
<http://webkit.org/b/104089>

Reviewed by Antti Koivisto.

Source/WebCore:

Make sure we collect feature data about the default view-source style sheet before evaluating
style sharing candidates, otherwise it won't know which class selectors to care about.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectFeatures):

LayoutTests:

Unskip: fast/frames/viewsource-attribute.html
        fast/frames/viewsource-on-image-file.html

* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (136721 => 136722)


--- trunk/LayoutTests/ChangeLog	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/LayoutTests/ChangeLog	2012-12-05 19:31:20 UTC (rev 136722)
@@ -1,3 +1,19 @@
+2012-12-05  Andreas Kling  <[email protected]>
+
+        REGRESSION(r136615): Incorrect style sharing in view-source documents.
+        <http://webkit.org/b/104089>
+
+        Reviewed by Antti Koivisto.
+
+        Unskip: fast/frames/viewsource-attribute.html
+                fast/frames/viewsource-on-image-file.html
+
+        * platform/chromium/TestExpectations:
+        * platform/efl/TestExpectations:
+        * platform/gtk/TestExpectations:
+        * platform/mac/TestExpectations:
+        * platform/qt/TestExpectations:
+
 2012-12-05  Zan Dobersek  <[email protected]>
 
         Unreviewed gardening.

Modified: trunk/LayoutTests/platform/chromium/TestExpectations (136721 => 136722)


--- trunk/LayoutTests/platform/chromium/TestExpectations	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/LayoutTests/platform/chromium/TestExpectations	2012-12-05 19:31:20 UTC (rev 136722)
@@ -4256,10 +4256,6 @@
 # Needs platform-specific results
 webkit.org/b/104035 fast/text/orientation-sideways.html [ Missing ]
 
-# Fail since r136615.
-webkit.org/b/104089 fast/frames/viewsource-attribute.html [ Failure ]
-webkit.org/b/104089 fast/frames/viewsource-on-image-file.html [ Failure ]
-
 # Crash since r136588.
 webkit.org/b/104090 [ Mac Debug ] fast/css-grid-layout/grid-columns-rows-get-set-multiple.html [ Crash ]
 webkit.org/b/104090 [ Mac Debug ] fast/css-grid-layout/grid-columns-rows-get-set.html [ Crash ]

Modified: trunk/LayoutTests/platform/efl/TestExpectations (136721 => 136722)


--- trunk/LayoutTests/platform/efl/TestExpectations	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/LayoutTests/platform/efl/TestExpectations	2012-12-05 19:31:20 UTC (rev 136722)
@@ -1703,6 +1703,3 @@
 
 # volume is reset when mediaelement.src is modified
 webkit.org/b/103893 media/video-volume.html [ Failure ]
-
-webkit.org/b/104089 fast/frames/viewsource-attribute.html [ Failure ]
-webkit.org/b/104089 fast/frames/viewsource-on-image-file.html [ Failure ]

Modified: trunk/LayoutTests/platform/gtk/TestExpectations (136721 => 136722)


--- trunk/LayoutTests/platform/gtk/TestExpectations	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2012-12-05 19:31:20 UTC (rev 136722)
@@ -1415,9 +1415,6 @@
 # volume is reset when mediaelement.src is modified
 webkit.org/b/103893 media/video-volume.html [ Failure ]
 
-webkit.org/b/104089 fast/frames/viewsource-attribute.html [ Failure ]
-webkit.org/b/104089 fast/frames/viewsource-on-image-file.html [ Failure ]
-
 webkit.org/b/104054 svg/custom/use-href-update-crash.svg [ Failure ]
 
 #////////////////////////////////////////////////////////////////////////////////////////

Modified: trunk/LayoutTests/platform/mac/TestExpectations (136721 => 136722)


--- trunk/LayoutTests/platform/mac/TestExpectations	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2012-12-05 19:31:20 UTC (rev 136722)
@@ -1249,6 +1249,3 @@
 Bug(jernoble) [ MountainLion Lion SnowLeopard ] media/video-src-blob.html
 
 webkit.org/b/104104 fast/overflow/scrollbar-click-retains-focus.html [ Failure ]
-
-webkit.org/b/104089 fast/frames/viewsource-attribute.html [ Failure ]
-webkit.org/b/104089 fast/frames/viewsource-on-image-file.html [ Failure ]

Modified: trunk/LayoutTests/platform/qt/TestExpectations (136721 => 136722)


--- trunk/LayoutTests/platform/qt/TestExpectations	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/LayoutTests/platform/qt/TestExpectations	2012-12-05 19:31:20 UTC (rev 136722)
@@ -2439,6 +2439,3 @@
 
 # [Qt] A new compositing bug uncovered by r135859
 webkit.org/b/103424 fast/backgrounds/background-opaque-images-over-color.html
-
-webkit.org/b/104089 fast/frames/viewsource-attribute.html [ Failure ]
-webkit.org/b/104089 fast/frames/viewsource-on-image-file.html [ Failure ]

Modified: trunk/Source/WebCore/ChangeLog (136721 => 136722)


--- trunk/Source/WebCore/ChangeLog	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/Source/WebCore/ChangeLog	2012-12-05 19:31:20 UTC (rev 136722)
@@ -1,3 +1,16 @@
+2012-12-05  Andreas Kling  <[email protected]>
+
+        REGRESSION(r136615): Incorrect style sharing in view-source documents.
+        <http://webkit.org/b/104089>
+
+        Reviewed by Antti Koivisto.
+
+        Make sure we collect feature data about the default view-source style sheet before evaluating
+        style sharing candidates, otherwise it won't know which class selectors to care about.
+
+        * css/StyleResolver.cpp:
+        (WebCore::StyleResolver::collectFeatures):
+
 2012-12-05  Mike West  <[email protected]>
 
         Stop generating call stacks inside ContentSecurityPolicy

Modified: trunk/Source/WebCore/css/StyleResolver.cpp (136721 => 136722)


--- trunk/Source/WebCore/css/StyleResolver.cpp	2012-12-05 19:23:26 UTC (rev 136721)
+++ trunk/Source/WebCore/css/StyleResolver.cpp	2012-12-05 19:31:20 UTC (rev 136722)
@@ -358,23 +358,6 @@
     return ruleSet.release();
 }
 
-void StyleResolver::collectFeatures()
-{
-    m_features.clear();
-    // Collect all ids and rules using sibling selectors (:first-child and similar)
-    // in the current set of stylesheets. Style sharing code uses this information to reject
-    // sharing candidates.
-    m_features.add(defaultStyle->features());
-    m_features.add(m_authorStyle->features());
-    if (m_scopeResolver)
-        m_scopeResolver->collectFeaturesTo(m_features);
-    if (m_userStyle)
-        m_features.add(m_userStyle->features());
-
-    m_siblingRuleSet = makeRuleSet(m_features.siblingRules);
-    m_uncommonAttributeRuleSet = makeRuleSet(m_features.uncommonAttributeRules);
-}
-
 void StyleResolver::resetAuthorStyle()
 {
     m_authorStyle = RuleSet::create();
@@ -5248,6 +5231,29 @@
 #endif
 }
 
+void StyleResolver::collectFeatures()
+{
+    m_features.clear();
+    // Collect all ids and rules using sibling selectors (:first-child and similar)
+    // in the current set of stylesheets. Style sharing code uses this information to reject
+    // sharing candidates.
+    m_features.add(defaultStyle->features());
+    m_features.add(m_authorStyle->features());
+    if (document()->isViewSource()) {
+        if (!defaultViewSourceStyle)
+            loadViewSourceStyle();
+        m_features.add(defaultViewSourceStyle->features());
+    }
+
+    if (m_scopeResolver)
+        m_scopeResolver->collectFeaturesTo(m_features);
+    if (m_userStyle)
+        m_features.add(m_userStyle->features());
+
+    m_siblingRuleSet = makeRuleSet(m_features.siblingRules);
+    m_uncommonAttributeRuleSet = makeRuleSet(m_features.uncommonAttributeRules);
+}
+
 void StyleResolver::MatchedProperties::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
 {
     MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::CSS);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to