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

Unified Diff: chrome/renderer/extensions/chrome_v8_extension.cc

Issue 8277020: Stop copying extension bindings scripts. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Created 9 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: chrome/renderer/extensions/chrome_v8_extension.cc
diff --git a/chrome/renderer/extensions/chrome_v8_extension.cc b/chrome/renderer/extensions/chrome_v8_extension.cc
index 274ccac46f98a63b074d3c2a96c4906784e250b8..9cc8d702f3b7109fb86484d62e3fe4b615b734e2 100644
--- a/chrome/renderer/extensions/chrome_v8_extension.cc
+++ b/chrome/renderer/extensions/chrome_v8_extension.cc
@@ -39,16 +39,13 @@ static base::LazyInstance<ChromeV8Extension::InstanceSet> g_instances(
// static
-const char* ChromeV8Extension::GetStringResource(int resource_id) {
- StringMap* strings = g_string_map.Pointer();
- StringMap::iterator it = strings->find(resource_id);
- if (it == strings->end()) {
- it = strings->insert(std::make_pair(
- resource_id,
- ResourceBundle::GetSharedInstance().GetRawDataResource(
- resource_id).as_string())).first;
- }
- return it->second.c_str();
+base::StringPiece
+ChromeV8Extension::GetStringResourceAsStringPiece(int resource_id) {
+ return ResourceBundle::GetSharedInstance().GetRawDataResource(resource_id);
+}
+
+int ChromeV8Extension::GetStringResourceLength(int resource_id) {
+ return ChromeV8Extension::GetStringResourceAsStringPiece(resource_id).size();
}
// static
@@ -70,9 +67,10 @@ content::RenderView* ChromeV8Extension::GetCurrentRenderView() {
ChromeV8Extension::ChromeV8Extension(const char* name, int resource_id,
ExtensionDispatcher* extension_dispatcher)
: v8::Extension(name,
- GetStringResource(resource_id),
- 0, // num dependencies
- NULL), // dependencies array
+ GetStringResourceAsStringPiece(resource_id).data(),
+ 0, // num dependencies
+ NULL, // dependencies array
+ GetStringResourceLength(resource_id)), // source length
extension_dispatcher_(extension_dispatcher) {
g_instances.Get().insert(this);
}
@@ -82,9 +80,10 @@ ChromeV8Extension::ChromeV8Extension(const char* name, int resource_id,
const char** dependencies,
ExtensionDispatcher* extension_dispatcher)
: v8::Extension(name,
- GetStringResource(resource_id),
+ GetStringResourceAsStringPiece(resource_id).data(),
dependency_count,
- dependencies),
+ dependencies,
+ GetStringResourceLength(resource_id)),
extension_dispatcher_(extension_dispatcher) {
g_instances.Get().insert(this);
}

Powered by Google App Engine
This is Rietveld 408576698