Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: chrome/common/extensions/api/extension_api.cc

Issue 9950039: Revert r12998 - it broke some media/mime-related layout tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « base/string_split_unittest.cc ('k') | chrome/common/extensions/api/extension_api_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/common/extensions/api/extension_api.h" 5 #include "chrome/common/extensions/api/extension_api.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 } 261 }
262 262
263 bool ExtensionAPI::IsPrivileged(const std::string& full_name) { 263 bool ExtensionAPI::IsPrivileged(const std::string& full_name) {
264 std::string api_name; 264 std::string api_name;
265 std::string child_name; 265 std::string child_name;
266 266
267 { 267 {
268 std::vector<std::string> split; 268 std::vector<std::string> split;
269 base::SplitString(full_name, '.', &split); 269 base::SplitString(full_name, '.', &split);
270 std::reverse(split.begin(), split.end()); 270 std::reverse(split.begin(), split.end());
271 CHECK(!split.empty()); // |full_name| was empty or only whitespace.
272 271
273 api_name = split.back(); 272 api_name = split.back();
274 split.pop_back(); 273 split.pop_back();
275 if (api_name == "experimental") { 274 if (api_name == "experimental") {
276 CHECK(!split.empty()); // |full_name| was "experimental" alone.
277 api_name += "." + split.back(); 275 api_name += "." + split.back();
278 split.pop_back(); 276 split.pop_back();
279 } 277 }
280 278
281 // This only really works properly if split.size() == 1, however: 279 // This only really works properly if split.size() == 1, however:
282 // - if it's empty, it's ok to leave child_name empty; presumably there's 280 // - if it's empty, it's ok to leave child_name empty; presumably there's
283 // no functions or events with empty names. 281 // no functions or events with empty names.
284 // - if it's > 1, we can just do our best. 282 // - if it's > 1, we can just do our best.
285 if (split.size() > 0) 283 if (split.size() > 0)
286 child_name = split[0]; 284 child_name = split[0];
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 } 457 }
460 } 458 }
461 459
462 void ExtensionAPI::LoadAllSchemas() { 460 void ExtensionAPI::LoadAllSchemas() {
463 while (unloaded_schemas_.size()) { 461 while (unloaded_schemas_.size()) {
464 LoadSchema(unloaded_schemas_.begin()->second); 462 LoadSchema(unloaded_schemas_.begin()->second);
465 } 463 }
466 } 464 }
467 465
468 } // namespace extensions 466 } // namespace extensions
OLDNEW
« no previous file with comments | « base/string_split_unittest.cc ('k') | chrome/common/extensions/api/extension_api_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698