Fixed: #2355 AS3 Simplify expressions feature colliding with some other features like hex values

This commit is contained in:
Jindra Petřík
2025-05-02 09:11:27 +02:00
parent d9c866c7d6
commit d6683839cf
7 changed files with 25 additions and 12 deletions
@@ -317,4 +317,9 @@ public class DirectValueActionItem extends ActionItem implements SimpleValue {
public String toString() {
return "" + getResult();
}
@Override
public long getAsLong() {
return (long) (double) EcmaScript.toNumberAs2(value);
}
}
@@ -49,8 +49,9 @@ public abstract class BitwiseBinaryOpActionItem extends BinaryOpItem implements
@Override
protected void operandToString(GraphTargetItem operand, GraphTextWriter writer, LocalData localData) throws InterruptedException {
if ((operand instanceof DirectValueActionItem) && (((DirectValueActionItem) operand).value instanceof Long)) {
long val = (long) (Long) ((DirectValueActionItem) operand).value;
if ((operand instanceof DirectValueActionItem)
&& ((((DirectValueActionItem) operand).value instanceof Long) || (((DirectValueActionItem) operand).value instanceof Double))) {
long val = operand.getAsLong();
if (val > 9) {
String valHex = Long.toHexString(val).toUpperCase();
if (valHex.length() % 2 == 1) {