improve ufuzz reproducibility

This commit is contained in:
alexlamsl 2018-01-09 03:40:28 +08:00
parent ce27bcd69a
commit aaa4620ec5
3 changed files with 12 additions and 8 deletions

View File

@ -1,14 +1,15 @@
exports["Compressor"] = Compressor;
exports["JS_Parse_Error"] = JS_Parse_Error;
exports["OutputStream"] = OutputStream;
exports["SourceMap"] = SourceMap;
exports["TreeWalker"] = TreeWalker;
exports["base54"] = base54;
exports["Compressor"] = Compressor;
exports["defaults"] = defaults;
exports["is_identifier"] = is_identifier;
exports["JS_Parse_Error"] = JS_Parse_Error;
exports["mangle_properties"] = mangle_properties;
exports["minify"] = minify;
exports["OutputStream"] = OutputStream;
exports["parse"] = parse;
exports["reserve_quoted_keys"] = reserve_quoted_keys;
exports["SourceMap"] = SourceMap;
exports["string_template"] = string_template;
exports["SymbolDef"] = SymbolDef;
exports["tokenizer"] = tokenizer;
exports["is_identifier"] = is_identifier;
exports["TreeWalker"] = TreeWalker;

View File

@ -1,6 +1,8 @@
var fs = require("fs");
var UglifyJS = require("../tools/node");
new Function("MOZ_SourceMap", "exports", require("../tools/node").FILES.map(function(file) {
new Function("MOZ_SourceMap", "exports", UglifyJS.FILES.map(function(file) {
if (/exports\.js$/.test(file)) file = require.resolve("./exports");
return fs.readFileSync(file, "utf8");
}).join("\n\n"))(require("source-map"), exports);
exports.default_options = UglifyJS.default_options;

View File

@ -8,7 +8,7 @@
require("../tools/exit");
var UglifyJS = require("..");
var UglifyJS = require("./node");
var randomBytes = require("crypto").randomBytes;
var sandbox = require("./sandbox");
@ -1003,6 +1003,7 @@ function log_suspects(minify_options, component) {
var o = JSON.parse(JSON.stringify(options));
o[name] = false;
m[component] = o;
UglifyJS.SymbolDef.next_id = 1;
var result = UglifyJS.minify(original_code, m);
if (result.error) {
errorln("Error testing options." + component + "." + name);