Index: cc/layer.cc |
diff --git a/cc/layer.cc b/cc/layer.cc |
index 5ba8451772c9cb2b6733817c54ebecfd934bfcb4..1ed771085946c200de2324842e5ab81b3d355d4b 100644 |
--- a/cc/layer.cc |
+++ b/cc/layer.cc |
@@ -81,8 +81,6 @@ Layer::~Layer() |
// Remove the parent reference from all children. |
removeAllChildren(); |
- |
- SkSafeUnref(m_filter); |
} |
void Layer::setUseLCDText(bool useLCDText) |
@@ -328,12 +326,12 @@ void Layer::setFilters(const WebKit::WebFilterOperations& filters) |
LayerTreeHost::setNeedsFilterContext(true); |
} |
-void Layer::setFilter(SkImageFilter* filter) |
+void Layer::setFilter(const SkRefPtr<SkImageFilter>& filter) |
{ |
- if (m_filter == filter) |
+ if (m_filter.get() == filter.get()) |
return; |
DCHECK(m_filters.isEmpty()); |
- SkRefCnt_SafeAssign(m_filter, filter); |
+ m_filter = filter; |
setNeedsCommit(); |
if (filter) |
LayerTreeHost::setNeedsFilterContext(true); |