- 03 1月, 2020 8 次提交
-
-
由 S-trace 提交于
Skipping those methods on class refresh leads to "M.this = r1;" like assigments appears in the inner class constructors. Unsure is this saint or not.
-
由 S-trace 提交于
There is a duplicate control in the ConstStorage.ValueStorage.add() method, so each constant should be added only once, and not be added on class refresh. Fixes "Replace constants" failure after renaming any node.
-
由 S-trace 提交于
checkInstructions() may fail with NPE: ERROR - NullPointerException in pass: BlockSplitter in method: com.google.common.primitives.Ints.IntArrayAsList.<init>(int[], int, int):void, dex: out.dex java.lang.NullPointerException: null at jadx.core.dex.nodes.MethodNode.checkInstructions(MethodNode.java:159) at jadx.core.dex.visitors.blocksmaker.BlockSplitter.visit(BlockSplitter.java:49) at jadx.core.dex.visitors.DepthTraversal.visit(DepthTraversal.java:31) at jadx.core.dex.visitors.DepthTraversal.lambda$visit$1(DepthTraversal.java:16) at java.util.ArrayList.forEach(ArrayList.java:1257) at jadx.core.dex.visitors.DepthTraversal.visit(DepthTraversal.java:16) at jadx.core.dex.visitors.DepthTraversal.lambda$visit$0(DepthTraversal.java:15) at java.util.ArrayList.forEach(ArrayList.java:1257) at jadx.core.dex.visitors.DepthTraversal.visit(DepthTraversal.java:15) at jadx.core.ProcessClass.process(ProcessClass.java:41) at jadx.core.ProcessClass.generateCode(ProcessClass.java:58) at jadx.core.dex.nodes.ClassNode.decompile(ClassNode.java:292) at jadx.core.dex.nodes.ClassNode.decompile(ClassNode.java:271) at jadx.core.dex.nodes.ClassNode.refresh(ClassNode.java:303) at jadx.api.JavaClass.refresh(JavaClass.java:61) at jadx.gui.treemodel.JClass.refresh(JClass.java:63) ... This happens because MethodNode.unloadInsnArr() call from BlockSplitter.visit() - after it instructions[] become null. So, try to reload method before processing its instructions array.
-
由 S-trace 提交于
Fixes appearing of the 0/null/false initializers for instance final fields.
-
由 S-trace 提交于
Fixes loss of static identifiers, comments, annotations and source file name after rename.
-
由 S-trace 提交于
After renaming some classes needs to be redecompiled to reflect new state. Move recompilation of non-displayed classes to background thread. This should improve performance on weak machines.
-
由 S-trace 提交于
Fixes multiple decompilation of classes - now each class decompiled just once.
-
由 S-trace 提交于
This implementation does not reload file after renaming, and so works faster.
-
- 28 12月, 2019 7 次提交
- 27 12月, 2019 1 次提交
-
-
由 Soul Trace 提交于
-
- 24 12月, 2019 2 次提交
- 23 12月, 2019 1 次提交
-
-
由 Skylot 提交于
-
- 22 12月, 2019 2 次提交
- 21 12月, 2019 3 次提交
- 20 12月, 2019 2 次提交
- 15 12月, 2019 1 次提交
-
-
由 Skylot 提交于
-
- 14 12月, 2019 3 次提交
-
-
由 Skylot 提交于
-
由 Skylot 提交于
-
由 Soul Trace 提交于
Fixes injection of xmlns: attributes from other files (#796)
-
- 11 12月, 2019 3 次提交
-
-
由 Skylot 提交于
-
由 Soul Trace 提交于
* Add getRealFullName() to ClassNode and JavaClass and searchJavaClassByRealName() to JadxWrapper Those methods is like getFullName() and searchJavaClassByClassName(), but for class names without aliases. It is necessary for renaming classes/methods/fields. * core: Make getFieldNode(), getMethodNode() and getRoot() public This is necessary for renaming functionality * jadx-gui: Add Rename popup menu entry (renames classes, methods and fields) It allows user to rename classes, methods and fields. It updates deobfuscation map and reload file. This may be suboptimal, and maybe some RenameVisitor should be added. Deobfuscation should be enabled in order to allow this.
-
由 Soul Trace 提交于
* Add getRealFullName() to ClassNode and JavaClass and searchJavaClassByRealName() to JadxWrapper Those methods is like getFullName() and searchJavaClassByClassName(), but for class names without aliases. It is necessary for renaming classes/methods/fields. * MainWindow: Try to restore open tabs on deobfuscation toggle Restore open tabs if possible when user toggles deobfuscation mode. Try to scroll to the position before toggling deobfuscation mode (may be not exact cause of the comments).
-
- 07 12月, 2019 1 次提交
-
-
由 Skylot 提交于
-
- 01 12月, 2019 2 次提交
- 25 11月, 2019 2 次提交
- 20 11月, 2019 2 次提交