| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "extensions/common/manifest_handlers/requirements_info.h" | 5 #include "extensions/common/manifest_handlers/requirements_info.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "base/lazy_instance.h" | 9 #include "base/lazy_instance.h" |
| 10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 &features) || | 110 &features) || |
| 111 !features) { | 111 !features) { |
| 112 *error = ErrorUtils::FormatErrorMessageUTF16( | 112 *error = ErrorUtils::FormatErrorMessageUTF16( |
| 113 errors::kInvalidRequirement, iter.key()); | 113 errors::kInvalidRequirement, iter.key()); |
| 114 return false; | 114 return false; |
| 115 } | 115 } |
| 116 | 116 |
| 117 for (base::ListValue::const_iterator feature_iter = features->begin(); | 117 for (base::ListValue::const_iterator feature_iter = features->begin(); |
| 118 feature_iter != features->end(); ++feature_iter) { | 118 feature_iter != features->end(); ++feature_iter) { |
| 119 std::string feature; | 119 std::string feature; |
| 120 if ((*feature_iter)->GetAsString(&feature)) { | 120 if (feature_iter->GetAsString(&feature)) { |
| 121 if (feature == "webgl") { | 121 if (feature == "webgl") { |
| 122 requirements->webgl = true; | 122 requirements->webgl = true; |
| 123 } else if (feature == "css3d") { | 123 } else if (feature == "css3d") { |
| 124 // css3d is always available, so no check is needed, but no error is | 124 // css3d is always available, so no check is needed, but no error is |
| 125 // generated. | 125 // generated. |
| 126 } else { | 126 } else { |
| 127 *error = ErrorUtils::FormatErrorMessageUTF16( | 127 *error = ErrorUtils::FormatErrorMessageUTF16( |
| 128 errors::kInvalidRequirement, iter.key()); | 128 errors::kInvalidRequirement, iter.key()); |
| 129 return false; | 129 return false; |
| 130 } | 130 } |
| (...skipping 20 matching lines...) Expand all Loading... |
| 151 *error = base::ASCIIToUTF16(errors::kInvalidRequirements); | 151 *error = base::ASCIIToUTF16(errors::kInvalidRequirements); |
| 152 return false; | 152 return false; |
| 153 } | 153 } |
| 154 } | 154 } |
| 155 | 155 |
| 156 extension->SetManifestData(keys::kRequirements, std::move(requirements)); | 156 extension->SetManifestData(keys::kRequirements, std::move(requirements)); |
| 157 return true; | 157 return true; |
| 158 } | 158 } |
| 159 | 159 |
| 160 } // namespace extensions | 160 } // namespace extensions |
| OLD | NEW |