| Index: cc/trees/layer_tree_host_common.cc | 
| diff --git a/cc/trees/layer_tree_host_common.cc b/cc/trees/layer_tree_host_common.cc | 
| index b8436756fc4762df4194493b3d602e274a8d1ab3..2178b0cf4408779b6d1412eb650e2f93e62fd2aa 100644 | 
| --- a/cc/trees/layer_tree_host_common.cc | 
| +++ b/cc/trees/layer_tree_host_common.cc | 
| @@ -555,8 +555,7 @@ static bool SubtreeShouldRenderToSeparateSurface( | 
| } | 
|  | 
| // If the layer uses a CSS filter. | 
| -  if (!layer->filters().IsEmpty() || !layer->background_filters().IsEmpty() || | 
| -      layer->filter()) { | 
| +  if (!layer->filters().IsEmpty() || !layer->background_filters().IsEmpty()) { | 
| DCHECK(!is_root); | 
| return true; | 
| } | 
| @@ -1548,7 +1547,8 @@ static void CalculateDrawPropertiesInternal( | 
|  | 
| // TODO(senorblanco): make this smarter for the SkImageFilter case (check | 
| // for pixel-moving filters) | 
| -    if (layer->filters().HasFilterThatMovesPixels() || layer->filter()) | 
| +    if (layer->filters().HasReferenceFilter() || | 
| +        layer->filters().HasFilterThatMovesPixels()) | 
| nearest_ancestor_surface_that_moves_pixels = render_surface; | 
|  | 
| render_surface->SetNearestAncestorThatMovesPixels( | 
|  |