Index: src/d8.cc |
diff --git a/src/d8.cc b/src/d8.cc |
index 2fdbe0c2e3e570d67e7b2c6e2747b4e4c8fa0b90..2b5b996b1925aea3a049d8fb6cffcd80a9907d69 100644 |
--- a/src/d8.cc |
+++ b/src/d8.cc |
@@ -610,19 +610,19 @@ void Shell::ReportException(Isolate* isolate, v8::TryCatch* try_catch) { |
Handle<Array> Shell::GetCompletions(Isolate* isolate, |
Handle<String> text, |
Handle<String> full) { |
- HandleScope handle_scope(isolate); |
+ EscapableHandleScope handle_scope(isolate); |
v8::Local<v8::Context> utility_context = |
v8::Local<v8::Context>::New(isolate, utility_context_); |
v8::Context::Scope context_scope(utility_context); |
Handle<Object> global = utility_context->Global(); |
- Handle<Value> fun = |
+ Local<Value> fun = |
global->Get(String::NewFromUtf8(isolate, "GetCompletions")); |
static const int kArgc = 3; |
v8::Local<v8::Context> evaluation_context = |
v8::Local<v8::Context>::New(isolate, evaluation_context_); |
Handle<Value> argv[kArgc] = { evaluation_context->Global(), text, full }; |
- Handle<Value> val = Handle<Function>::Cast(fun)->Call(global, kArgc, argv); |
- return handle_scope.Close(Handle<Array>::Cast(val)); |
+ Local<Value> val = Local<Function>::Cast(fun)->Call(global, kArgc, argv); |
+ return handle_scope.Escape(Local<Array>::Cast(val)); |
} |
@@ -966,7 +966,7 @@ Local<Context> Shell::CreateEvaluationContext(Isolate* isolate) { |
#endif // V8_SHARED |
// Initialize the global objects |
Handle<ObjectTemplate> global_template = CreateGlobalTemplate(isolate); |
- HandleScope handle_scope(isolate); |
+ EscapableHandleScope handle_scope(isolate); |
Local<Context> context = Context::New(isolate, NULL, global_template); |
ASSERT(!context.IsEmpty()); |
Context::Scope scope(context); |
@@ -986,7 +986,7 @@ Local<Context> Shell::CreateEvaluationContext(Isolate* isolate) { |
context->Global()->Set(String::NewFromUtf8(isolate, "arguments"), |
Utils::ToLocal(arguments_jsarray)); |
#endif // V8_SHARED |
- return handle_scope.Close(context); |
+ return handle_scope.Escape(context); |
} |