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 ba0437bfd4e389158b767c2c1398b41c33eb4d55..3257c387c7d4b74e0ac69fab046f43f0de5f708c 100644 |
--- a/gpu/command_buffer/service/context_group.cc |
+++ b/gpu/command_buffer/service/context_group.cc |
@@ -18,6 +18,7 @@ |
#include "gpu/command_buffer/service/image_manager.h" |
#include "gpu/command_buffer/service/mailbox_manager.h" |
#include "gpu/command_buffer/service/memory_tracking.h" |
+#include "gpu/command_buffer/service/path_manager.h" |
#include "gpu/command_buffer/service/program_manager.h" |
#include "gpu/command_buffer/service/renderbuffer_manager.h" |
#include "gpu/command_buffer/service/shader_manager.h" |
@@ -68,6 +69,7 @@ ContextGroup::ContextGroup( |
id_namespaces_[id_namespaces::kTextures].reset(new IdAllocator); |
id_namespaces_[id_namespaces::kQueries].reset(new IdAllocator); |
id_namespaces_[id_namespaces::kVertexArrays].reset(new IdAllocator); |
+ id_namespaces_[id_namespaces::kPaths].reset(new NonReusedIdAllocator); |
} |
static void GetIntegerv(GLenum pname, uint32* var) { |
@@ -243,6 +245,8 @@ bool ContextGroup::Initialize( |
feature_info_->workarounds().max_vertex_uniform_vectors)); |
} |
+ path_manager_.reset(new PathManager()); |
+ |
program_manager_.reset(new ProgramManager( |
program_cache_, max_varying_vectors_)); |
@@ -314,6 +318,11 @@ void ContextGroup::Destroy(GLES2Decoder* decoder, bool have_context) { |
texture_manager_.reset(); |
} |
+ if (path_manager_ != NULL) { |
+ path_manager_->Destroy(have_context); |
+ path_manager_.reset(); |
+ } |
+ |
if (program_manager_ != NULL) { |
program_manager_->Destroy(have_context); |
program_manager_.reset(); |