Index: gpu/command_buffer/service/gles2_cmd_decoder.cc |
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc |
index c4470e8163b9bcad02becb46d5487236d218cb2c..928a137458704b91441488ee0c6f6505040ef50f 100644 |
--- a/gpu/command_buffer/service/gles2_cmd_decoder.cc |
+++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc |
@@ -4847,6 +4847,10 @@ void GLES2DecoderImpl::Destroy(bool have_context) { |
gpu_tracer_.reset(); |
} |
+ // Destroy the surface before the context, some surface destructors make GL |
+ // calls. |
+ surface_ = nullptr; |
jbauman
2017/01/18 21:32:09
This puts it in a pretty weird state where the und
Geoff Lang
2017/01/19 15:40:06
I did some investigating and it looks like the con
|
+ |
if (group_.get()) { |
group_->Destroy(this, have_context); |
group_ = NULL; |