diff --git a/trunk/src/com/jpexs/asdec/abc/avm2/instructions/types/ApplyTypeIns.java b/trunk/src/com/jpexs/asdec/abc/avm2/instructions/types/ApplyTypeIns.java index ad5ae558b..84f2e6730 100644 --- a/trunk/src/com/jpexs/asdec/abc/avm2/instructions/types/ApplyTypeIns.java +++ b/trunk/src/com/jpexs/asdec/abc/avm2/instructions/types/ApplyTypeIns.java @@ -49,9 +49,8 @@ public class ApplyTypeIns extends InstructionDefinition { int argCount = ins.operands[0]; List params = new ArrayList(); for (int i = 0; i < argCount; i++) { - params.add(stack.pop()); + params.add(0,stack.pop()); } - Collections.reverse(params); stack.push(new ApplyTypeTreeItem(ins, stack.pop(), params)); } diff --git a/trunk/src/com/jpexs/asdec/abc/avm2/treemodel/ApplyTypeTreeItem.java b/trunk/src/com/jpexs/asdec/abc/avm2/treemodel/ApplyTypeTreeItem.java index 7e2c35531..4da341ebf 100644 --- a/trunk/src/com/jpexs/asdec/abc/avm2/treemodel/ApplyTypeTreeItem.java +++ b/trunk/src/com/jpexs/asdec/abc/avm2/treemodel/ApplyTypeTreeItem.java @@ -41,7 +41,12 @@ public class ApplyTypeTreeItem extends TreeItem { if (i > 0) { ret += hilight(","); } - ret += params.get(i).toString(constants, localRegNames, fullyQualifiedNames); + TreeItem p = params.get(i); + if (p instanceof NullTreeItem) { + ret += "*"; + } else { + ret += p.toString(constants, localRegNames, fullyQualifiedNames); + } } ret += hilight(">"); } diff --git a/trunk/src/com/jpexs/asdec/abc/types/Multiname.java b/trunk/src/com/jpexs/asdec/abc/types/Multiname.java index 1bb7bb1e8..61032caf2 100644 --- a/trunk/src/com/jpexs/asdec/abc/types/Multiname.java +++ b/trunk/src/com/jpexs/asdec/abc/types/Multiname.java @@ -181,7 +181,9 @@ public class Multiname { if (i > 0) { typeNameStr += ","; } - if (params.get(i) != 0) { //What does value 0 mean? + if (params.get(i) == 0) { + typeNameStr += "*"; + }else{ typeNameStr += constants.constant_multiname[params.get(i)].getName(constants, fullyQualifiedNames); } }