branch: master
commit e4ee2ecfef6e6c18ed7039319ea5e6be6b893b4b
Author: Jackson Ray Hamilton <jack...@jacksonrayhamilton.com>
Commit: Jackson Ray Hamilton <jack...@jacksonrayhamilton.com>

    Catch parse errors.
---
 scopifier.js |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/scopifier.js b/scopifier.js
index 9605293..263fb54 100644
--- a/scopifier.js
+++ b/scopifier.js
@@ -17,7 +17,6 @@ process.stdin.on('readable', function () {
 process.stdin.on('end', function () {
     var scopes = [],
         symbols = [],
-        toplevel = UglifyJS.parse(whole),
         walker = new UglifyJS.TreeWalker(function (node) {
             if (node instanceof UglifyJS.AST_Scope) {
                 if (node.level === undefined) {
@@ -35,8 +34,16 @@ process.stdin.on('end', function () {
                               node.start.pos + 1,
                               node.end.endpos + 1]);
             }
-        });
-    toplevel.figure_out_scope();
-    toplevel.walk(walker);
+        }),
+        toplevel;
+
+    try {
+        toplevel = UglifyJS.parse(whole);
+        toplevel.figure_out_scope();
+        toplevel.walk(walker);
+    } catch (error) {
+        process.exit(1);
+    }
+
     console.log(JSON.stringify(scopes.concat(symbols)));
 });

Reply via email to