Skylot
fa0a38d3aa
fix: don't use OS specific new line chars ( #861 )
2020-02-23 15:37:07 +00:00
Jan S
b56fd4d29a
chore: add inlined class name as comment (PR #865 )
...
* chore: add inlined class name as comment
* chore: adapt unit test for inlined class name as comment
2020-02-23 17:06:10 +03:00
Skylot
e444ecb2c7
fix: improve wildcard types compare ( #857 )
2020-02-17 19:31:13 +00:00
Skylot
1336c47d18
fix: speed up switch processing by skip not relevant exits ( #846 )
2020-02-16 15:50:02 +00:00
Skylot
519a74e8d2
fix: improve type inference for arrays ( #837 )
2020-02-16 17:12:31 +03:00
Skylot
dea7714ef3
feat: add methods information from standard library, improve generics and varargs restore ( #836 )
2020-02-16 17:12:31 +03:00
Skylot
57c28c61e0
fix: restore enum for several blocks in class init method
2020-02-14 18:08:37 +00:00
Skylot
87320348dd
chore: update all dependencies and gradle
2020-02-12 20:43:27 +00:00
Skylot
fcb70e69c1
fix: don't print commented case value if it is an instruction ( #850 )
2020-02-11 22:08:14 +03:00
Jan S
4859629850
fix: record inlined classes and generate Smali code for them (PR #851 , #848 )
...
* fix: additionally show smali code of all inlined classes (recursively)
* variable name corrected
2020-02-11 22:06:07 +03:00
Jan S
bd0d248fd0
fix: additionally show smali code of all inner classes (recursively) (PR #849 , #848 )
2020-02-10 22:00:32 +03:00
Skylot
c24a3edb44
fix: inline assignment instruction from same block ( #820 )
2020-02-09 14:40:27 +00:00
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