diff --git a/src/de/fernflower/modules/decompiler/IdeaNotNullHelper.java b/src/de/fernflower/modules/decompiler/IdeaNotNullHelper.java index 98035d3..fe42f32 100644 --- a/src/de/fernflower/modules/decompiler/IdeaNotNullHelper.java +++ b/src/de/fernflower/modules/decompiler/IdeaNotNullHelper.java @@ -295,6 +295,7 @@ public class IdeaNotNullHelper { } sequence.getStats().removeWithKey(ifstat.id); + sequence.setFirst(sequence.getStats().get(0)); return true; } diff --git a/src/de/fernflower/modules/decompiler/StackVarsProcessor.java b/src/de/fernflower/modules/decompiler/StackVarsProcessor.java index a76229f..e1f9218 100644 --- a/src/de/fernflower/modules/decompiler/StackVarsProcessor.java +++ b/src/de/fernflower/modules/decompiler/StackVarsProcessor.java @@ -229,7 +229,7 @@ public class StackVarsProcessor { if(nd.statement.type == Statement.TYPE_DO) { DoStatement loop = (DoStatement)nd.statement; - if(nd.type == DirectNode.NODE_INCREMENT && loop.getLooptype() == DoStatement.LOOP_FOR) { // "downgrade" loop to 'while' + if(loop.getLooptype() == DoStatement.LOOP_FOR && loop.getInitExprent() == null && loop.getIncExprent() == null) { // "downgrade" loop to 'while' loop.setLooptype(DoStatement.LOOP_WHILE); } }