| Index: cc/layers/picture_layer_impl.cc
|
| diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
|
| index 1827bea13d8923746825029c691e5b731226c0c1..eb90e955d9e699b613001cf3552de27af76fdc81 100644
|
| --- a/cc/layers/picture_layer_impl.cc
|
| +++ b/cc/layers/picture_layer_impl.cc
|
| @@ -1048,8 +1048,12 @@ void PictureLayerImpl::RecalculateRasterScales() {
|
| if (maximum_scale) {
|
| gfx::Size bounds_at_maximum_scale = gfx::ToCeiledSize(
|
| gfx::ScaleSize(raster_source_->GetSize(), maximum_scale));
|
| - if (bounds_at_maximum_scale.GetArea() <=
|
| - layer_tree_impl()->device_viewport_size().GetArea())
|
| + int64 maximum_area = static_cast<int64>(bounds_at_maximum_scale.width()) *
|
| + static_cast<int64>(bounds_at_maximum_scale.height());
|
| + gfx::Size viewport = layer_tree_impl()->device_viewport_size();
|
| + int64 viewport_area = static_cast<int64>(viewport.width()) *
|
| + static_cast<int64>(viewport.height());
|
| + if (maximum_area <= viewport_area)
|
| can_raster_at_maximum_scale = true;
|
| }
|
| // Use the computed scales for the raster scale directly, do not try to use
|
|
|