Index: gpu/command_buffer/client/share_group.h |
diff --git a/gpu/command_buffer/client/share_group.h b/gpu/command_buffer/client/share_group.h |
index 091b69f2385034d354e2f5946dcecabc67d4d2a2..08b40f05bc6f03490d8f7016cb2b2269be2aa1fc 100644 |
--- a/gpu/command_buffer/client/share_group.h |
+++ b/gpu/command_buffer/client/share_group.h |
@@ -32,6 +32,8 @@ typedef void (GLES2Implementation::*BindIndexedFn)( \ |
typedef void (GLES2Implementation::*BindIndexedRangeFn)( \ |
GLenum target, GLuint index, GLuint id, GLintptr offset, GLsizeiptr size); |
+using SharedIdNamespaces = id_namespaces::SharedIdNamespaces; |
+ |
class ShareGroupContextData { |
public: |
struct IdHandlerData { |
@@ -47,7 +49,8 @@ class ShareGroupContextData { |
} |
private: |
- IdHandlerData id_handler_data_[id_namespaces::kNumIdNamespaces]; |
+ IdHandlerData id_handler_data_[static_cast<int>( |
+ SharedIdNamespaces::kNumSharedIdNamespaces)]; |
}; |
// Base class for IdHandlers |
@@ -124,8 +127,8 @@ class GLES2_IMPL_EXPORT ShareGroup |
return bind_generates_resource_; |
} |
- IdHandlerInterface* GetIdHandler(int namespace_id) const { |
- return id_handlers_[namespace_id].get(); |
+ IdHandlerInterface* GetIdHandler(SharedIdNamespaces namespace_id) const { |
+ return id_handlers_[static_cast<int>(namespace_id)].get(); |
} |
RangeIdHandlerInterface* GetRangeIdHandler(int range_namespace_id) const { |
@@ -137,7 +140,9 @@ class GLES2_IMPL_EXPORT ShareGroup |
} |
void FreeContext(GLES2Implementation* gl_impl) { |
- for (int i = 0; i < id_namespaces::kNumIdNamespaces; ++i) { |
+ for (int i = 0; |
+ i < static_cast<int>(SharedIdNamespaces::kNumSharedIdNamespaces); |
+ ++i) { |
id_handlers_[i]->FreeContext(gl_impl); |
} |
for (auto& range_id_handler : range_id_handlers_) { |
@@ -162,8 +167,8 @@ class GLES2_IMPL_EXPORT ShareGroup |
// Install a new program info manager. Used for testing only; |
void SetProgramInfoManagerForTesting(ProgramInfoManager* manager); |
- std::unique_ptr<IdHandlerInterface> |
- id_handlers_[id_namespaces::kNumIdNamespaces]; |
+ std::unique_ptr<IdHandlerInterface> id_handlers_[static_cast<int>( |
+ SharedIdNamespaces::kNumSharedIdNamespaces)]; |
std::unique_ptr<RangeIdHandlerInterface> |
range_id_handlers_[id_namespaces::kNumRangeIdNamespaces]; |
std::unique_ptr<ProgramInfoManager> program_info_manager_; |