diff --git a/CHANGELOG.md b/CHANGELOG.md index 1edb7f80c..393ce2f23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ All notable changes to this project will be documented in this file. - Reload menu disabled when do SWF selected - AS2 - Do not detect classes inside functions - AS1/2 - Slash syntax colon vs ternar operator collision +- AS1/2 - Allow nonstandard identifiers in object literal ## [14.5.2] - 2021-11-20 ### Fixed diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/parser/script/ActionScript2Parser.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/parser/script/ActionScript2Parser.java index 755a9d0e2..36cd8ca6a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/parser/script/ActionScript2Parser.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/parser/script/ActionScript2Parser.java @@ -1014,7 +1014,7 @@ public class ActionScript2Parser { expected(s, lexer.yyline(), SymbolType.IDENTIFIER, SymbolType.TRUE, SymbolType.FALSE, SymbolGroup.GLOBALCONST, SymbolType.GET, SymbolType.SET, - SymbolType.EACH); + SymbolType.EACH, SymbolGroup.GLOBALFUNC); String varIdentifier = s.value.toString(); s = lex(); if (s.type == SymbolType.COLON) { @@ -1745,7 +1745,10 @@ public class ActionScript2Parser { lexer.pushback(s); } s = lex(); - expected(s, lexer.yyline(), SymbolType.IDENTIFIER); + expected(s, lexer.yyline(), SymbolType.IDENTIFIER, + SymbolType.TRUE, SymbolType.FALSE, SymbolGroup.GLOBALCONST, + SymbolType.GET, SymbolType.SET, + SymbolType.EACH, SymbolGroup.GLOBALFUNC); objectNames.add(0, pushConst((String) s.value)); expectedType(SymbolType.COLON); objectValues.add(0, expression(inFunction, inMethod, inTellTarget, true, variables, functions, false, hasEval));