From 1ef0f704f18b1a8538f4ebdeee8f711f798fbf6b Mon Sep 17 00:00:00 2001 From: Trevor Norris Date: Wed, 22 Jul 2015 13:06:54 -0600 Subject: [PATCH] buffer: fix not return on error Throwing a JS error from C++ does not mean the function will return early. This must be done manually. Also remove extraneous comment no longer relevant. Fix: 2903030 "buffer: switch API to return MaybeLocal" PR-URL: https://github.com/nodejs/io.js/pull/2225 Reviewed-By: Colin Ihrig --- src/node_buffer.cc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/node_buffer.cc b/src/node_buffer.cc index 78d0f951d6dc6b..e6b2aac023727a 100644 --- a/src/node_buffer.cc +++ b/src/node_buffer.cc @@ -287,7 +287,6 @@ MaybeLocal Copy(Isolate* isolate, const char* data, size_t length) { } -// Make a copy of "data". Why this isn't called "Copy", we'll never know. MaybeLocal New(Environment* env, const char* data, size_t length) { EscapableHandleScope scope(env->isolate()); @@ -474,7 +473,7 @@ void Slice(const FunctionCallbackInfo& args) { Maybe mb = ui->SetPrototype(env->context(), env->buffer_prototype_object()); if (!mb.FromMaybe(false)) - env->ThrowError("Unable to set Object prototype"); + return env->ThrowError("Unable to set Object prototype"); args.GetReturnValue().Set(ui); }