Commit Graph

1375 Commits

Author SHA1 Message Date
Skylot 0c1f830f94 fix: lambda decoding and code generation (#2139) 2024-04-03 21:03:48 +01:00
Skylot 43c082e4da feat: replace Android resource ids with android.R fields (#2119) 2024-03-31 20:37:33 +01:00
Skylot ecdc4e6757 refactor: move constant collection into separate pass (#2119) 2024-03-30 21:51:02 +00:00
Skylot b865c9c687 refactor: allow store unresolved fields in ConstStorage (#2119) 2024-03-30 20:52:31 +00:00
Skylot 2807dc5090 fix(script): add example script for resources rename (#2126) 2024-03-20 18:46:44 +00:00
Skylot 463d2b90fa fix: don't apply node positions and prevent eager loading for custom decompile modes (#2116) 2024-03-19 20:23:04 +00:00
Skylot bff00d101f fix(script): add option flags, fix missing script options in help 2024-03-19 20:22:50 +00:00
CKCat eecdfae73f fix(res): resolve some manifest decode errors (PR #2122)
* The elementSize may be larger than the actual size of the element chunk.

* end namespace chunk size can be any value.

* keep at least a warning.
2024-03-16 18:57:10 +00:00
bagipro 2fdd496518 fix(res): add indents for namespace declarations (PR #2114)
Co-authored-by: bagipro <bugi@bugi>
2024-03-01 16:32:47 +00:00
bagipro 278e3c2d47 fix(res): avoid duplicated XML attributes (PR #2112)
Co-authored-by: bagipro <bugi@bugi>
2024-02-27 18:49:09 +00:00
bagipro 881a716b8e fix(res): fixed XML proto parsing for removed debug data (PR #2111)
* Fixed XML proto parsing for removed debug data

* Fixed codestyle check

---------

Co-authored-by: bagipro <bugi@bugi>
2024-02-27 17:34:37 +00:00
Skylot d51362ed50 fix: don't remove exception handlers (#2104) 2024-02-19 20:18:44 +00:00
nitram84 5fbabdefca fix: NPE in unused EcxHandler block removal code (#2086) (PR #2104) 2024-02-15 17:57:30 +00:00
nitram84 13607fc8b6 fix(res): add missing namespace declarations (PR #2102)
* fix(res): add missing namespace declarations

* remove `writer.getIndent() == 0`

---------

Co-authored-by: skylot <118523+skylot@users.noreply.github.com>
2024-02-15 17:56:39 +00:00
DanielFi 0c33d723c8 fix: optimize switch fallthrough (PR #2054)
* cache post dom map between switch cases
* cache post dom map of whole methods
* calculate full post dom tree, fix switch out block detection

---------

Co-authored-by: Skylot <skylot@gmail.com>
2024-02-14 18:31:38 +00:00
Skylot 0143423dc9 fix: use empty line before field in correct place (#2101) 2024-02-12 15:39:41 +00:00
Skylot ecb8abb98e fix: correct rollback if type update failed (#2090) 2024-02-10 16:08:51 +00:00
Skylot a3a4fabd5a fix: store classes access flags in class set 2024-02-07 22:10:31 +03:00
Skylot edf6ce273c fix: clear node flags for custom decompilation mode 2024-02-06 21:54:41 +03:00
Away 276ee537e1 fix: remove unused ExcHandlers blocks (PR #2086)
* Removing unused ExcHandlers blocks

* Improving removing unused ExcHandlers blocks

* Removing gradlew of the commit

* Adding test 2 for UnreachableCatch

* Update jadx-core/src/test/java/jadx/tests/integration/trycatch/TestUnreachableCatch2.java

---------

Co-authored-by: Away-pp <vladimir@DESKTOP-KESF23K>
Co-authored-by: skylot <118523+skylot@users.noreply.github.com>
2024-02-04 18:02:34 +00:00
Skylot d86449a8ea fix(res): ignore resource table entries with '../' in name 2024-01-25 20:09:21 +00:00
Skylot 75d2e540aa refactor: add new task executor, remove task barrier (#1879) 2024-01-25 19:45:23 +00:00
bagipro e73612b4d2 feat(res): disable XML pretty print (PR #2087)
Co-authored-by: bagipro <bugi@bugi>
2024-01-22 15:01:38 +00:00
Away a19aec9d9f fix: use correct order in removeUnreachableBlocks (PR #2085)
* Fixing wrong order in removeUnreachableBlocks
* Removing dead code in TestTernary4 test
* Do not clear instructions in detach blocks method
2024-01-21 16:05:02 +00:00
Skylot 61be1d8b0a fix(gui): allow to reset variable name, fix renames for inner classes 2024-01-18 20:36:51 +00:00
Skylot 8e7ffc8ddb fix: support switch over enum by ordinal 2024-01-16 20:40:51 +00:00
Skylot 306bc7abc3 feat(java-input): support jsr/ret opcodes (#2039) 2024-01-15 22:18:44 +03:00
Skylot 8ed48183c7 feat(plugins): add API for search/use other plugins 2024-01-15 22:18:44 +03:00
Skylot fdc3fe1a8d fix(java-input): use correct registers for dup2_x* opcodes 2024-01-15 22:18:44 +03:00
Away 2805770510 fix: removeUnreachable not searching in all blocks (PR #2082)
Co-authored-by: Away-pp <vladimir@DESKTOP-KESF23K>
2024-01-14 17:07:39 +00:00
Skylot e723c245ee fix: use correct type printer in json output mode (#2053) 2023-12-23 18:46:39 +00:00
Iscle f5accc8464 feat: add support for xapk files (#1597)(PR #2064)
* feat: annotate JadxPlugin with NotNull

Allows for better Kotlin support

* feat: add support for custom resources loader

* feat: add support for xapk resources loading

* fix: rename "decode" to "load"

* refactor: annotate JadxCodeInput with NotNull

* feat: add support for xapk code loading

* feat: add xapk support to file filter

* fix code formatting

* revert NotNull annotation

* several improvements

* refactor: fix typo

---------

Co-authored-by: Skylot <skylot@gmail.com>
2023-12-21 18:46:40 +00:00
Skylot 295befbaaa fix: check class alias for Kotlin Intrinsics search (#1590) 2023-12-18 18:14:56 +00:00
Skylot 8db70ee7a5 fix(gui): resolve reset and commit issues for disk code cache 2023-12-16 19:20:43 +03:00
Skylot 2d5c0fda4a fix: prefer early return for 'if-else-if' block (#2052) 2023-12-05 21:08:22 +00:00
nitram84 1e57e85382 fix: gradle export for APKs without strings.xml (PR #2050) 2023-12-03 17:38:46 +00:00
Skylot 2d28da9b0e feat: allow to set zip max entries count using env var (#1751) 2023-11-16 20:48:08 +03:00
Skylot edb1717969 fix: support variables reuse for enum restore (#2042) 2023-11-16 20:48:07 +03:00
Skylot a989fa7e64 refactor(deobf): split deobfuscation conditions (#2040) 2023-11-05 20:22:15 +00:00
nitram84 f7002c7fad feat(deobf): implement a whitelist for deobfuscation (PR #2040) 2023-11-05 20:21:41 +00:00
Markslin 173d85bf84 fix(res): resolve resourceIds reuse issue (PR #2037)
Co-authored-by: mingyinsun <mingyinsun@tencent.com>
2023-10-24 18:47:17 +01:00
Skylot b310e92d7a fix: inline CMP instructions to help conditions merge (#2033) 2023-10-21 23:08:00 +01:00
Skylot fdffe20c46 fix(gui): another try to fix code search 2023-10-21 23:08:00 +01:00
Skylot 15d464d620 fix(gui): improve code and method search (#2033) 2023-10-18 21:53:40 +01:00
Skylot 1bd4526e4c fix: improve restructure of nested try/catch/finally blocks (#2033) 2023-10-15 20:06:35 +01:00
rawer886 cfd851a980 fix: use correct imports for classes from default package (PR #2031)
* fix: use fully qualified package names for classes of defpackage

* fix: use correct imports for classes from default package (#2027)
---------

Co-authored-by: Skylot <skylot@gmail.com>
2023-10-11 20:04:03 +01:00
Jan S d120556772 fix(res): add resource entry offset check (PR #2024) 2023-10-06 17:25:36 +00:00
Skylot 89acf73010 feat(plugins): cache available plugin list 2023-09-27 19:44:53 +01:00
Skylot b73f2ef0b9 fix(res): place xml attributes on new line (#2012) 2023-09-24 20:40:33 +01:00
Skylot 762c2d70bd chore: fix typos 2023-09-24 18:53:39 +01:00