diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-14 19:08:41 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-14 19:08:41 +0000 |
commit | 9cec718466e9dec2fc36d7cc3951aee737df5f64 (patch) | |
tree | 65b4f49488a9fcac2e1b7b568e26917e0857372f /chrome/renderer/extensions/bindings_utils.cc | |
parent | 886f4f9d55ddaf72f7e0b870f5510538dae38281 (diff) | |
download | chromium_src-9cec718466e9dec2fc36d7cc3951aee737df5f64.zip chromium_src-9cec718466e9dec2fc36d7cc3951aee737df5f64.tar.gz chromium_src-9cec718466e9dec2fc36d7cc3951aee737df5f64.tar.bz2 |
Fix bug where content scripts can get GC'd if they don't
attach to any DOM events.
BUG=17410
TEST=none
Review URL: http://codereview.chromium.org/200116
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26136 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/extensions/bindings_utils.cc')
-rw-r--r-- | chrome/renderer/extensions/bindings_utils.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/chrome/renderer/extensions/bindings_utils.cc b/chrome/renderer/extensions/bindings_utils.cc index d96f8d7..ddccf2c 100644 --- a/chrome/renderer/extensions/bindings_utils.cc +++ b/chrome/renderer/extensions/bindings_utils.cc @@ -71,6 +71,15 @@ ContextList GetContextsForExtension(const std::string& extension_id) { return contexts; } +ContextInfo* GetInfoForCurrentContext() { + v8::Local<v8::Context> context = v8::Context::GetCurrent(); + ContextList::iterator context_iter = FindContext(context); + if (context_iter == GetContexts().end()) + return NULL; + else + return context_iter->get(); +} + ContextList::iterator FindContext(v8::Handle<v8::Context> context) { ContextList& all_contexts = GetContexts(); |