| Index: gpu/command_buffer/service/async_pixel_transfer_manager_idle.cc
|
| diff --git a/gpu/command_buffer/service/async_pixel_transfer_manager_idle.cc b/gpu/command_buffer/service/async_pixel_transfer_manager_idle.cc
|
| index 61db3b68413dde50d864b6d0ea5ce7218fed71b4..a0edd11b3dca475dd836c946cde49737a758a997 100644
|
| --- a/gpu/command_buffer/service/async_pixel_transfer_manager_idle.cc
|
| +++ b/gpu/command_buffer/service/async_pixel_transfer_manager_idle.cc
|
| @@ -183,9 +183,8 @@ void AsyncPixelTransferDelegateIdle::PerformAsyncTexSubImage2D(
|
| base::TimeTicks begin_time(base::TimeTicks::HighResNow());
|
| gfx::ScopedTextureBinder texture_binder(tex_params.target, texture_id_);
|
|
|
| - // If it's a full texture update, use glTexImage2D as it's faster.
|
| - // TODO(epenner): Make this configurable (http://crbug.com/259924)
|
| - if (tex_params.xoffset == 0 &&
|
| + if (!shared_state_->use_texsubimage2d_over_teximage2d &&
|
| + tex_params.xoffset == 0 &&
|
| tex_params.yoffset == 0 &&
|
| tex_params.target == define_params_.target &&
|
| tex_params.level == define_params_.level &&
|
| @@ -234,8 +233,11 @@ AsyncPixelTransferManagerIdle::Task::Task(
|
|
|
| AsyncPixelTransferManagerIdle::Task::~Task() {}
|
|
|
| -AsyncPixelTransferManagerIdle::SharedState::SharedState()
|
| - : texture_upload_count(0) {}
|
| +AsyncPixelTransferManagerIdle::SharedState::SharedState(
|
| + bool use_texsubimage2d_over_teximage2d)
|
| + : use_texsubimage2d_over_teximage2d(use_texsubimage2d_over_teximage2d),
|
| + texture_upload_count(0) {
|
| +}
|
|
|
| AsyncPixelTransferManagerIdle::SharedState::~SharedState() {}
|
|
|
| @@ -250,8 +252,9 @@ void AsyncPixelTransferManagerIdle::SharedState::ProcessNotificationTasks() {
|
| }
|
| }
|
|
|
| -AsyncPixelTransferManagerIdle::AsyncPixelTransferManagerIdle()
|
| - : shared_state_() {
|
| +AsyncPixelTransferManagerIdle::AsyncPixelTransferManagerIdle(
|
| + bool use_texsubimage2d_over_teximage2d)
|
| + : shared_state_(use_texsubimage2d_over_teximage2d) {
|
| }
|
|
|
| AsyncPixelTransferManagerIdle::~AsyncPixelTransferManagerIdle() {}
|
|
|