Chromium Code Reviews| Index: gpu/command_buffer/service/texture_definition.cc |
| diff --git a/gpu/command_buffer/service/texture_definition.cc b/gpu/command_buffer/service/texture_definition.cc |
| index edd42717d3702ba9b421d5ba87ae79549ca11377..3d8f6704847f8b1e20f8da0c1e292d9bae265008 100644 |
| --- a/gpu/command_buffer/service/texture_definition.cc |
| +++ b/gpu/command_buffer/service/texture_definition.cc |
| @@ -413,7 +413,8 @@ bool TextureDefinition::Matches(const Texture* texture) const { |
| if (texture->min_filter_ != min_filter_ || |
| texture->mag_filter_ != mag_filter_ || |
| texture->wrap_s_ != wrap_s_ || |
| - texture->wrap_t_ != wrap_t_) { |
| + texture->wrap_t_ != wrap_t_ || |
| + texture->SafeToRenderFrom() != SafeToRenderFrom()) { |
| return false; |
| } |
| @@ -424,5 +425,17 @@ bool TextureDefinition::Matches(const Texture* texture) const { |
| return true; |
| } |
| +bool TextureDefinition::SafeToRenderFrom() const { |
| + for (size_t i = 0; i < level_infos_.size(); i++) { |
| + const std::vector<LevelInfo>& face_info = level_infos_[i]; |
| + for (size_t j = 0; j < face_info.size(); ++j) { |
|
no sievers
2015/01/29 20:23:49
for (const std::vector<LevelInfo>& face_info : lev
boliu
2015/01/29 22:04:34
Done. c++11 all the way!
|
| + if (!face_info[j].cleared) { |
| + return false; |
| + } |
| + } |
| + } |
| + return true; |
| +} |
| + |
| } // namespace gles2 |
| } // namespace gpu |