| 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 b42c220ec13f84e0581fbc37e089b2a5315301e2..0d9f326e5f916c441e593860bc19d2b208bbba84 100644
|
| --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| @@ -670,6 +670,7 @@ class GLES2DecoderImpl : public base::SupportsWeakPtr<GLES2DecoderImpl>,
|
| // Overridden from GLES2Decoder.
|
| virtual bool Initialize(gfx::GLContext* context,
|
| const gfx::Size& size,
|
| + const DisallowedExtensions& disallowed_extensions,
|
| const char* allowed_extensions,
|
| const std::vector<int32>& attribs,
|
| GLES2Decoder* parent,
|
| @@ -1442,6 +1443,8 @@ class GLES2DecoderImpl : public base::SupportsWeakPtr<GLES2DecoderImpl>,
|
| scoped_ptr<ShaderTranslator> vertex_translator_;
|
| scoped_ptr<ShaderTranslator> fragment_translator_;
|
|
|
| + DisallowedExtensions disallowed_extensions_;
|
| +
|
| // Cached from ContextGroup
|
| const Validators* validators_;
|
| FeatureInfo* feature_info_;
|
| @@ -1787,12 +1790,14 @@ GLES2DecoderImpl::GLES2DecoderImpl(ContextGroup* group)
|
| }
|
| }
|
|
|
| -bool GLES2DecoderImpl::Initialize(gfx::GLContext* context,
|
| - const gfx::Size& size,
|
| - const char* allowed_extensions,
|
| - const std::vector<int32>& attribs,
|
| - GLES2Decoder* parent,
|
| - uint32 parent_client_texture_id) {
|
| +bool GLES2DecoderImpl::Initialize(
|
| + gfx::GLContext* context,
|
| + const gfx::Size& size,
|
| + const DisallowedExtensions& disallowed_extensions,
|
| + const char* allowed_extensions,
|
| + const std::vector<int32>& attribs,
|
| + GLES2Decoder* parent,
|
| + uint32 parent_client_texture_id) {
|
| DCHECK(context);
|
| DCHECK(!context_.get());
|
|
|
| @@ -1811,7 +1816,7 @@ bool GLES2DecoderImpl::Initialize(gfx::GLContext* context,
|
| return false;
|
| }
|
|
|
| - if (!group_->Initialize(allowed_extensions)) {
|
| + if (!group_->Initialize(disallowed_extensions, allowed_extensions)) {
|
| LOG(ERROR) << "GPUProcessor::InitializeCommon failed because group "
|
| << "failed to initialize.";
|
| Destroy();
|
| @@ -1819,6 +1824,7 @@ bool GLES2DecoderImpl::Initialize(gfx::GLContext* context,
|
| }
|
|
|
| CHECK_GL_ERROR();
|
| + disallowed_extensions_ = disallowed_extensions;
|
|
|
| vertex_attrib_manager_.Initialize(group_->max_vertex_attribs());
|
|
|
| @@ -6168,7 +6174,7 @@ error::Error GLES2DecoderImpl::HandleGetRequestableExtensionsCHROMIUM(
|
| const gles2::GetRequestableExtensionsCHROMIUM& c) {
|
| Bucket* bucket = CreateBucket(c.bucket_id);
|
| scoped_ptr<FeatureInfo> info(new FeatureInfo());
|
| - info->Initialize(NULL);
|
| + info->Initialize(disallowed_extensions_, NULL);
|
| bucket->SetFromString(info->extensions().c_str());
|
| return error::kNoError;
|
| }
|
|
|