Index: chrome/renderer/extensions/chrome_v8_context.cc |
diff --git a/chrome/renderer/extensions/chrome_v8_context.cc b/chrome/renderer/extensions/chrome_v8_context.cc |
index cdde47f8d5bd9eaad12e4c7d6c62be88d2efb38b..c21ac02dea1b5820b656cdd89d6a4dea0b621cea 100644 |
--- a/chrome/renderer/extensions/chrome_v8_context.cc |
+++ b/chrome/renderer/extensions/chrome_v8_context.cc |
@@ -34,7 +34,8 @@ ChromeV8Context::ChromeV8Context(v8::Handle<v8::Context> v8_context, |
web_frame_(web_frame), |
extension_(extension), |
context_type_(context_type), |
- safe_builtins_(this) { |
+ safe_builtins_(this), |
+ isolate_(v8_context->GetIsolate()) { |
VLOG(1) << "Created context:\n" |
<< " extension id: " << GetExtensionID() << "\n" |
<< " frame: " << web_frame_ << "\n" |
@@ -76,7 +77,7 @@ v8::Local<v8::Value> ChromeV8Context::CallFunction( |
v8::Handle<v8::Function> function, |
int argc, |
v8::Handle<v8::Value> argv[]) const { |
- v8::HandleScope handle_scope; |
+ v8::HandleScope handle_scope(isolate()); |
v8::Context::Scope scope(v8_context()); |
WebKit::WebScopedMicrotaskSuppression suppression; |
@@ -135,7 +136,7 @@ void ChromeV8Context::OnResponseReceived(const std::string& name, |
bool success, |
const base::ListValue& response, |
const std::string& error) { |
- v8::HandleScope handle_scope; |
+ v8::HandleScope handle_scope(isolate()); |
scoped_ptr<V8ValueConverter> converter(V8ValueConverter::create()); |
v8::Handle<v8::Value> argv[] = { |