Index: services/ui/surfaces/display_output_surface.cc |
diff --git a/services/ui/surfaces/display_output_surface.cc b/services/ui/surfaces/display_output_surface.cc |
index e635a4205fa169c1d32e7ac0e1ecd5db64f7af7a..37604e770553fb265c01fceb7bd7149b56a51500 100644 |
--- a/services/ui/surfaces/display_output_surface.cc |
+++ b/services/ui/surfaces/display_output_surface.cc |
@@ -65,11 +65,11 @@ void DisplayOutputSurface::Reshape(const gfx::Size& size, |
void DisplayOutputSurface::SwapBuffers(cc::OutputSurfaceFrame frame) { |
DCHECK(context_provider_); |
- if (frame.sub_buffer_rect == gfx::Rect(frame.size)) { |
- context_provider_->ContextSupport()->Swap(); |
- } else { |
+ if (frame.sub_buffer_rect) { |
context_provider_->ContextSupport()->PartialSwapBuffers( |
- frame.sub_buffer_rect); |
+ *frame.sub_buffer_rect); |
+ } else { |
+ context_provider_->ContextSupport()->Swap(); |
} |
} |