From eafe080c41f6d6147601c40680d0a9136ea891d9 Mon Sep 17 00:00:00 2001 From: "13.beta2" Date: Tue, 12 Nov 2013 00:58:31 +0400 Subject: [PATCH] core: omit redundant brackets in case blocks --- jadx-core/src/main/java/jadx/core/codegen/InsnGen.java | 2 +- .../src/main/java/jadx/core/codegen/RegionGen.java | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java b/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java index 3d9806e74..fcfa30c9b 100644 --- a/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java +++ b/jadx-core/src/main/java/jadx/core/codegen/InsnGen.java @@ -146,7 +146,7 @@ public class InsnGen { private String sfield(FieldInfo field) { String thisClass = mth.getParentClass().getFullName(); - if (field.getDeclClass().getFullName().equals(thisClass)) { + if (thisClass.startsWith(field.getDeclClass().getFullName())) { return field.getName(); } else { return useClass(field.getDeclClass()) + '.' + field.getName(); diff --git a/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java b/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java index de81ced72..54df22b12 100644 --- a/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java +++ b/jadx-core/src/main/java/jadx/core/codegen/RegionGen.java @@ -234,7 +234,6 @@ public class RegionGen extends InsnGen { SwitchNode insn = (SwitchNode) sw.getHeader().getInstructions().get(0); InsnArg arg = insn.getArg(0); code.startLine("switch(").add(arg(arg)).add(") {"); - code.incIndent(); int size = sw.getKeys().size(); for (int i = 0; i < size; i++) { @@ -256,13 +255,12 @@ public class RegionGen extends InsnGen { code.startLine("default:"); makeCaseBlock(sw.getDefaultCase(), code); } - code.decIndent(); + code.startLine('}'); return code; } private void makeCaseBlock(IContainer c, CodeWriter code) throws CodegenException { - code.add(" {"); if (RegionUtils.notEmpty(c)) { makeRegionIndent(code, c); if (RegionUtils.hasExitEdge(c)) { @@ -271,7 +269,6 @@ public class RegionGen extends InsnGen { } else { code.startLine(1, "break;"); } - code.startLine('}'); } private void makeTryCatch(IContainer region, TryCatchBlock tryCatchBlock, CodeWriter code) @@ -312,12 +309,13 @@ public class RegionGen extends InsnGen { } } + // FIXME: !!code from InsnGen.sfield private String sfield(FieldInfo field) { String thisClass = mth.getParentClass().getFullName(); - if (field.getDeclClass().getFullName().equals(thisClass)) { + if (thisClass.startsWith(field.getDeclClass().getFullName())) { return field.getName(); } else { return useClass(field.getDeclClass()) + '.' + field.getName(); } } -} \ No newline at end of file +}