| Index: cc/output/output_surface.cc
|
| diff --git a/cc/output/output_surface.cc b/cc/output/output_surface.cc
|
| index fe2b074ee46d033f7900054ccb164dc3b3992cae..051b5fc92397887debdf23b6d0def74afde7cab1 100644
|
| --- a/cc/output/output_surface.cc
|
| +++ b/cc/output/output_surface.cc
|
| @@ -112,8 +112,18 @@ void OutputSurface::DiscardBackbuffer() {
|
| }
|
|
|
| void OutputSurface::Reshape(gfx::Size size, float scale_factor) {
|
| - DCHECK(context3d_);
|
| - context3d_->reshapeWithScaleFactor(size.width(), size.height(), scale_factor);
|
| + if (size == surface_size_ && scale_factor == device_scale_factor_)
|
| + return;
|
| +
|
| + surface_size_ = size;
|
| + device_scale_factor_ = scale_factor;
|
| + if (context3d_)
|
| + context3d_->reshapeWithScaleFactor(
|
| + size.width(), size.height(), scale_factor);
|
| +}
|
| +
|
| +gfx::Size OutputSurface::SurfaceSize() const {
|
| + return surface_size_;
|
| }
|
|
|
| void OutputSurface::BindFramebuffer() {
|
|
|