aboutsummaryrefslogtreecommitdiff
path: root/node_modules/uglify-js/lib/output.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/uglify-js/lib/output.js')
-rw-r--r--node_modules/uglify-js/lib/output.js10
1 files changed, 3 insertions, 7 deletions
diff --git a/node_modules/uglify-js/lib/output.js b/node_modules/uglify-js/lib/output.js
index 9ac50c08a..0731fb492 100644
--- a/node_modules/uglify-js/lib/output.js
+++ b/node_modules/uglify-js/lib/output.js
@@ -190,11 +190,7 @@ function OutputStream(options) {
var might_need_space = false;
var might_need_semicolon = false;
var might_add_newline = 0;
- var last = null;
-
- function last_char() {
- return last.charAt(last.length - 1);
- };
+ var last = "";
var ensure_line_len = options.max_line_len ? function() {
if (current_col > options.max_line_len) {
@@ -218,10 +214,11 @@ function OutputStream(options) {
function print(str) {
str = String(str);
var ch = str.charAt(0);
+ var prev = last.charAt(last.length - 1);
if (might_need_semicolon) {
might_need_semicolon = false;
- if ((!ch || ";}".indexOf(ch) < 0) && !/[;]$/.test(last)) {
+ if (prev == ":" && ch == "}" || (!ch || ";}".indexOf(ch) < 0) && prev != ";") {
if (options.semicolons || requireSemicolonChars(ch)) {
OUTPUT += ";";
current_col++;
@@ -258,7 +255,6 @@ function OutputStream(options) {
}
if (might_need_space) {
- var prev = last_char();
if ((is_identifier_char(prev)
&& (is_identifier_char(ch) || ch == "\\"))
|| (ch == "/" && ch == prev)