From cbd36aeb8f9d87668737a4c7b8a8292177b08dbb Mon Sep 17 00:00:00 2001 From: Skylot Date: Tue, 29 Jul 2014 22:32:09 +0400 Subject: [PATCH] core: fix unused variables declaration --- .../core/dex/visitors/regions/ProcessVariables.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/jadx-core/src/main/java/jadx/core/dex/visitors/regions/ProcessVariables.java b/jadx-core/src/main/java/jadx/core/dex/visitors/regions/ProcessVariables.java index c481b5ca..e6e030ea 100644 --- a/jadx-core/src/main/java/jadx/core/dex/visitors/regions/ProcessVariables.java +++ b/jadx-core/src/main/java/jadx/core/dex/visitors/regions/ProcessVariables.java @@ -200,10 +200,15 @@ public class ProcessVariables extends AbstractVisitor { it.remove(); } } - if (set.isEmpty()) { + IRegion region = null; + if (!set.isEmpty()) { + region = set.iterator().next(); + } else if (!u.getAssigns().isEmpty()) { + region = u.getAssigns().iterator().next(); + } + if (region == null) { continue; } - IRegion region = set.iterator().next(); IRegion parent = region; boolean declare = false; while (parent != null) { @@ -215,7 +220,6 @@ public class ProcessVariables extends AbstractVisitor { region = parent; parent = region.getParent(); } - if (!declare) { declareVar(mth.getRegion(), u.getArg()); } -- GitLab