Index: cc/trees/layer_tree_host_impl.cc |
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc |
index dd485ba6b759e709edb3ac1f02311cbdbf6012a8..29fc3f0d9264346ab8ad01e34af4a8ab57eb5c93 100644 |
--- a/cc/trees/layer_tree_host_impl.cc |
+++ b/cc/trees/layer_tree_host_impl.cc |
@@ -1589,11 +1589,13 @@ void LayerTreeHostImpl::SetUseGpuRasterization(bool use_gpu) { |
if (use_gpu == use_gpu_rasterization_) |
return; |
+ // Note that this must happen first, in case the rest of the calls want to |
+ // query the new state of |use_gpu_rasterization_|. |
use_gpu_rasterization_ = use_gpu; |
- ReleaseTreeResources(); |
- // Replace existing tile manager with another one that uses appropriate |
- // rasterizer. |
+ // Clean up and replace existing tile manager with another one that uses |
+ // appropriate rasterizer. |
+ ReleaseTreeResources(); |
if (tile_manager_) { |
DestroyTileManager(); |
CreateAndSetTileManager(); |