Index: cc/layers/layer.cc |
diff --git a/cc/layers/layer.cc b/cc/layers/layer.cc |
index a49873696818f5c5c6434a586166b4b92b345b1d..ded74eec294b233fbdf123ef2201ebf577eb587d 100644 |
--- a/cc/layers/layer.cc |
+++ b/cc/layers/layer.cc |
@@ -129,11 +129,14 @@ void Layer::SetLayerTreeHost(LayerTreeHost* host) { |
if (layer_tree_host_ == host) |
return; |
- if (layer_tree_host_) |
+ if (layer_tree_host_) { |
layer_tree_host_->property_trees()->needs_rebuild = true; |
- |
- if (host) |
+ layer_tree_host_->UnregisterLayer(this); |
+ } |
+ if (host) { |
host->property_trees()->needs_rebuild = true; |
+ host->RegisterLayer(this); |
+ } |
InvalidatePropertyTreesIndices(); |