| Index: content/browser/compositor/onscreen_display_client.cc
|
| diff --git a/content/browser/compositor/onscreen_display_client.cc b/content/browser/compositor/onscreen_display_client.cc
|
| index dbec4508926d4e9435a85f6d797d4c8e2ad2e5d2..6e2241d6cb1fbad34c892784d7a5c1968203a223 100644
|
| --- a/content/browser/compositor/onscreen_display_client.cc
|
| +++ b/content/browser/compositor/onscreen_display_client.cc
|
| @@ -25,6 +25,7 @@ OnscreenDisplayClient::OnscreenDisplayClient(
|
| BrowserGpuMemoryBufferManager::current())),
|
| task_runner_(task_runner),
|
| scheduled_draw_(false),
|
| + output_surface_lost_(false),
|
| deferred_draw_(false),
|
| pending_frames_(0),
|
| weak_ptr_factory_(this) {
|
| @@ -63,11 +64,14 @@ void OnscreenDisplayClient::ScheduleDraw() {
|
| }
|
|
|
| void OnscreenDisplayClient::OutputSurfaceLost() {
|
| + output_surface_lost_ = true;
|
| surface_display_output_surface_->DidLoseOutputSurface();
|
| }
|
|
|
| void OnscreenDisplayClient::Draw() {
|
| TRACE_EVENT0("content", "OnscreenDisplayClient::Draw");
|
| + if (output_surface_lost_)
|
| + return;
|
| scheduled_draw_ = false;
|
| display_->Draw();
|
| }
|
|
|