From ea45f0d51532aec025543ebff238f065d8556285 Mon Sep 17 00:00:00 2001 From: Rakesh Balasubramanian Date: Tue, 23 Apr 2019 17:11:16 -0400 Subject: [PATCH] Fix access of data descriptor error.stack In newer versions of node `error.stack` is a data descriptor and accessing it using `get` throws the error `previous.get` is not a function. --- error.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/error.js b/error.js index 73b3012..524e452 100644 --- a/error.js +++ b/error.js @@ -44,7 +44,12 @@ module.exports = function createError (name, parameters, Constructor) { // also passed in function createStackDescriptor (errors, previous) { return function () { - var stack = previous.get(); + var stack = ''; + if(previous.get){ + stack = previous.get(); + } else if(previous.value){ + stack = previous.value; + } errors.forEach(function (error) { stack += '\n'; stack += error.stack;