Skip to content

Commit

Permalink
fix(gui): printUsage for jadx-gui now shows the new gui only paramete…
Browse files Browse the repository at this point in the history
…r(s) (PR #660)
  • Loading branch information
jpstotz authored and skylot committed May 10, 2019
1 parent 86a4ed7 commit 8e0df4c
Showing 1 changed file with 20 additions and 3 deletions.
23 changes: 20 additions & 3 deletions jadx-cli/src/main/java/jadx/cli/JCommanderWrapper.java
Expand Up @@ -3,7 +3,9 @@
import java.io.PrintStream;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

Expand Down Expand Up @@ -66,9 +68,9 @@ public void printUsage() {
maxNamesLen = len;
}
}
JadxCLIArgs args = new JadxCLIArgs();
Field[] fields = args.getClass().getDeclaredFields();
for (Field f : fields) {

JadxCLIArgs args = (JadxCLIArgs) jc.getObjects().get(0);
for (Field f : getFields(args.getClass())) {
String name = f.getName();
ParameterDescription p = paramsMap.get(name);
if (p == null) {
Expand All @@ -85,6 +87,21 @@ public void printUsage() {
out.println(" jadx -d out classes.dex");
}

/**
* Get all declared fields of the specified class and all super classes
*
* @param clazz
* @return
*/
private List<Field> getFields(Class<?> clazz) {
List<Field> fieldList = new LinkedList<>();
while (clazz != null) {
fieldList.addAll(Arrays.asList(clazz.getDeclaredFields()));
clazz = clazz.getSuperclass();
}
return fieldList;
}

private void addDefaultValue(JadxCLIArgs args, Field f, StringBuilder opt) {
Class<?> fieldType = f.getType();
if (fieldType == int.class) {
Expand Down

0 comments on commit 8e0df4c

Please sign in to comment.