Commit Graph

1498 Commits

Author SHA1 Message Date
pubiqq b5e3dcf70f feat: add the option to always use source file name as class name alias (PR #2287) 2024-09-23 22:47:08 +01:00
Skylot 7abbc81886 fix: improve switch out block search if all method exits are inside (#2264) 2024-09-22 21:35:40 +01:00
Skylot 9c30aeacdb refactor: split region maker 2024-09-22 20:23:03 +01:00
Skylot e6fde48b69 fix: don't add same 'loaded from:' comment for inner classes 2024-09-21 20:28:18 +01:00
Skylot 109dea0857 feat: support inner class contruction with outer instance (#2253) 2024-09-21 20:27:16 +01:00
Skylot 1d34328dd3 fix(build): disable cache for core tests to allow reruns (#2283) 2024-09-20 21:44:55 +01:00
Skylot ef4f1d3ed4 fix: ignore debug lines hints if numbers was adjusted for method 2024-09-20 21:36:13 +01:00
Skylot 23696d3971 fix: use type from new-instance if differ from constructor call (#2285) 2024-09-20 21:34:21 +01:00
Andy Smith efa2f5d172 feat(gui): limit search to a package (PR #2284)
* Add isDescendantOf and getJavaPackage helper functions

* Add i18n strings for search package

* Added search package to options in SearchSettings

* Add package limiting to each search provider

* Add package search to dialog and logic to get package by string.

* Added search option to package context menu

* Fix spotlessJavaCheck complaints

* Revert changes to individual search providers and add filter to base provider
2024-09-20 12:31:20 +03:00
Skylot 699ceb197e fix: improve condition branch checks in loops (#2274) 2024-09-16 20:37:34 +01:00
Skylot 5c83c22501 feat(java-input): support StackMapTable to get stack info for unvisited jumps (#2271) 2024-09-14 22:45:31 +01:00
Skylot 7bb5c0a859 fix: protect class deps from loading in different decompilation mode 2024-09-13 21:25:11 +01:00
Skylot 603863403f fix: do not add custom passes for fallback and simple modes (#2276) 2024-09-13 21:01:19 +01:00
Skylot 889a945cf1 fix: additional checks for class signature (#2272) 2024-09-12 20:29:05 +01:00
Skylot fd80e03809 fix: check if debug info offset is invalid (#1653) 2024-09-11 19:54:49 +01:00
Skylot 5d1f0b8cae feat(res): support grammar inflection flag in res config (#2270) 2024-09-08 21:49:13 +01:00
Skylot e2c860f260 refactor(res): use list instead map to store entries offsets 2024-09-07 01:21:46 +03:00
Skylot 0938351d97 feat(res): support compact resource entries (#2268) 2024-09-07 01:21:42 +03:00
pubiqq 937dd20794 feat(res): support 16-bit entry offsets (PR #2269) 2024-09-06 23:21:21 +01:00
pubiqq ea5e87560a feat(res): improve error message for unsupported ResTable flags (PR #2266) 2024-09-05 19:13:26 +01:00
Skylot 5fbbf2150e fix(res): prevent duplication of ARSC entries (#2263) 2024-09-04 21:31:37 +01:00
Skylot 0e11bffe82 chore: update dependencies 2024-09-04 20:02:56 +01:00
Skylot ba9af5c288 fix(gui): minor fixes for code jumps 2024-09-04 19:59:57 +01:00
Skylot cca706c94f fix: improve 'continue' insertion for switch in loop (#2249) 2024-09-01 23:02:22 +01:00
pubiqq e63808bc4b fix: improve checking of access modifiers (PR #2255) 2024-08-20 16:45:28 +03:00
Skylot 847225a6a9 fix: improve try/catch temp edges injection (#2247) 2024-08-17 21:09:31 +01:00
pubiqq ffdad1b652 fix: improve checking of access modifiers for methods (PR #2252) 2024-08-15 23:20:07 +01:00
pubiqq 9a8ec76989 fix: improve checking of access modifiers for classes (PR #2251) 2024-08-15 19:59:44 +01:00
Skylot 0be5b2cea9 refactor(tests): add debug checks switch to jadx args 2024-08-13 22:39:48 +01:00
Skylot c94201be4a fix: improve switch out search in loop (#2246) 2024-08-12 22:06:03 +01:00
Skylot 1051dacb1e refactor(tests): migrate from Hamcrest to AssertJ 2024-08-11 21:55:56 +01:00
Skylot a2bfe9bbe8 chore: add openrewrite gradle plugin to improve code quality 2024-08-11 21:10:01 +01:00
Skylot 8c6ec3bccc fix(gui): trim also leading spaces in paths from file dialog (#2244) 2024-08-10 19:24:05 +01:00
Skylot 015876b790 fix(gui): trim trailing spaces in input files (#2244) 2024-08-10 00:31:25 +01:00
Skylot 280f3870a9 fix: handle quick return on branched constructor (#2240) 2024-08-09 22:54:13 +01:00
Skylot e9d770ae9e fix: use correct approach to get prev block on path (#2239) 2024-08-09 22:51:37 +01:00
pubiqq 60fb458024 fix: improve inlining synthetic accessors (PR #2243)
* fix: fix inlining synthetic accessors

* add test, undo changes in InsnNode

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2024-08-08 20:27:08 +01:00
Skylot 1b08779536 chore: update dependencies 2024-08-07 19:06:58 +01:00
Skylot c37e39a819 chore: code improvements by cleanthat 2024-08-07 00:34:22 +01:00
Skylot 2d58fbd4b1 chore: forbid use ArrayList as a variable type 2024-08-07 00:28:39 +01:00
Skylot 58e8268126 fix: workaround to make method inline deterministic (#1089) 2024-08-04 22:46:46 +01:00
Skylot 821cc668c7 fix: don't rerun SSA transform in ConstructorVisitor (#2236) 2024-08-02 21:26:25 +01:00
pubiqq 115e563a2b fix: improve checking if methods are inline for FixAccessModifiers (PR #2235) 2024-08-01 21:45:52 +01:00
pubiqq 61855a7ea1 fix: make detailed var info deterministic (PR #2231) 2024-07-31 22:16:07 +01:00
Skylot c179beee95 chore: update dependencies 2024-07-28 20:57:37 +01:00
Skylot 04a454094b fix: improve exception handlers checks (#2086) 2024-07-27 22:09:14 +01:00
Skylot ad4dd116be chore: update gradle and dependencies 2024-07-19 00:19:47 +03:00
Iscle 05fb77e9bd feat(gui): add button to go to Application class (#2208)(PR #2213)
* feat: Add button to go to Application class

Icons from: https://intellij-icons.jetbrains.design/

* fix: Rename "goto" to "go_to" to keep things consistent
2024-07-08 18:36:45 +01:00
Jan S 96bd9f0f17 fix(xml): AXML/Manifest parsing improvements (PR #2211)
* log and ignore decodeValue errors

* skip extra data in package header

* ResourceTypes.h
2024-07-06 19:27:47 +03:00
qfalconer fd5b397b40 fix(xml): allow for non-standard attributes sizes and avoid index exceptions when decoding some strings (PR #2210)
More lenient AXML parsing: allow for non-standard attributes sizes and avoid index exceptions when decoding some strings

* The attributes size of an XML element is now accounted for. This size must be at least 20 (0x14) bytes but can be greater. Extra bytes are just skipped. When decoding a string, if such decoding is impossible a placeholder string is returned instead of throwing an exception. This is necessary because some malware purposely add android:tag attributes with invalid string index to throw parsers off. They also employ non-standard attribute sizes.

* Minor code restyling

---------

Co-authored-by: qfalconer <knm241@gmail.com>
2024-07-03 18:50:15 +01:00