| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "ui/gl/gl_version_info.h" | 5 #include "ui/gl/gl_version_info.h" |
| 6 | 6 |
| 7 #include "base/strings/string_number_conversions.h" | 7 #include "base/strings/string_number_conversions.h" |
| 8 #include "base/strings/string_tokenizer.h" | 8 #include "base/strings/string_tokenizer.h" |
| 9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
| 10 | 10 |
| 11 namespace gfx { | 11 namespace gfx { |
| 12 | 12 |
| 13 GLVersionInfo::GLVersionInfo(const char* version_str, const char* renderer_str) | 13 GLVersionInfo::GLVersionInfo(const char* version_str, const char* renderer_str) |
| 14 : is_es(false), | 14 : is_es(false), |
| 15 is_angle(false), | 15 is_angle(false), |
| 16 major_version(0), | 16 major_version(0), |
| 17 minor_version(0), | 17 minor_version(0), |
| 18 is_es3(false) { | 18 is_es3(false) { |
| 19 if (version_str) { | 19 if (version_str) { |
| 20 std::string lstr(base::StringToLowerASCII(std::string(version_str))); | 20 std::string lstr(base::ToLowerASCII(std::string(version_str))); |
| 21 is_es = (lstr.length() > 12) && (lstr.substr(0, 9) == "opengl es"); | 21 is_es = (lstr.length() > 12) && (lstr.substr(0, 9) == "opengl es"); |
| 22 if (is_es) | 22 if (is_es) |
| 23 lstr = lstr.substr(10, 3); | 23 lstr = lstr.substr(10, 3); |
| 24 base::StringTokenizer tokenizer(lstr.begin(), lstr.end(), "."); | 24 base::StringTokenizer tokenizer(lstr.begin(), lstr.end(), "."); |
| 25 unsigned major, minor; | 25 unsigned major, minor; |
| 26 if (tokenizer.GetNext() && | 26 if (tokenizer.GetNext() && |
| 27 base::StringToUint(tokenizer.token_piece(), &major)) { | 27 base::StringToUint(tokenizer.token_piece(), &major)) { |
| 28 major_version = major; | 28 major_version = major; |
| 29 if (tokenizer.GetNext() && | 29 if (tokenizer.GetNext() && |
| 30 base::StringToUint(tokenizer.token_piece(), &minor)) { | 30 base::StringToUint(tokenizer.token_piece(), &minor)) { |
| 31 minor_version = minor; | 31 minor_version = minor; |
| 32 } | 32 } |
| 33 } | 33 } |
| 34 if (is_es && major_version == 3) | 34 if (is_es && major_version == 3) |
| 35 is_es3 = true; | 35 is_es3 = true; |
| 36 } | 36 } |
| 37 if (renderer_str) { | 37 if (renderer_str) { |
| 38 is_angle = | 38 is_angle = |
| 39 base::StartsWith(renderer_str, "ANGLE", base::CompareCase::SENSITIVE); | 39 base::StartsWith(renderer_str, "ANGLE", base::CompareCase::SENSITIVE); |
| 40 } | 40 } |
| 41 } | 41 } |
| 42 | 42 |
| 43 } // namespace gfx | 43 } // namespace gfx |
| OLD | NEW |