From 9bb7c01bc854395f2f56b6ebcb91fc83eb0aa508 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Sat, 17 Sep 2016 14:56:09 +0200 Subject: [PATCH] Collide traits only on same level --- .../decompiler/flash/abc/usages/ConstVarNameMultinameUsage.java | 2 +- .../decompiler/flash/abc/usages/MethodNameMultinameUsage.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/ConstVarNameMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/ConstVarNameMultinameUsage.java index 50aa7e323..2846aef51 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/ConstVarNameMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/ConstVarNameMultinameUsage.java @@ -38,7 +38,7 @@ public class ConstVarNameMultinameUsage extends ConstVarMultinameUsage implement public boolean collides(MultinameUsage other) { if ((other instanceof ConstVarNameMultinameUsage) || (other instanceof MethodNameMultinameUsage)) { TraitMultinameUsage otherTrait = (TraitMultinameUsage) other; - if (otherTrait.classIndex == classIndex && otherTrait.traitsType == traitsType) { + if (otherTrait.classIndex == classIndex && otherTrait.traitsType == traitsType && otherTrait.parentTraitIndex == parentTraitIndex) { if (other.sameMultinameName(this)) { return true; } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MethodNameMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MethodNameMultinameUsage.java index afa3f6a89..a678336c2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MethodNameMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MethodNameMultinameUsage.java @@ -38,7 +38,7 @@ public class MethodNameMultinameUsage extends MethodMultinameUsage implements De public boolean collides(MultinameUsage other) { if ((other instanceof MethodNameMultinameUsage) || (other instanceof ConstVarNameMultinameUsage)) { TraitMultinameUsage otherTrait = (TraitMultinameUsage) other; - if (otherTrait.classIndex == classIndex && otherTrait.traitsType == traitsType) { + if (otherTrait.classIndex == classIndex && otherTrait.traitsType == traitsType && otherTrait.parentTraitIndex == parentTraitIndex) { if (other.sameMultinameName(this)) { return true; }