diff --git a/jode/jode/flow/SpecialBlock.java b/jode/jode/flow/SpecialBlock.java index acb21ce..4fed0c1 100644 --- a/jode/jode/flow/SpecialBlock.java +++ b/jode/jode/flow/SpecialBlock.java @@ -49,7 +49,7 @@ public class SpecialBlock extends StructuredBlock { this.type = type; this.count = count; this.depth = depth; - setJump(jump); + setJump(jump); } /** diff --git a/jode/jode/flow/TransformExceptionHandlers.java b/jode/jode/flow/TransformExceptionHandlers.java index 9f8914b..11c4119 100644 --- a/jode/jode/flow/TransformExceptionHandlers.java +++ b/jode/jode/flow/TransformExceptionHandlers.java @@ -546,7 +546,7 @@ public class TransformExceptionHandlers { * local_n = stack | * monitorexit local_x | * throw local_n | - * oprtional subroutine: <----------------------------------' + * optional subroutine: <-----------------------------------' * astore_n * monitorexit local_x * return_n @@ -860,6 +860,7 @@ public class TransformExceptionHandlers { Decompiler.err.println("analyzeCatch(" + trys[i].addr + ", " + endPCs[i] + ", " +catches[i].addr + ")"); FlowBlock tryFlow = trys[i]; + tryFlow.checkConsistent(); while (tryFlow.analyze(tryFlow.addr, catches[i].addr)); if (i == 0 @@ -888,8 +889,8 @@ public class TransformExceptionHandlers { tryFlow.checkConsistent(); if (Decompiler.debugAnalyze) Decompiler.err.println("analyzeCatch(" + tryFlow.addr + ", " - + (tryFlow.addr + tryFlow.length) + - ") done."); + + (tryFlow.addr + tryFlow.length) + + ") done."); } } } diff --git a/jode/jode/flow/TryBlock.java b/jode/jode/flow/TryBlock.java index 36198fc..0bc24c7 100644 --- a/jode/jode/flow/TryBlock.java +++ b/jode/jode/flow/TryBlock.java @@ -54,6 +54,7 @@ public class TryBlock extends StructuredBlock { this.subBlocks = new StructuredBlock[] { bodyBlock }; bodyBlock.outer = this; tryFlow.lastModified = this; + tryFlow.checkConsistent(); } public void addCatchBlock(CatchBlock catchBlock) {