| Index: gpu/command_buffer/service/texture_manager.cc
|
| diff --git a/gpu/command_buffer/service/texture_manager.cc b/gpu/command_buffer/service/texture_manager.cc
|
| index dd7d59c5474322fc89ea5fda5158825e06723381..fc1f21099d2daf0535e3e56b039fbb2b1d040f99 100644
|
| --- a/gpu/command_buffer/service/texture_manager.cc
|
| +++ b/gpu/command_buffer/service/texture_manager.cc
|
| @@ -785,11 +785,14 @@ bool Texture::CanGenerateMipmaps(const FeatureInfo* feature_info) const {
|
| return false;
|
| }
|
|
|
| - if (!Texture::ColorRenderable(feature_info, base.internal_format,
|
| - immutable_) ||
|
| - !Texture::TextureFilterable(feature_info, base.internal_format, base.type,
|
| - immutable_)) {
|
| - return false;
|
| + if (!feature_info->validators()->texture_unsized_internal_format.IsValid(
|
| + base.internal_format)) {
|
| + if (!Texture::ColorRenderable(feature_info, base.internal_format,
|
| + immutable_) ||
|
| + !Texture::TextureFilterable(feature_info, base.internal_format,
|
| + base.type, immutable_)) {
|
| + return false;
|
| + }
|
| }
|
|
|
| for (size_t ii = 0; ii < face_infos_.size(); ++ii) {
|
| @@ -869,7 +872,8 @@ bool Texture::ColorRenderable(const FeatureInfo* feature_info,
|
| bool immutable) {
|
| if (feature_info->validators()->texture_unsized_internal_format.IsValid(
|
| internal_format)) {
|
| - return true;
|
| + return internal_format == GL_RGBA || internal_format == GL_RGB ||
|
| + internal_format == GL_BGRA_EXT;
|
| }
|
|
|
| return SizedFormatAvailable(feature_info, immutable, internal_format) &&
|
|
|