From a0f5f862dfe5667471fc99265f6163ca676c3f58 Mon Sep 17 00:00:00 2001 From: "Alex Lam S.L" Date: Wed, 10 May 2017 04:20:59 +0800 Subject: gracefully handle non-`Error` being thrown (#1893) --- bin/uglifyjs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'bin/uglifyjs') diff --git a/bin/uglifyjs b/bin/uglifyjs index d75b0ee1..65b761c6 100755 --- a/bin/uglifyjs +++ b/bin/uglifyjs @@ -193,7 +193,7 @@ function run() { } } } catch (ex) { - fatal(ex.stack); + fatal(ex); } var result = UglifyJS.minify(files, options); if (result.error) { @@ -220,7 +220,7 @@ function run() { console.error("Supported options:"); console.error(ex.defs); } - fatal(ex.stack); + fatal(ex); } else if (program.output == "ast") { console.log(JSON.stringify(result.ast, function(key, value) { if (skip_key(key)) return; @@ -263,7 +263,8 @@ function run() { } function fatal(message) { - console.error(message.replace(/^\S*?Error:/, "ERROR:")); + if (message instanceof Error) message = message.stack.replace(/^\S*?Error:/, "ERROR:") + console.error(message); process.exit(1); } @@ -303,7 +304,7 @@ function read_file(path, default_value) { return fs.readFileSync(path, "utf8"); } catch (ex) { if (ex.code == "ENOENT" && default_value != null) return default_value; - fatal(ex.stack); + fatal(ex); } } -- cgit v1.2.3