Index: cc/layers/layer.cc |
diff --git a/cc/layers/layer.cc b/cc/layers/layer.cc |
index 207ab936aa6ec8c7162c093efab815d5ea1e29f9..6476b28a32394479e30fbf79710241297be58b4f 100644 |
--- a/cc/layers/layer.cc |
+++ b/cc/layers/layer.cc |
@@ -128,11 +128,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(); |