From 4dbff090c3ff2ba43b0fbb06cc65bef5b5d81008 Mon Sep 17 00:00:00 2001 From: Anna Henningsen Date: Sun, 27 Jan 2019 14:19:16 +0100 Subject: src: pass along errors from stream obj instantiation PR-URL: https://github.com/nodejs/node/pull/25734 Reviewed-By: James M Snell Reviewed-By: Gus Caplan --- src/pipe_wrap.cc | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'src/pipe_wrap.cc') diff --git a/src/pipe_wrap.cc b/src/pipe_wrap.cc index 8ad1e0f594..06bb3dd73d 100644 --- a/src/pipe_wrap.cc +++ b/src/pipe_wrap.cc @@ -42,16 +42,16 @@ using v8::FunctionTemplate; using v8::HandleScope; using v8::Int32; using v8::Local; +using v8::MaybeLocal; using v8::Object; using v8::String; using v8::Value; using AsyncHooks = Environment::AsyncHooks; - -Local PipeWrap::Instantiate(Environment* env, - AsyncWrap* parent, - PipeWrap::SocketType type) { +MaybeLocal PipeWrap::Instantiate(Environment* env, + AsyncWrap* parent, + PipeWrap::SocketType type) { EscapableHandleScope handle_scope(env->isolate()); AsyncHooks::DefaultTriggerAsyncIdScope trigger_scope(parent); CHECK_EQ(false, env->pipe_constructor_template().IsEmpty()); @@ -60,9 +60,8 @@ Local PipeWrap::Instantiate(Environment* env, .ToLocalChecked(); CHECK_EQ(false, constructor.IsEmpty()); Local type_value = Int32::New(env->isolate(), type); - Local instance = - constructor->NewInstance(env->context(), 1, &type_value).ToLocalChecked(); - return handle_scope.Escape(instance); + return handle_scope.EscapeMaybe( + constructor->NewInstance(env->context(), 1, &type_value)); } -- cgit v1.2.3