summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/resources/extensions/miscellaneous_bindings.js
diff options
context:
space:
mode:
authorcduvall@chromium.org <cduvall@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-07 06:31:55 +0000
committercduvall@chromium.org <cduvall@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-07 06:31:55 +0000
commit1e73bb01af4255521f957d3f2a603d179001226b (patch)
tree7755029f0d11712a807d01c110d9c603c488ccaf /chrome/renderer/resources/extensions/miscellaneous_bindings.js
parentd8bc3ecdc9f5f95de468d3b24ec59b124694ae05 (diff)
downloadchromium_src-1e73bb01af4255521f957d3f2a603d179001226b.zip
chromium_src-1e73bb01af4255521f957d3f2a603d179001226b.tar.gz
chromium_src-1e73bb01af4255521f957d3f2a603d179001226b.tar.bz2
Set up V8 bindings for extension/app APIs when they're first used, not on
context creation. This should gives us a significant reduction in extension/app startup time and slightly better memory usage. It also gives us better error messages, the chance to complete the implementation of API features, and eventually the ability to expose select extension APIs (e.g. extension.sendMessage) to web pages. Resubmitting: changes made to resubmit this patch reviewed in: https://codereview.chromium.org/12378077/ BUG=163678,120070,55316,177163 TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/11571014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186643 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/resources/extensions/miscellaneous_bindings.js')
-rw-r--r--chrome/renderer/resources/extensions/miscellaneous_bindings.js8
1 files changed, 4 insertions, 4 deletions
diff --git a/chrome/renderer/resources/extensions/miscellaneous_bindings.js b/chrome/renderer/resources/extensions/miscellaneous_bindings.js
index 147528c..b4ff126 100644
--- a/chrome/renderer/resources/extensions/miscellaneous_bindings.js
+++ b/chrome/renderer/resources/extensions/miscellaneous_bindings.js
@@ -8,10 +8,10 @@
// content scripts only.
require('json_schema');
- require('event_bindings');
var json = require('json');
var lastError = require('lastError');
var miscNatives = requireNative('miscellaneous_bindings');
+ var chrome = requireNative('chrome').GetChrome();
var CloseChannel = miscNatives.CloseChannel;
var PortAddRef = miscNatives.PortAddRef;
var PortRelease = miscNatives.PortRelease;
@@ -121,7 +121,7 @@
if (sourceExtensionId != targetExtensionId)
errorMsg += " for extension " + targetExtensionId;
errorMsg += ").";
- lastError.set(errorMsg);
+ lastError.set(errorMsg, chrome);
console.error("Could not send response: " + errorMsg);
}
@@ -233,14 +233,14 @@
if (connectionInvalid) {
var errorMsg =
"Could not establish connection. Receiving end does not exist.";
- lastError.set(errorMsg);
+ lastError.set(errorMsg, chrome);
console.error("Port error: " + errorMsg);
}
try {
port.onDisconnect.dispatch(port);
} finally {
port.destroy_();
- lastError.clear();
+ lastError.clear(chrome);
}
}
};