Chromium Code Reviews| Index: content/common/gpu/gpu_command_buffer_stub.cc |
| diff --git a/content/common/gpu/gpu_command_buffer_stub.cc b/content/common/gpu/gpu_command_buffer_stub.cc |
| index 4873db16d548e4ffc0be684499c4ab722f22f9ff..fe99e210accd499f36998ca40b933e5eca9ab58a 100644 |
| --- a/content/common/gpu/gpu_command_buffer_stub.cc |
| +++ b/content/common/gpu/gpu_command_buffer_stub.cc |
| @@ -726,9 +726,14 @@ void GpuCommandBufferStub::OnParseError() { |
| // determine whether client APIs like WebGL need to be immediately |
| // blocked from automatically running. |
| GpuChannelManager* gpu_channel_manager = channel_->gpu_channel_manager(); |
| + gpu::error::ContextLostReason error = state.context_lost_reason; |
| + if (context_group_->feature_info()->workarounds().exit_on_context_lost) { |
| + // The browser might only see one lost context if we force GPU process |
| + // shutdown, so make sure it treats it seriously enough wrt 3D api blocking. |
|
no sievers
2016/03/21 18:31:15
Though there's probably a cleaner way to just hand
Ken Russell (switch to Gerrit)
2016/03/21 23:53:01
Very nice. Thank you for tracking down the need to
|
| + error = gpu::error::kUnknown; |
| + } |
| gpu_channel_manager->delegate()->DidLoseContext( |
| - (surface_handle_ == gpu::kNullSurfaceHandle), state.context_lost_reason, |
| - active_url_); |
| + (surface_handle_ == gpu::kNullSurfaceHandle), error, active_url_); |
| CheckContextLost(); |
| } |