Skylot
d0f197ea3d
fix: shrink code if region maker add FORCE_ASSIGN_INLINE to insn ( #845 )
2020-02-09 14:36:59 +00:00
Skylot
5502d93cd5
fix: additional checks before insert move to help type inference ( #843 )
2020-02-04 18:45:27 +00:00
Yaroslav Yadrov
492a3f6928
feat(deobf): add classname parsing for Kotlin metadata (PR #842 , #758 )
2020-02-02 17:08:29 +03:00
Skylot
1ce8fa8bdd
fix: don't apply types if search failed ( #840 )
2020-01-28 20:07:58 +00:00
Skylot
1bb90233b9
test: NYI tests for #836 and #837
2020-01-27 19:23:35 +00:00
Skylot
49ce92f540
fix: remove move instructions with unused result ( #835 )
2020-01-24 17:37:53 +00:00
Skylot
2107da2e1a
fix: improve 'out' block detection in switch ( #826 )
2020-01-23 18:58:17 +00:00
Skylot
62ca30bbc6
fix: additional patterns to restore enum classes ( #830 )
2020-01-19 11:12:23 +00:00
Skylot
5e7388f686
refactor: fix several issues reported by sonar
2020-01-16 12:16:32 +03:00
Skylot
2921c66834
fix: replace constants inside annotations ( #831 )
2020-01-14 19:52:03 +00:00
Skylot
7bbb083c36
refactor: small changes to switch region and region debug print
2020-01-13 19:27:52 +00:00
Skylot
531650c9f2
refactor: allow to change temp dir using system property JADX_TMP_DIR
2020-01-13 15:32:32 +03:00
Skylot
f3098741c3
test: switch with fallthrough cases ( #826 )
2020-01-08 14:26:40 +00:00
Jan S
c97e504686
fix: additionally show smali code of inner classes (PR #824 )
2020-01-05 12:46:07 +03:00
Skylot
02213802c5
fix: make correct replacement for synthetic constructor ( #808 )
2019-12-28 08:42:39 +00:00
Skylot
f1e229193c
fix: resolve exception on assign inline
2019-12-27 21:20:14 +03:00
Skylot
04e309aeff
fix: additional checks for 'if' blocks inside loops ( #809 )
2019-12-27 21:20:14 +03:00
Skylot
af6f8b5391
fix(gui): resolve exceptions during index ( #812 )
2019-12-23 22:39:06 +03:00
Skylot
0c55ab9001
fix: resolve class cast exception introduced in CodeWriter refactoring ( #810 )
2019-12-22 16:19:47 +00:00
Skylot
7f8d03d192
style: fix some sonar and compiler warnings
2019-12-21 15:37:25 +03:00
Skylot
c64ffde11f
refactor: use ICodeInfo interface instead CodeWriter
2019-12-21 12:36:54 +00:00
Skylot
f5d1f288d0
fix: don't inline constants in synchronized statement ( #799 )
2019-12-15 12:04:24 +00:00
Skylot
1c6e51f8b2
fix: allow to regenerate class code ( #791 )
2019-12-13 18:37:10 +00:00
Soul Trace
ef5da49bc0
fix(xml): reset nsMap in parse method (PR #798 #796 )
...
Fixes injection of xmlns: attributes from other files (#796 )
2019-12-13 21:16:08 +03:00
Skylot
7545625af4
test: add NYI test for empty finally block ( #789 )
2019-12-10 22:10:27 +03:00
Soul Trace
e3055b95f6
feat(gui): support for renaming methods, classes and fields (PR #794 #791 )
...
* 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.
2019-12-10 22:08:27 +03:00
Soul Trace
78eed8629c
feat(gui): reopened tabs on file reload (PR #793 #792 )
...
* 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).
2019-12-10 21:41:57 +03:00
Skylot
d1a6841c20
fix: inline assign in complex conditions ( #699 )
2019-11-30 16:32:29 +00:00
Skylot
600842a1a6
fix: resolve error if input file don't has extension
2019-11-30 16:22:09 +00:00
Skylot
87504dd2cc
refactor: additional checks for ssa vars and registers
2019-11-24 20:33:19 +00:00
Skylot
e4e6f37949
fix: sort inner classes and methods by source lines
2019-11-19 20:05:21 +00:00
Skylot
4b314e9d99
fix: don't eliminate StringBuilder if no String arg present
2019-11-19 18:26:12 +00:00
Skylot
a48ce296b8
fix: resolve code generation error for interface methods ( #775 )
2019-11-05 09:31:12 +00:00
Skylot
bae36f9720
fix: merge const block before return ( #699 )
2019-10-31 15:47:29 +00:00
Skylot
11db454b84
fix: duplicate result arg on instruction copy
2019-10-30 20:59:14 +00:00
Skylot
1b60c1d1a8
test: print smali code for debug purpose
2019-10-30 13:42:58 +00:00
Skylot
8321d5e380
fix: preserve arg type on PHI insn inline ( #718 )
2019-10-28 17:19:52 +00:00
Skylot
08f9a90c95
fix: force cast for null args in method invoke (temp fix for #724 )
2019-10-27 16:53:25 +00:00
Skylot
9f06d6744e
fix: increase region iterative traversal limit ( #767 )
2019-10-27 16:19:58 +00:00
Skylot
f228a72118
fix(gui): fix search if class contains not generated inner class ( #755 )
2019-10-21 18:46:55 +01:00
Skylot
00f5e83506
fix: handle incorrect args count in signature ( #763 )
2019-10-17 16:51:06 +03:00
Skylot
d3ecc1f640
fix: add dummy class if class loading exception occur ( #763 )
2019-10-17 16:51:03 +03:00
Jan S
902247fcdb
fix: don't stop loading classes in case of an error (PR #764 )
...
* fix: don't stop loading classes in case of an error
* style: reformat code
2019-10-15 20:25:18 +03:00
Skylot
bd9e1096cc
fix: handle methods with all NOPs ( #744 )
2019-08-30 15:37:38 +01:00
Skylot
db892adf34
fix: don't run class process from visitors to avoid deadlock ( #743 )
2019-08-27 17:24:18 +01:00
Skylot
1cbaad3ec9
fix: make correct class members loading in jadx api ( #742 )
2019-08-25 19:53:12 +01:00
Skylot
401d08ea49
refactor: move all smali libs usage to one utility class
2019-08-21 14:45:32 +01:00
Skylot
ba17f7bc00
refactor: move type with outer generic to different class
2019-08-15 21:43:57 +01:00
Skylot
db2b537380
fix: try to resolve generic type variables ( #662 )
2019-08-15 21:39:43 +01:00
Skylot
06f26ef8f5
refactor: use enum for wildcard bounds instead of int
2019-08-15 14:31:30 +01:00