| 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 2600021454afa1684f50b0b6c659eda4757dc1b5..e605700a001f7f94af7cc16cad31eb9e85eeee8b 100644
|
| --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| @@ -650,6 +650,9 @@ class GLES2DecoderImpl : public GLES2Decoder,
|
| virtual VertexArrayManager* GetVertexArrayManager() OVERRIDE {
|
| return vertex_array_manager_.get();
|
| }
|
| + virtual ImageManager* GetImageManager() OVERRIDE {
|
| + return image_manager_.get();
|
| + }
|
| virtual bool ProcessPendingQueries() OVERRIDE;
|
| virtual bool HasMoreIdleWork() OVERRIDE;
|
| virtual void PerformIdleWork() OVERRIDE;
|
| @@ -806,9 +809,7 @@ class GLES2DecoderImpl : public GLES2Decoder,
|
| return group_->mailbox_manager();
|
| }
|
|
|
| - ImageManager* image_manager() {
|
| - return group_->image_manager();
|
| - }
|
| + ImageManager* image_manager() { return image_manager_.get(); }
|
|
|
| VertexArrayManager* vertex_array_manager() {
|
| return vertex_array_manager_.get();
|
| @@ -1737,6 +1738,8 @@ class GLES2DecoderImpl : public GLES2Decoder,
|
|
|
| scoped_ptr<VertexArrayManager> vertex_array_manager_;
|
|
|
| + scoped_ptr<ImageManager> image_manager_;
|
| +
|
| base::Callback<void(gfx::Size, float)> resize_callback_;
|
|
|
| WaitSyncPointCallback wait_sync_point_callback_;
|
| @@ -2409,6 +2412,8 @@ bool GLES2DecoderImpl::Initialize(
|
|
|
| query_manager_.reset(new QueryManager(this, feature_info_.get()));
|
|
|
| + image_manager_.reset(new ImageManager);
|
| +
|
| util_.set_num_compressed_texture_formats(
|
| validators_->compressed_texture_format.GetValues().size());
|
|
|
| @@ -2673,10 +2678,6 @@ bool GLES2DecoderImpl::Initialize(
|
| context_->SetUnbindFboOnMakeCurrent();
|
| }
|
|
|
| - if (feature_info_->workarounds().release_image_after_use) {
|
| - image_manager()->SetReleaseAfterUse();
|
| - }
|
| -
|
| // Only compositor contexts are known to use only the subset of GL
|
| // that can be safely migrated between the iGPU and the dGPU. Mark
|
| // those contexts as safe to forcibly transition between the GPUs.
|
| @@ -2717,7 +2718,7 @@ Capabilities GLES2DecoderImpl::GetCapabilities() {
|
| #endif
|
|
|
| caps.post_sub_buffer = supports_post_sub_buffer_;
|
| - caps.map_image = !!image_manager();
|
| + caps.map_image = true;
|
|
|
| return caps;
|
| }
|
|
|