Index: content/browser/renderer_host/render_widget_host_view_android.cc |
diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc |
index 1514c5ac77e3378b2c97fbcc7bdd9fe016855769..006797e2d6ae81c109fcf49094bde77c9906da65 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_android.cc |
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc |
@@ -308,6 +308,12 @@ gfx::Rect RenderWidgetHostViewAndroid::GetViewBounds() const { |
if (!content_view_core_) |
return gfx::Rect(); |
+ // If the backing hasn't been initialized yet, report empty view bounds |
+ // as well. Otherwise, we may end up stuck in a white-screen state because |
+ // the resize ack is sent after swapbuffers. |
+ if (GetPhysicalBackingSize().IsEmpty()) |
+ return gfx::Rect(); |
+ |
return gfx::Rect(content_view_core_->GetViewportSizeDip()); |
} |