diff options
author | Stiver <stiver.mail@gmail.com> | 2014-06-01 15:34:28 +0200 |
---|---|---|
committer | Stiver <stiver.mail@gmail.com> | 2014-06-01 15:34:28 +0200 |
commit | 7d44f73cb915fbee0efd6257ab8e78974ab52694 (patch) | |
tree | 9ad1d606a362cc2da6f0dead4a57be317493c0cc | |
parent | 7189d18bfe46bd5d9bcfc1c4c60b1438d0580e5b (diff) | |
download | fernflower-7d44f73cb915fbee0efd6257ab8e78974ab52694.tar fernflower-7d44f73cb915fbee0efd6257ab8e78974ab52694.tar.gz fernflower-7d44f73cb915fbee0efd6257ab8e78974ab52694.tar.lz fernflower-7d44f73cb915fbee0efd6257ab8e78974ab52694.tar.xz fernflower-7d44f73cb915fbee0efd6257ab8e78974ab52694.zip |
fixed IndexOutOfBoundsException when decompiling
StandardVariableNamesInspectionBase
-rw-r--r-- | src/de/fernflower/modules/decompiler/IdeaNotNullHelper.java | 1 | ||||
-rw-r--r-- | src/de/fernflower/modules/decompiler/StackVarsProcessor.java | 2 |
2 files changed, 2 insertions, 1 deletions
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); } } |