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

Side by Side Diff: chrome/renderer/extensions/bindings_utils.cc

Issue 3366011: base: Move SplitStringDontTrim functions from string_util.h to string_split.h (Closed) Base URL: git://git.chromium.org/chromium.git
Patch Set: remove dchecks Created 10 years, 3 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
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/renderer/extensions/bindings_utils.h" 5 #include "chrome/renderer/extensions/bindings_utils.h"
6 6
7 #include "base/string_split.h"
7 #include "base/string_util.h" 8 #include "base/string_util.h"
8 #include "chrome/renderer/render_view.h" 9 #include "chrome/renderer/render_view.h"
9 #include "third_party/WebKit/WebKit/chromium/public/WebFrame.h" 10 #include "third_party/WebKit/WebKit/chromium/public/WebFrame.h"
10 11
11 using WebKit::WebFrame; 12 using WebKit::WebFrame;
12 using WebKit::WebView; 13 using WebKit::WebView;
13 14
14 namespace bindings_utils { 15 namespace bindings_utils {
15 16
16 const char* kChromeHidden = "chromeHidden"; 17 const char* kChromeHidden = "chromeHidden";
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 v8::Handle<v8::Value> CallFunctionInContext(v8::Handle<v8::Context> context, 121 v8::Handle<v8::Value> CallFunctionInContext(v8::Handle<v8::Context> context,
121 const std::string& function_name, int argc, 122 const std::string& function_name, int argc,
122 v8::Handle<v8::Value>* argv) { 123 v8::Handle<v8::Value>* argv) {
123 v8::Context::Scope context_scope(context); 124 v8::Context::Scope context_scope(context);
124 125
125 // Look up the function name, which may be a sub-property like 126 // Look up the function name, which may be a sub-property like
126 // "Port.dispatchOnMessage" in the hidden global variable. 127 // "Port.dispatchOnMessage" in the hidden global variable.
127 v8::Local<v8::Value> value = 128 v8::Local<v8::Value> value =
128 context->Global()->GetHiddenValue(v8::String::New(kChromeHidden)); 129 context->Global()->GetHiddenValue(v8::String::New(kChromeHidden));
129 std::vector<std::string> components; 130 std::vector<std::string> components;
130 SplitStringDontTrim(function_name, '.', &components); 131 base::SplitStringDontTrim(function_name, '.', &components);
131 for (size_t i = 0; i < components.size(); ++i) { 132 for (size_t i = 0; i < components.size(); ++i) {
132 if (!value.IsEmpty() && value->IsObject()) 133 if (!value.IsEmpty() && value->IsObject())
133 value = value->ToObject()->Get(v8::String::New(components[i].c_str())); 134 value = value->ToObject()->Get(v8::String::New(components[i].c_str()));
134 } 135 }
135 if (value.IsEmpty() || !value->IsFunction()) { 136 if (value.IsEmpty() || !value->IsFunction()) {
136 NOTREACHED(); 137 NOTREACHED();
137 return v8::Undefined(); 138 return v8::Undefined();
138 } 139 }
139 140
140 v8::Local<v8::Function> function = v8::Local<v8::Function>::Cast(value); 141 v8::Local<v8::Function> function = v8::Local<v8::Function>::Cast(value);
141 if (!function.IsEmpty()) 142 if (!function.IsEmpty())
142 return function->Call(v8::Object::New(), argc, argv); 143 return function->Call(v8::Object::New(), argc, argv);
143 144
144 return v8::Undefined(); 145 return v8::Undefined();
145 } 146 }
146 147
147 } // namespace bindings_utils 148 } // namespace bindings_utils
OLDNEW
« no previous file with comments | « chrome/plugin/chrome_plugin_host.cc ('k') | chrome/renderer/safe_browsing/phishing_url_feature_extractor.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698