summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/node/utils/Minify.js16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/node/utils/Minify.js b/src/node/utils/Minify.js
index 80652310..2be1fea4 100644
--- a/src/node/utils/Minify.js
+++ b/src/node/utils/Minify.js
@@ -23,9 +23,9 @@ var ERR = require("async-stacktrace");
var settings = require('./Settings');
var async = require('async');
var fs = require('fs');
+var StringDecoder = require('string_decoder').StringDecoder;
var CleanCSS = require('clean-css');
-var jsp = require("uglify-js").parser;
-var pro = require("uglify-js").uglify;
+var uglifyJS = require("uglify-js");
var path = require('path');
var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins");
var RequireKernel = require('etherpad-require-kernel');
@@ -375,7 +375,9 @@ function getFileCompressed(filename, contentType, callback) {
callback(error, content);
} else if (contentType == 'text/javascript') {
try {
- content = compressJS(content);
+ var decoder = new StringDecoder('utf8');
+ var code = decoder.write(content); // convert from buffer to string
+ content = uglifyJS.minify(code, {fromString: true}).code;
} catch (error) {
// silence
}
@@ -398,14 +400,6 @@ function getFile(filename, callback) {
}
}
-function compressJS(content)
-{
- var ast = jsp.parse(content); // parse code and get the initial AST
- ast = pro.ast_mangle(ast); // get a new AST with mangled names
- ast = pro.ast_squeeze(ast); // get an AST with compression optimizations
- return pro.gen_code(ast); // compressed code here
-}
-
function compressCSS(filename, content, callback)
{
try {