| Index: cc/layers/picture_layer_impl.cc
|
| diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc
|
| index b3bf1e6c697887673e7264381f1ab37214bcc42c..855c331ef35d871395498ad66089283356f5c995 100644
|
| --- a/cc/layers/picture_layer_impl.cc
|
| +++ b/cc/layers/picture_layer_impl.cc
|
| @@ -292,8 +292,10 @@ void PictureLayerImpl::AppendQuads(RenderPass* render_pass,
|
| if (visible_geometry_rect.IsEmpty())
|
| continue;
|
|
|
| - append_quads_data->visible_layer_area +=
|
| - visible_geometry_rect.width() * visible_geometry_rect.height();
|
| + int64_t visible_geometry_area =
|
| + static_cast<int64_t>(visible_geometry_rect.width()) *
|
| + visible_geometry_rect.height();
|
| + append_quads_data->visible_layer_area += visible_geometry_area;
|
|
|
| bool has_draw_quad = false;
|
| if (*iter && iter->draw_info().IsReadyToDraw()) {
|
| @@ -357,10 +359,8 @@ void PictureLayerImpl::AppendQuads(RenderPass* render_pass,
|
| append_quads_data->num_missing_tiles++;
|
| ++missing_tile_count;
|
| }
|
| - int64_t checkerboarded_area =
|
| - visible_geometry_rect.width() * visible_geometry_rect.height();
|
| append_quads_data->checkerboarded_visible_content_area +=
|
| - checkerboarded_area;
|
| + visible_geometry_area;
|
| // Intersect checkerboard rect with interest rect to generate rect where
|
| // we checkerboarded and has recording. The area where we don't have
|
| // recording is not necessarily a Rect, and its area is calculated using
|
| @@ -368,18 +368,18 @@ void PictureLayerImpl::AppendQuads(RenderPass* render_pass,
|
| gfx::Rect visible_rect_has_recording = visible_geometry_rect;
|
| visible_rect_has_recording.Intersect(scaled_recorded_viewport);
|
| int64_t checkerboarded_has_recording_area =
|
| - visible_rect_has_recording.width() *
|
| + static_cast<int64_t>(visible_rect_has_recording.width()) *
|
| visible_rect_has_recording.height();
|
| append_quads_data->checkerboarded_needs_raster_content_area +=
|
| checkerboarded_has_recording_area;
|
| append_quads_data->checkerboarded_no_recording_content_area +=
|
| - checkerboarded_area - checkerboarded_has_recording_area;
|
| + visible_geometry_area - checkerboarded_has_recording_area;
|
| continue;
|
| }
|
|
|
| if (iter.resolution() != HIGH_RESOLUTION) {
|
| append_quads_data->approximated_visible_content_area +=
|
| - visible_geometry_rect.width() * visible_geometry_rect.height();
|
| + visible_geometry_area;
|
| }
|
|
|
| // If we have a draw quad, but it's not low resolution, then
|
|
|