Index: gpu/command_buffer/service/async_pixel_transfer_manager_android.cc |
diff --git a/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc b/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc |
index 8de7d58a07af2d704361313a8c92fe874f516c6d..5aaabf4ea8ae89733d07c214fe872839115c986a 100644 |
--- a/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc |
+++ b/gpu/command_buffer/service/async_pixel_transfer_manager_android.cc |
@@ -4,6 +4,7 @@ |
#include "gpu/command_buffer/service/async_pixel_transfer_manager.h" |
+#include "base/android/sys_utils.h" |
#include "base/debug/trace_event.h" |
#include "gpu/command_buffer/service/async_pixel_transfer_manager_egl.h" |
#include "gpu/command_buffer/service/async_pixel_transfer_manager_idle.h" |
@@ -38,6 +39,8 @@ bool IsImagination() { |
// - The heap size is large enough. |
// TODO(kaanb|epenner): Remove the IsImagination() check pending the |
// resolution of crbug.com/249147 |
+// TODO(kaanb|epenner): Remove the IsLowEndDevice() check pending the |
+// resolution of crbug.com/271929 |
AsyncPixelTransferManager* AsyncPixelTransferManager::Create( |
gfx::GLContext* context) { |
TRACE_EVENT0("gpu", "AsyncPixelTransferManager::Create"); |
@@ -50,7 +53,8 @@ AsyncPixelTransferManager* AsyncPixelTransferManager::Create( |
context->HasExtension("EGL_KHR_gl_texture_2D_image") && |
context->HasExtension("GL_OES_EGL_image") && |
!IsBroadcom() && |
- !IsImagination()) { |
+ !IsImagination() && |
+ !base::android::SysUtils::IsLowEndDevice()) { |
return new AsyncPixelTransferManagerEGL; |
} |
LOG(INFO) << "Async pixel transfers not supported"; |