Index: cc/layers/layer_impl.cc |
diff --git a/cc/layers/layer_impl.cc b/cc/layers/layer_impl.cc |
index 86c716946a95da937550d1af9fa08e64d7184386..3d20600ccc2bef7990cb12573b5d7c1c4195d62f 100644 |
--- a/cc/layers/layer_impl.cc |
+++ b/cc/layers/layer_impl.cc |
@@ -1077,9 +1077,14 @@ bool LayerImpl::IsHidden() const { |
} |
float LayerImpl::GetIdealContentsScale() const { |
- float page_scale = IsAffectedByPageScale() |
- ? layer_tree_impl()->current_page_scale_factor() |
- : 1.f; |
+ // When there is no page scale layer we could be rendering a sub-frame in |
+ // a separate process, so we should include the current page scale factor |
+ // for creating the raster scale. |
+ // TODO(wjmaclean): Re-word this comment in a more CC-like manner. |
+ float page_scale = |
+ (!layer_tree_impl()->PageScaleLayer() || IsAffectedByPageScale()) |
+ ? layer_tree_impl()->current_page_scale_factor() |
+ : 1.f; |
float device_scale = layer_tree_impl()->device_scale_factor(); |
float default_scale = page_scale * device_scale; |