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 04bff52c51f8f3bad599c03c1f4a39bdc8fda89f..9d8cee05a726f218a22daedf6116771d425e7e7d 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) { |
{ |
@@ -144,6 +145,12 @@ bool ContextGroup::Initialize( |
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, |
+ &max_dual_source_draw_buffers_); |
+ if (max_dual_source_draw_buffers_ < 1) |
+ max_dual_source_draw_buffers_ = 0; |
Mark Kilgard
2015/08/28 19:53:24
Context: just to set expectations, the value of GL
|
+ } |
buffer_manager_.reset( |
new BufferManager(memory_tracker_.get(), feature_info_.get())); |
@@ -290,8 +297,9 @@ bool ContextGroup::Initialize( |
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 " |