diff --git a/CHANGELOG.md b/CHANGELOG.md index 136792d77..039a46805 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -48,6 +48,7 @@ All notable changes to this project will be documented in this file. - AS1/2 - deobfuscate object literal names - AS1/2 - spacing in with statement - Playercontrols frame display incorrect frame +- AS1/2 - empty parenthesis nullpointer ## [14.6.0] - 2021-11-22 ### Added 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 d0c734c7c..d42ac8196 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 @@ -1891,9 +1891,12 @@ public class ActionScript2Parser { break; case PARENT_OPEN: - ret = new ParenthesisItem(null, null, expression(inFunction, inMethod, inTellTarget, true, variables, functions, true, hasEval)); + GraphTargetItem pexpr = expression(inFunction, inMethod, inTellTarget, true, variables, functions, true, hasEval); + if (pexpr == null) { + throw new ActionParseException("Expression expected", lexer.yyline()); + } + ret = new ParenthesisItem(null, null, pexpr); expectedType(SymbolType.PARENT_CLOSE); - //ret = memberOrCall(ret, inFunction, inMethod, variables, functions); allowMemberOrCall = true; break; case NEW: