- remove `let` as variable name
- employ `crypto.randomBytes()`
});
var minify = require("..").minify;
+var randomBytes = require("crypto").randomBytes;
var sandbox = require("./sandbox");
var MAX_GENERATED_TOPLEVELS_PER_RUN = 3;
'decodeURIComponent',
'encodeURI',
'encodeURIComponent',
- 'Object',
- 'let' ]; // maybe omit this, it's more a parser problem than minifier
+ 'Object'];
var INITIAL_NAMES_LEN = VAR_NAMES.length;
var TYPEOF_OUTCOMES = [
var funcs = 0;
function rng(max) {
- return Math.floor(max * Math.random());
+ var r = parseInt(randomBytes(4).toString("hex"), 16) / 0xFFFFFFFF;
+ return Math.floor(max * r);
}
function createTopLevelCodes(n) {