Title: [112278] trunk/Source
- Revision
- 112278
- Author
- [email protected]
- Date
- 2012-03-27 10:02:51 -0700 (Tue, 27 Mar 2012)
Log Message
Source/WebCore: [chromium] Fix filter context creation to be more conservative.
https://bugs.webkit.org/show_bug.cgi?id=82349
Reviewed by James Robinson.
Covered by webkit_unit_tests, and css3/filters layout tests.
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::setFilters):
Only request a filter context if the filter lists is non-empty.
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCLayerTreeHost::setNeedsFilterContext):
Add a bool param, so tests can cancel a request for filter contexts.
Source/WebKit/chromium: [chromium] Fix filter context usage in webkit_unit_tests.
https://bugs.webkit.org/show_bug.cgi?id=82349
Reviewed by James Robinson.
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestLayerOcclusionWithFilters::beginTest):
Cancel request for filter context after test run.
(WTF::TEST_F):
* tests/CCOcclusionTrackerTest.cpp:
Re-enable CCLayerTreeHostTestSetSingleLostContext.runMultiThread.
(WebCore::CCOcclusionTrackerTest::TearDown):
Cancel request for filter context after test run.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (112277 => 112278)
--- trunk/Source/WebCore/ChangeLog 2012-03-27 15:58:03 UTC (rev 112277)
+++ trunk/Source/WebCore/ChangeLog 2012-03-27 17:02:51 UTC (rev 112278)
@@ -1,3 +1,19 @@
+2012-03-27 Stephen White <[email protected]>
+
+ [chromium] Fix filter context creation to be more conservative.
+ https://bugs.webkit.org/show_bug.cgi?id=82349
+
+ Reviewed by James Robinson.
+
+ Covered by webkit_unit_tests, and css3/filters layout tests.
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setFilters):
+ Only request a filter context if the filter lists is non-empty.
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCLayerTreeHost::setNeedsFilterContext):
+ Add a bool param, so tests can cancel a request for filter contexts.
+
2012-03-27 Stephen Chenney <[email protected]>
<svg:use> elements in the parser can create elements not marked as created by the parser
Modified: trunk/Source/WebCore/platform/graphics/chromium/LayerChromium.cpp (112277 => 112278)
--- trunk/Source/WebCore/platform/graphics/chromium/LayerChromium.cpp 2012-03-27 15:58:03 UTC (rev 112277)
+++ trunk/Source/WebCore/platform/graphics/chromium/LayerChromium.cpp 2012-03-27 17:02:51 UTC (rev 112278)
@@ -318,7 +318,8 @@
return;
m_filters = filters;
setNeedsCommit();
- CCLayerTreeHost::setNeedsFilterContext();
+ if (!filters.isEmpty())
+ CCLayerTreeHost::setNeedsFilterContext(true);
}
void LayerChromium::setOpacity(float opacity)
Modified: trunk/Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.h (112277 => 112278)
--- trunk/Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.h 2012-03-27 15:58:03 UTC (rev 112277)
+++ trunk/Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.h 2012-03-27 17:02:51 UTC (rev 112278)
@@ -131,7 +131,7 @@
static bool anyLayerTreeHostInstanceExists();
static bool needsFilterContext() { return s_needsFilterContext; }
- static void setNeedsFilterContext() { s_needsFilterContext = true; }
+ static void setNeedsFilterContext(bool needsFilterContext) { s_needsFilterContext = needsFilterContext; }
// CCLayerTreeHost interface to CCProxy.
void willBeginFrame() { m_client->willBeginFrame(); }
Modified: trunk/Source/WebKit/chromium/ChangeLog (112277 => 112278)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-03-27 15:58:03 UTC (rev 112277)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-03-27 17:02:51 UTC (rev 112278)
@@ -1,3 +1,19 @@
+2012-03-27 Stephen White <[email protected]>
+
+ [chromium] Fix filter context usage in webkit_unit_tests.
+ https://bugs.webkit.org/show_bug.cgi?id=82349
+
+ Reviewed by James Robinson.
+
+ * tests/CCLayerTreeHostTest.cpp:
+ (WTF::CCLayerTreeHostTestLayerOcclusionWithFilters::beginTest):
+ Cancel request for filter context after test run.
+ (WTF::TEST_F):
+ * tests/CCOcclusionTrackerTest.cpp:
+ Re-enable CCLayerTreeHostTestSetSingleLostContext.runMultiThread.
+ (WebCore::CCOcclusionTrackerTest::TearDown):
+ Cancel request for filter context after test run.
+
2012-03-26 Stephen White <[email protected]>
Disable CCLayerTreeHostTestSetSingleLostContext.runMultiThread.
Modified: trunk/Source/WebKit/chromium/tests/CCLayerTreeHostTest.cpp (112277 => 112278)
--- trunk/Source/WebKit/chromium/tests/CCLayerTreeHostTest.cpp 2012-03-27 15:58:03 UTC (rev 112277)
+++ trunk/Source/WebKit/chromium/tests/CCLayerTreeHostTest.cpp 2012-03-27 17:02:51 UTC (rev 112278)
@@ -2106,6 +2106,7 @@
m_layerTreeHost->setRootLayer(0);
m_layerTreeHost.clear();
+ CCLayerTreeHost::setNeedsFilterContext(false);
endTest();
}
@@ -2201,7 +2202,7 @@
}
};
-TEST_F(CCLayerTreeHostTestSetSingleLostContext, DISABLED_runMultiThread)
+TEST_F(CCLayerTreeHostTestSetSingleLostContext, runMultiThread)
{
runTestThreaded();
}
Modified: trunk/Source/WebKit/chromium/tests/CCOcclusionTrackerTest.cpp (112277 => 112278)
--- trunk/Source/WebKit/chromium/tests/CCOcclusionTrackerTest.cpp 2012-03-27 15:58:03 UTC (rev 112277)
+++ trunk/Source/WebKit/chromium/tests/CCOcclusionTrackerTest.cpp 2012-03-27 17:02:51 UTC (rev 112278)
@@ -139,6 +139,7 @@
m_root.clear();
m_renderSurfaceLayerListChromium.clear();
m_renderSurfaceLayerListImpl.clear();
+ CCLayerTreeHost::setNeedsFilterContext(false);
}
typename Types::ContentLayerType* createRoot(const TransformationMatrix& transform, const FloatPoint& position, const IntSize& bounds)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes