From 574b618b98d0ddfd1fdcd1fdcf0a45de7b8ae761 Mon Sep 17 00:00:00 2001 From: Honfika Date: Tue, 25 Mar 2014 23:08:34 +0100 Subject: [PATCH] generic tag editor fix when list field is null. For example PlaceObject3Tag.surfaceFilterList --- .../decompiler/flash/gui/GenericTagTreePanel.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/trunk/src/com/jpexs/decompiler/flash/gui/GenericTagTreePanel.java b/trunk/src/com/jpexs/decompiler/flash/gui/GenericTagTreePanel.java index b92fe6446..f289be722 100644 --- a/trunk/src/com/jpexs/decompiler/flash/gui/GenericTagTreePanel.java +++ b/trunk/src/com/jpexs/decompiler/flash/gui/GenericTagTreePanel.java @@ -601,7 +601,16 @@ public class GenericTagTreePanel extends GenericTagPanel { return 0; } Field field = fnode.field; - if (ReflectionTools.needsIndex(field) && (fnode.index == -1)) { //Arrays ot Lists + if (ReflectionTools.needsIndex(field) && (fnode.index == -1)) { //Arrays or Lists + try { + if (field.get(fnode.obj) == null) { + // todo: instanciate the (Array)List or Array to allow adding items to it + return 0; + } + } catch (IllegalArgumentException | IllegalAccessException ex) { + return 0; + } + return ReflectionTools.getFieldSubSize(fnode.obj, field); } parent = fnode.getValue();