mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-06-11 04:02:16 +00:00
Fixed #1938 AS3 - coercion call type
This commit is contained in:
@@ -180,7 +180,7 @@ public class GetPropertyIns extends InstructionDefinition {
|
||||
GraphTargetItem ti = AbcIndexing.multinameToType(multiname.multinameIndex, localData.abc.constants);//new TypeItem(localData.abc.constants.getMultiname(multiname.multinameIndex).getNameWithNamespace(localData.abc.constants, true));
|
||||
if (localData.abcIndex.findClass(ti, localData.abc, localData.scriptIndex) != null) {
|
||||
type.setVal(ti);
|
||||
callType.setVal(TypeItem.UNBOUNDED);
|
||||
callType.setVal(ti); //coercion i = int(xx);
|
||||
isStatic.setVal(true);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -95,11 +95,13 @@ public class TernarOpItem extends GraphTargetItem {
|
||||
|
||||
@Override
|
||||
public GraphTargetItem returnType() {
|
||||
if (onTrue.returnType().equals(onFalse.returnType())) {
|
||||
return onTrue.returnType();
|
||||
GraphTargetItem onTrueType = onTrue.returnType();
|
||||
GraphTargetItem onFalseType = onFalse.returnType();
|
||||
if (onTrueType.equals(onFalseType)) {
|
||||
return onTrueType;
|
||||
}
|
||||
if ((onTrue.returnType().equals(TypeItem.NUMBER) || onTrue.returnType().equals(TypeItem.INT) || onTrue.returnType().equals(TypeItem.UINT))
|
||||
&& (onFalse.returnType().equals(TypeItem.NUMBER) || onFalse.returnType().equals(TypeItem.INT) || onFalse.returnType().equals(TypeItem.UINT))) {
|
||||
if ((onTrueType.equals(TypeItem.NUMBER) || onTrueType.equals(TypeItem.INT) || onTrueType.equals(TypeItem.UINT))
|
||||
&& (onFalseType.equals(TypeItem.NUMBER) || onFalseType.equals(TypeItem.INT) || onFalseType.equals(TypeItem.UINT))) {
|
||||
return TypeItem.NUMBER;
|
||||
}
|
||||
return TypeItem.UNKNOWN;
|
||||
|
||||
Reference in New Issue
Block a user