mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-06-10 05:12:38 +00:00
Fixed AS1/2 - direct editation - allow call on numbers, boolean, etc.
This commit is contained in:
@@ -69,13 +69,10 @@ public class CallFunctionActionItem extends ActionItem {
|
||||
|
||||
if (functionName instanceof DirectValueActionItem) {
|
||||
if (!IdentifiersDeobfuscation.isValidName(false, (functionName).toStringNoQuotes(localData))) {
|
||||
writer.append("eval(");
|
||||
functionName.toString(writer, localData);
|
||||
writer.append(")");
|
||||
} else {
|
||||
functionName.toStringNoQuotes(writer, localData);
|
||||
}
|
||||
//writer.append(IdentifiersDeobfuscation.printIdentifier(false, (functionName).toStringNoQuotes(localData)));
|
||||
} else {
|
||||
functionName.appendTry(writer, localData);
|
||||
}
|
||||
|
||||
@@ -1801,18 +1801,19 @@ public class ActionScript2Parser {
|
||||
break;
|
||||
case TRUE:
|
||||
ret = new DirectValueActionItem(null, null, 0, Boolean.TRUE, new ArrayList<>());
|
||||
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case NULL:
|
||||
ret = new DirectValueActionItem(null, null, 0, Null.INSTANCE, new ArrayList<>());
|
||||
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case UNDEFINED:
|
||||
ret = new DirectValueActionItem(null, null, 0, Undefined.INSTANCE, new ArrayList<>());
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case FALSE:
|
||||
ret = new DirectValueActionItem(null, null, 0, Boolean.FALSE, new ArrayList<>());
|
||||
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case CURLY_OPEN: //Object literal
|
||||
s = lex();
|
||||
@@ -1863,16 +1864,16 @@ public class ActionScript2Parser {
|
||||
break;
|
||||
case NAN:
|
||||
ret = new DirectValueActionItem(null, null, 0, Double.NaN, new ArrayList<>());
|
||||
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case INFINITY:
|
||||
ret = new DirectValueActionItem(null, null, 0, Double.POSITIVE_INFINITY, new ArrayList<>());
|
||||
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case INTEGER:
|
||||
case DOUBLE:
|
||||
ret = new DirectValueActionItem(null, null, 0, s.value, new ArrayList<>());
|
||||
|
||||
allowMemberOrCall = true;
|
||||
break;
|
||||
case DELETE:
|
||||
GraphTargetItem varDel = expressionPrimary(false, inFunction, inMethod, inTellTarget, false, variables, functions, true, hasEval);
|
||||
|
||||
@@ -82,6 +82,8 @@ public class AS2ScriptImporter {
|
||||
logger.log(Level.SEVERE, "%error% on line %line%, file: %file%".replace("%error%", ex.text).replace("%line%", Long.toString(ex.line)).replace("%file%", fileName), ex);
|
||||
} catch (IOException ex) {
|
||||
logger.log(Level.SEVERE, "error during script import, file: %file%".replace("%file%", fileName), ex);
|
||||
} catch (Exception ex) {
|
||||
logger.log(Level.SEVERE, "error during script import, file: %file%".replace("%file%", fileName), ex);
|
||||
}
|
||||
|
||||
asm.setModified();
|
||||
|
||||
Reference in New Issue
Block a user