mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-07-05 15:18:31 +00:00
Compound assignment fix
This commit is contained in:
@@ -35,6 +35,7 @@ import com.jpexs.decompiler.graph.TranslateStack;
|
||||
import com.jpexs.decompiler.graph.model.CompoundableBinaryOp;
|
||||
import com.jpexs.decompiler.graph.model.DuplicateItem;
|
||||
import com.jpexs.decompiler.graph.model.DuplicateSourceItem;
|
||||
import com.jpexs.decompiler.graph.model.SetTemporaryItem;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@@ -105,6 +106,16 @@ public class SetPropertyIns extends InstructionDefinition implements SetTypeIns
|
||||
result.setCompoundValue(binaryOp.getRightSide());
|
||||
result.setCompoundOperator(binaryOp.getOperator());
|
||||
|
||||
if (propItem.object instanceof DuplicateItem) {
|
||||
DuplicateItem d = (DuplicateItem) propItem.object;
|
||||
if (!output.isEmpty() && output.get(output.size() - 1) instanceof SetTemporaryItem) {
|
||||
SetTemporaryItem st = (SetTemporaryItem) output.get(output.size() - 1);
|
||||
if (st.tempIndex == d.tempIndex) {
|
||||
output.remove(output.size() - 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (result instanceof SetPropertyAVM2Item) {
|
||||
SetPropertyAVM2Item sp = (SetPropertyAVM2Item) result;
|
||||
if (sp.object instanceof DuplicateSourceItem) {
|
||||
|
||||
Reference in New Issue
Block a user