diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java index 16c444133..f8e7d0840 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java @@ -78,7 +78,7 @@ public abstract class Trait implements Cloneable, Serializable { public abstract void delete(ABC abc, boolean d); - public List>> getMetaDataTable(ABC abc) { + public final List>> getMetaDataTable(ABC abc) { List>> ret = new ArrayList<>(); for (int m : metadata) { if (m >= 0 && m < abc.metadata_info.size()) { @@ -94,7 +94,7 @@ public abstract class Trait implements Cloneable, Serializable { return ret; } - public GraphTextWriter getMetaData(ABC abc, GraphTextWriter writer) { + public final GraphTextWriter getMetaData(ABC abc, GraphTextWriter writer) { List>> md = getMetaDataTable(abc); for (Entry> en : md) { String name = en.getKey(); @@ -126,7 +126,7 @@ public abstract class Trait implements Cloneable, Serializable { return writer; } - protected DottedChain findCustomNs(int link_ns_index, ABC abc) { + protected final DottedChain findCustomNs(int link_ns_index, ABC abc) { String nsname = ""; if (link_ns_index <= 0) { return null; @@ -146,7 +146,7 @@ public abstract class Trait implements Cloneable, Serializable { return null; } - public GraphTextWriter getModifiers(ABC abc, boolean isStatic, GraphTextWriter writer) { + public final GraphTextWriter getModifiers(ABC abc, boolean isStatic, GraphTextWriter writer) { if ((kindFlags & ATTR_Override) > 0) { writer.appendNoHilight("override "); } @@ -235,7 +235,7 @@ public abstract class Trait implements Cloneable, Serializable { convert(parent, convertData, path, abc, isStatic, exportMode, scriptIndex, classIndex, writer, fullyQualifiedNames, parallel); } - public Multiname getName(ABC abc) { + public final Multiname getName(ABC abc) { if (name_index == 0) { return null; } else { @@ -245,7 +245,7 @@ public abstract class Trait implements Cloneable, Serializable { public abstract int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) throws InterruptedException; - public ClassPath getPath(ABC abc) { + public final ClassPath getPath(ABC abc) { Multiname name = getName(abc); Namespace ns = name.getNamespace(abc.constants); DottedChain packageName = ns.getName(abc.constants); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java index a145ac815..f1beb16ce 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java @@ -558,11 +558,6 @@ public class TraitClass extends Trait implements TraitWithSlot { instanceInfo.instance_traits.convert(this, convertData, path +/*packageName +*/ "/" + instanceInfoName, abc, false, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel); } - @Override - public Multiname getName(ABC abc) { - return abc.constants.getMultiname(abc.instance_info.get(class_info).name_index); - } - @Override public int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) throws InterruptedException { ClassInfo classInfo = abc.class_info.get(class_info); diff --git a/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java b/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java index 8b533f87a..7d0352209 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/DecompiledEditorPane.java @@ -674,7 +674,11 @@ public class DecompiledEditorPane extends LineMarkedEditorPane implements CaretL setText(hilightedCode); if (classHighlights.size() > 0) { - setCaretPosition(classHighlights.get(0).startPos); + try { + setCaretPosition(classHighlights.get(0).startPos); + } catch (Exception ex) { //sometimes happens + //ignore + } } } fireScript();