| Index: gpu/command_buffer/service/context_group.cc
|
| diff --git a/gpu/command_buffer/service/context_group.cc b/gpu/command_buffer/service/context_group.cc
|
| index 7e5589f48ef5e658d00276903b8e03a4cae21ee7..cb1e185bca2fe6ecb31cbfd2e59a077d5cebf6be 100644
|
| --- a/gpu/command_buffer/service/context_group.cc
|
| +++ b/gpu/command_buffer/service/context_group.cc
|
| @@ -68,6 +68,7 @@ ContextGroup::ContextGroup(
|
| max_vertex_uniform_vectors_(0u),
|
| max_color_attachments_(1u),
|
| max_draw_buffers_(1u),
|
| + max_dual_source_draw_buffers_(0u),
|
| program_cache_(NULL),
|
| feature_info_(feature_info) {
|
| {
|
| @@ -143,6 +144,11 @@ bool ContextGroup::Initialize(GLES2Decoder* decoder,
|
| if (max_draw_buffers_ < 1)
|
| max_draw_buffers_ = 1;
|
| }
|
| + if (feature_info_->feature_flags().ext_blend_func_extended) {
|
| + GetIntegerv(GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT,
|
| + &max_dual_source_draw_buffers_);
|
| + DCHECK(max_dual_source_draw_buffers_ >= 1);
|
| + }
|
|
|
| buffer_manager_.reset(
|
| new BufferManager(memory_tracker_.get(), feature_info_.get()));
|
| @@ -289,8 +295,9 @@ bool ContextGroup::Initialize(GLES2Decoder* decoder,
|
|
|
| path_manager_.reset(new PathManager());
|
|
|
| - program_manager_.reset(new ProgramManager(
|
| - program_cache_, max_varying_vectors_, feature_info_.get()));
|
| + program_manager_.reset(
|
| + new ProgramManager(program_cache_, max_varying_vectors_,
|
| + max_dual_source_draw_buffers_, feature_info_.get()));
|
|
|
| if (!texture_manager_->Initialize()) {
|
| LOG(ERROR) << "Context::Group::Initialize failed because texture manager "
|
|
|