Commit Graph

1561 Commits

Author SHA1 Message Date
Skylot 3209dbb7a4 fix: do not reopen zip file on every resource decode 2025-03-13 20:22:26 +00:00
Skylot d84f0389ec feat: custom zip reader implementation to fight tampering
fix(zip): use size info from CD if LFH entry is incorrect

refactor: move custom zip implementation into new module

feat: move ZipSecurity into jadx-zip module
2025-03-13 20:22:26 +00:00
Skylot c9d650d186 fix: unload attributes map if empty (#2433) 2025-03-06 19:36:46 +00:00
Skylot b78d3aa2f7 fix: do not replace constant fields which still used in code (#2414) 2025-02-19 23:05:35 +00:00
Skylot 4644d1d8ac fix(gui): correct class init method actions and highlight (#2412) 2025-02-17 20:38:21 +00:00
Skylot 7b8fc01319 feat(plugins): new API method to add popup menu entry for tree nodes (#2412) 2025-02-17 19:52:49 +00:00
Hidoni afdd2d8b39 feat(gui): add button to install desktop file directly from jadx-gui (PR #2404)
* fix: missing/incorrect .desktop file values

- correct comment
- Add StartupWMClass

* feat: add button to install desktop file from jadx-gui (#1392)

* fix: use POSIX compliant realpath instead of readlink

* fix: get XDG executable from PATH
2025-02-01 23:03:42 +00:00
Skylot b18604071a fix(gui): new implementation for tree state save/load (#2399) 2025-02-01 19:33:39 +00:00
Skylot 801890f0a8 fix(gui): improve JNode caching (#2400) 2025-02-01 17:36:53 +00:00
Jan S. 3d36c93beb fix(res): ignore reserved value in type chunk (PR #2403)
fix: ignore reserved value in type chunk (fixes #2402)
2025-01-29 17:12:28 +00:00
Skylot 54fbbd9524 fix(gui): workaround to force class decompilation in loading task (#2400) 2025-01-25 20:38:56 +00:00
Skylot a43b475be7 fix: improve rename using source class name (#2397) 2025-01-20 21:55:46 +00:00
Skylot 19f3cdf501 feat(plugins): add method to open usage dialog 2025-01-20 19:05:06 +00:00
Skylot 45d320a596 feat(plugins): add method to get jadx-gui icons by name 2025-01-20 17:13:23 +00:00
Skylot 6860a8be7e fix(res): handle null values in android manifest parsing (#2392) 2025-01-13 19:55:06 +00:00
ewt45 84e211b809 fix: IfRegionMaker find the wrong outBlock (PR #2385)
* IfRegionMaker find wrong out block

* fix: test codes fail because of the previous commit
2024-12-30 16:42:03 +03:00
Skylot 60a8d8b9fd fix: show all methods for 'simple' and 'fallback' decompilation modes 2024-12-23 21:18:04 +00:00
Skylot 1449354c54 fix: allow to inline methods with ternary instructions (#2380) 2024-12-23 20:59:42 +00:00
Skylot 0df474f35a fix: resolve incorrect var ref validation and remove (#2381) 2024-12-23 19:57:08 +00:00
Skylot de629544a3 fix: force type var short form as a key in generic resolve mapping (#2370) 2024-12-22 21:11:34 +00:00
Skylot 73966fda89 fix(gui): add missing sync in clean task at search dialog close (#2363) 2024-12-21 19:44:15 +00:00
Yaroslav fe41d6ed3d feat(gui): add script rename feature (PR #2374)
* feat(gui): add script rename feature (#2354)

* fix: resolve spotless check
2024-12-19 18:13:08 +00:00
nitram84 ff95b9e999 fix: better package-info support (PR #2369)
* fix: better package-info support

* fix: adjust checks for package-info
2024-12-18 22:33:48 +00:00
Skylot 87844d2193 fix: remove wrapped flag for inlined instruction (#2363) 2024-12-18 21:41:26 +00:00
Yaroslav 2924bb259c feat(gui): add webp image preview support (PR #2372)
* feat(gui): add webp image preview support (#2190)

* fix: resolve spotless check

* remove explicit webp provider register

* Update jadx-gui/src/main/java/jadx/gui/ui/panel/ImagePanel.java

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2024-12-18 19:28:44 +00:00
ewt45 17695babf4 fix: inline anonymous class wrongly handles field as Classname.this (PR #2367)
* fix: inline anonymous class wrongly handle Classname.this

* add test case

---------

Co-authored-by: Skylot <118523+skylot@users.noreply.github.com>
2024-12-12 18:54:05 +00:00
ewt45 0d105a5095 fix: inner class parent is wrong when name formatted as Class$method$xxx (PR #2364) 2024-12-11 19:25:23 +00:00
nitram84 7eab3c8534 feat(gradle): handle non-final res ids for AGP >8.0.0 (PR #2362) 2024-12-11 17:56:28 +00:00
ewt45 2fa7f84251 fix: check respectBytecodeAccModifiers in MarkMethodsForInline (PR #2361)
Update MarkMethodsForInline.java
2024-12-09 16:17:22 +00:00
nitram84 828cad3287 feat: replace constants in annotations of method arguments (PR #2358) 2024-12-04 17:06:13 +00:00
Skylot baa93bad63 fix: additional checks for default switch case exit (#2351) 2024-11-24 18:19:33 +00:00
Jan S. fe9d3bcab7 fix(res): allow jumping backwards to an already processed position (PR #2344)
Use buffered stream to allow going backwards in stream in case the type chunk entries are not ordered properly (see #2343).
2024-11-15 15:12:47 +00:00
Skylot 1e1036c049 fix: disable usage of JDK Unsafe class in GSON (#2341) 2024-11-13 18:28:04 +00:00
Skylot f0513a1a55 fix: insert new filled array insn before first usage (#2340) 2024-11-07 20:02:41 +00:00
Skylot be6cb573b1 feat(plugins): allow to set minimum required jadx version in plugin info (#2314) 2024-11-06 16:30:22 +00:00
pubiqq 5d064d3e50 feat(res): improve resource names (PR #2316) 2024-11-06 18:08:35 +03:00
pubiqq 15b6309e2c fix: support "fall-through to default" case in switch-over-string (PR #2338) 2024-11-05 21:41:03 +00:00
Skylot 417bb7a7e9 feat: add method to update all blocks related info in method (#2335) 2024-11-02 22:08:26 +00:00
Ahmet Bilal Can 4c74e8e300 feat: give ability to plugins to edit blocks before locking (PR #2336)
Plugins can use `.before('BlockFinisher')` to edit blocks before they are locked.
2024-11-02 21:38:57 +00:00
Skylot 57238de6ff feat(cli): add option to disable plugins (#2277) 2024-11-01 20:13:34 +00:00
Skylot 313c4a121a fix: improve negation condition checks for switch over string (#2333) 2024-11-01 16:33:28 +00:00
pubiqq 39912398fc fix: unwrap consts in switch-over-string (PR #2332) 2024-10-31 21:24:19 +00:00
Skylot 7544d1a113 fix: prevent endless loop in pre header insertion mod (#2300) 2024-10-31 20:00:06 +00:00
pubiqq cfbe5ab672 fix: fix default branch position in switch-over-string (PR #2331) 2024-10-31 19:58:35 +00:00
Skylot cc6a893402 feat: allow to disable installed plugins (#2277) 2024-10-28 23:35:28 +03:00
pubiqq 4d8a5d6671 fix(core): fix primitive-to-primitive conversions (PR #2326) 2024-10-28 20:33:10 +00:00
pubiqq 6fa5d247f0 fix(res): update Android attrs to API 35 (PR #2318) 2024-10-25 18:08:36 +01:00
pubiqq 688dea0c50 fix(deobf): update TLDs (PR#2320) 2024-10-25 16:44:07 +01:00
Skylot 3d5e225274 fix: clear temp root dir instead delete (#2312) 2024-10-22 18:01:52 +01:00
Skylot 249801880c feat(api): allow to get method code (#2305) 2024-10-17 19:20:07 +01:00