fix corner case in unsafe (#4755)

This commit is contained in:
Alex Lam S.L
2021-03-08 20:40:21 +00:00
committed by GitHub
parent 077512d151
commit f4ee0f651c
2 changed files with 19 additions and 14 deletions

View File

@@ -8581,17 +8581,17 @@ merge(Compressor.prototype, {
break;
case "charAt":
if (self.args.length < 2) {
var node = make_node(AST_Sub, self, {
expression: exp.expression,
property: self.args.length ? make_node(AST_Binary, self.args[0], {
operator: "|",
left: make_node(AST_Number, self, {
value: 0
}),
right: self.args[0]
}) : make_node(AST_Number, self, {
value: 0
})
var node = make_node(AST_Binary, self, {
operator: "||",
left: make_node(AST_Sub, self, {
expression: exp.expression,
property: self.args.length ? make_node(AST_Binary, self.args[0], {
operator: "|",
left: make_node(AST_Number, self, { value: 0 }),
right: self.args[0],
}) : make_node(AST_Number, self, { value: 0 }),
}).optimize(compressor),
right: make_node(AST_String, self, { value: "" }),
});
node.is_string = return_true;
return node.optimize(compressor);