From 691d5cd1e69dcae8dbbc2151c4f63787194a340e Mon Sep 17 00:00:00 2001 From: Skylot Date: Sat, 30 Jul 2022 17:33:23 +0100 Subject: [PATCH] fix: hide unused label before exception handler in simple mode --- jadx-core/src/main/java/jadx/core/Jadx.java | 4 ---- .../src/main/java/jadx/core/codegen/SimpleModeHelper.java | 4 +++- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/jadx-core/src/main/java/jadx/core/Jadx.java b/jadx-core/src/main/java/jadx/core/Jadx.java index 14372ed7a..5669d438a 100644 --- a/jadx-core/src/main/java/jadx/core/Jadx.java +++ b/jadx-core/src/main/java/jadx/core/Jadx.java @@ -191,7 +191,6 @@ public class Jadx { passes.add(new ProcessInstructionsVisitor()); passes.add(new BlockSplitter()); - passes.add(new MethodVisitor(mth -> mth.add(AFlag.DISABLE_BLOCKS_LOCK))); if (args.isRawCFGOutput()) { passes.add(DotGraphVisitor.dumpRaw()); } @@ -215,9 +214,6 @@ public class Jadx { passes.add(new CodeShrinkVisitor()); passes.add(new SimplifyVisitor()); passes.add(new MethodVisitor(mth -> mth.remove(AFlag.DONT_GENERATE))); - if (args.isRawCFGOutput()) { - passes.add(DotGraphVisitor.dumpRaw()); - } if (args.isCfgOutput()) { passes.add(DotGraphVisitor.dump()); } diff --git a/jadx-core/src/main/java/jadx/core/codegen/SimpleModeHelper.java b/jadx-core/src/main/java/jadx/core/codegen/SimpleModeHelper.java index 6e6720281..1604026c3 100644 --- a/jadx-core/src/main/java/jadx/core/codegen/SimpleModeHelper.java +++ b/jadx-core/src/main/java/jadx/core/codegen/SimpleModeHelper.java @@ -53,7 +53,9 @@ public class SimpleModeHelper { startLabel.set(block.getId()); } else if (predsCount == 1 && prev != null) { if (!prev.equals(preds.get(0))) { - startLabel.set(block.getId()); + if (!block.contains(AFlag.EXC_BOTTOM_SPLITTER)) { + startLabel.set(block.getId()); + } if (prev.getSuccessors().size() == 1 && !mth.isPreExitBlocks(prev)) { endGoto.set(prev.getId()); }