src: upgrade to new v8 api
authorTrevor Norris <trev.norris@gmail.com>
Wed, 22 May 2013 20:04:41 +0000 (13:04 -0700)
committerTrevor Norris <trev.norris@gmail.com>
Wed, 22 May 2013 21:12:25 +0000 (14:12 -0700)
Small change that Context::New requires an isolate and returns Local
instead of Persistent.

src/node.cc
src/node_script.cc

index a382e86..447d5f7 100644 (file)
@@ -3082,7 +3082,7 @@ int Start(int argc, char *argv[]) {
     HandleScope handle_scope(node_isolate);
 
     // Create the one and only Context.
-    Persistent<Context> context = Context::New();
+    Local<Context> context = Context::New(node_isolate);
     Context::Scope context_scope(context);
 
     // Use original argv, as we're just copying values out of it.
@@ -3102,10 +3102,6 @@ int Start(int argc, char *argv[]) {
 
     EmitExit(process_l);
     RunAtExit();
-
-#ifndef NDEBUG
-    context.Dispose(node_isolate);
-#endif
   }
 
 #ifndef NDEBUG
index 21e169d..65561ae 100644 (file)
@@ -165,7 +165,7 @@ Handle<Value> WrappedContext::New(const Arguments& args) {
 
 
 WrappedContext::WrappedContext() : ObjectWrap() {
-  context_ = Context::New();
+  context_ = Persistent<Context>::New(node_isolate, Context::New(node_isolate));
 }
 
 
@@ -386,9 +386,7 @@ Handle<Value> WrappedScript::EvalMachine(const Arguments& args) {
     // function. Here we grab a temporary handle to the new context, assign it
     // to a local handle, and then dispose the persistent handle. This ensures
     // that when this function exits the context will be disposed.
-    Persistent<Context> tmp = Context::New();
-    context = Local<Context>::New(node_isolate, tmp);
-    tmp.Dispose(node_isolate);
+    context = Context::New(node_isolate);
 
   } else if (context_flag == userContext) {
     // Use the passed in context