From f9fe037088d66b2ad4bab5bd299be1e78065d776 Mon Sep 17 00:00:00 2001 From: Ruben Bridgewater Date: Sun, 27 Jan 2019 01:18:47 +0100 Subject: [PATCH] repl: fix eval return value MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In case no error has occurred during the evaluation of some code, `undefined` has been returned in some cases as error argument instead of `null`. This is fixed by this patch. PR-URL: https://github.com/nodejs/node/pull/25731 Reviewed-By: Michaƫl Zasso Reviewed-By: Ben Noordhuis --- lib/repl.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/repl.js b/lib/repl.js index df861843d1d..e0f5373c8c2 100644 --- a/lib/repl.js +++ b/lib/repl.js @@ -215,10 +215,11 @@ function REPLServer(prompt, } function defaultEval(code, context, file, cb) { - var err, result, script, wrappedErr; - var wrappedCmd = false; - var awaitPromise = false; - var input = code; + let result, script, wrappedErr; + let err = null; + let wrappedCmd = false; + let awaitPromise = false; + const input = code; if (/^\s*\{/.test(code) && /\}\s*$/.test(code)) { // It's confusing for `{ a : 1 }` to be interpreted as a block @@ -362,7 +363,7 @@ function REPLServer(prompt, } promise.then((result) => { - finishExecution(undefined, result); + finishExecution(null, result); }, (err) => { if (err && process.domain) { debug('not recoverable, send to domain');