diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b49d545c..46c259353 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -33,7 +33,8 @@ All notable changes to this project will be documented in this file. - Graphviz Graph not showing AS3 exception end - #1609 First frame missing in frame to PDF export - AS3 with statement decompilation -- AS3 unnecessary adding namespaces +- #1610 AS3 unnecessary adding namespaces +- #1610 AS3 P-code editation - true/false/undefined/null has value_index same as value_kind ### Changed - #1565, #1407, #1350 On BinaryData SWF save, parent SWF is saved diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java index 4bfb1cb23..f5af84295 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java @@ -532,6 +532,7 @@ public class ASM3Parser { break; case ParsedSymbol.TYPE_KEYWORD_TRUE: value_kind = ValueKind.CONSTANT_True; + value_index = ValueKind.CONSTANT_True; temp = lexer.lex(); if (temp.type == ParsedSymbol.TYPE_PARENT_OPEN) { expected(ParsedSymbol.TYPE_PARENT_CLOSE, ")", lexer); @@ -541,6 +542,7 @@ public class ASM3Parser { break; case ParsedSymbol.TYPE_KEYWORD_FALSE: value_kind = ValueKind.CONSTANT_False; + value_index = ValueKind.CONSTANT_False; temp = lexer.lex(); if (temp.type == ParsedSymbol.TYPE_PARENT_OPEN) { expected(ParsedSymbol.TYPE_PARENT_CLOSE, ")", lexer); @@ -550,6 +552,7 @@ public class ASM3Parser { break; case ParsedSymbol.TYPE_KEYWORD_NULL: value_kind = ValueKind.CONSTANT_Null; + value_index = ValueKind.CONSTANT_Null; temp = lexer.lex(); if (temp.type == ParsedSymbol.TYPE_PARENT_OPEN) { expected(ParsedSymbol.TYPE_PARENT_CLOSE, ")", lexer); @@ -559,6 +562,7 @@ public class ASM3Parser { break; case ParsedSymbol.TYPE_KEYWORD_VOID: value_kind = ValueKind.CONSTANT_Undefined; + value_index = ValueKind.CONSTANT_Undefined; temp = lexer.lex(); if (temp.type == ParsedSymbol.TYPE_PARENT_OPEN) { expected(ParsedSymbol.TYPE_PARENT_CLOSE, ")", lexer);