From 3629d880d33a554140b28061c11c1116c37fb3d1 Mon Sep 17 00:00:00 2001 From: David Majda Date: Sun, 11 Nov 2012 17:49:06 +0100 Subject: [PATCH] Make sure the |options| param passed to passes is always an object Pass code can be simpler as a result. --- lib/compiler.js | 2 ++ lib/compiler/passes/generate-code.js | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/compiler.js b/lib/compiler.js index 1fcbb7f..9fc0a21 100644 --- a/lib/compiler.js +++ b/lib/compiler.js @@ -22,6 +22,8 @@ module.exports = { * cause its malfunction. */ compile: function(ast, options) { + if (options === undefined) { options = {}; } + var that = this; utils.each(this.appliedPassNames, function(passName) { diff --git a/lib/compiler/passes/generate-code.js b/lib/compiler/passes/generate-code.js index 5fea549..101ea64 100644 --- a/lib/compiler/passes/generate-code.js +++ b/lib/compiler/passes/generate-code.js @@ -2,7 +2,7 @@ var utils = require("../../utils"); /* Generates the parser code. */ module.exports = function(ast, options) { - options = utils.clone(options) || {}; + options = utils.clone(options); utils.defaults(options, { cache: false, trackLineAndColumn: false,