6271 Commits

Author SHA1 Message Date
Ryan Kurtz
ffe199d601 Merge remote-tracking branch
'origin/GP-7144-dragonmacher-front-end-natural-sort--SQUASHED'
(Closes #7093)
2026-08-20 10:48:44 -04:00
dragonmacher
2eadd6ae13 GP-7144 - Updated the Front End to use a natural sort for project files 2026-08-19 17:57:02 -04:00
Ryan Kurtz
32fd8755ae Merge remote-tracking branch 'origin/GP-7151_emteere_PR-9516_mi11ione_fix-symbolic-propogator-unsigned-folds' 2026-08-19 12:44:18 -04:00
Ryan Kurtz
b662f0ccdb Merge remote-tracking branch 'origin/GP-7145-dragonmacher-dt-diff-view'
(Closes #9502)
2026-08-18 12:49:58 -04:00
Ryan Kurtz
caebfc9812 Merge remote-tracking branch
'origin/GP-7150_emteere_PR-9513_CBongo_fix-minstoreloadoffset-setter'
(Closes #9513)
2026-08-18 12:47:42 -04:00
mi11ione
66a6bb6c7d Fix signedness of SymbolicPropogator constant folds 2026-08-17 20:17:22 -07:00
dragonmacher
5e9056b387 GP-7145 - Added an action to compare two data types 2026-08-17 17:36:58 -04:00
Ryan Kurtz
52bb03d247 Merge remote-tracking branch 'origin/GP-7143-dragonmacher-xrefs-field-improvements--SQUASHED' 2026-08-17 04:52:26 -04:00
Chris Bongaarts
5e7bd205ec Fix setMinStoreLoadOffset assigning wrong field
In `ConstantPropagationContextEvaluator`, `setMinStoreLoadOffset` assigns `maxSpeculativeOffset` instead of `minStoreLoadOffset`.

The setter is chained **last** in `ConstantPropagationAnalyzer.flowConstants`:

```java
new ConstantPropagationContextEvaluator(monitor)
    .setTrustWritableMemory(...)
    .setMinSpeculativeOffset(minSpeculativeRefAddress)
    .setMaxSpeculativeOffset(maxSpeculativeRefAddress)
    .setMinStoreLoadOffset(minStoreLoadRefAddress)     // <-- clobbers maxSpeculativeOffset
    .setCreateComplexDataFromPointers(...)
```

so there are two consequences:

1. **`maxSpeculativeOffset` is overwritten** with `minStoreLoadRefAddress`, discarding the value
   `setMaxSpeculativeOffset` installed on the line before. `evaluateConstant` uses
   `maxSpeculativeOffset` as an end-of-memory rejection window; with the default options that
   window shrinks from the computed value to 4.
2. **`minStoreLoadOffset` never receives the option value.** It stays at its constructor default
   of 4, which makes the user-visible analysis option "Min absolute reference"
   (`MINSTORELOADREFADDRESS`) inert.

The three-argument constructor assigns both fields correctly, which is why this has gone
unnoticed: the bug is only reachable through the fluent form - which is the form the analyzer
itself uses.

This affects the base `ConstantPropagationAnalyzer` and every per-processor subclass that repeats
the same chain (MIPS, ARM, PowerPC, x86, SH4, PIC16, 68K, Hexagon, RISC-V, Sparc, NDS32,
LoongArch, and the Toy analyzer).

I noticed this on a 16-bit target, where "Min absolute reference" is exactly the option a user has
to lower to get zero-page references; the option appears to do nothing.

The javadoc on the setter is also corrected; it was duplicated from `setMaxSpeculativeOffset`.
2026-08-16 18:33:29 -05:00
Sylvester Kaczmarek
9f9821e1d7 #9505 Wrap long array values in the Listing 2026-08-16 13:28:42 +01:00
dragonmacher
39fb0015b4 GP-7143 - Xrefs Field - Show full xref count 2026-08-14 12:40:01 -04:00
Ryan Kurtz
1bc38d195a Merge remote-tracking branch
'origin/GP-7137_dragonmacher_PR-9489_JohannesLks_preserve-register-order'
(Closes #9489, Closes #928)
2026-08-14 12:29:07 -04:00
dragonmacher
e728c307b7 GP-7137 - Updated the register picker and the Register Provider to use a
natural sort
2026-08-14 11:35:25 -04:00
Ryan Kurtz
b0f7919d43 Merge remote-tracking branch 'origin/GP-7114-dragonmacher-find-plate-comment--SQUASHED' 2026-08-13 11:24:14 -04:00
Ryan Kurtz
d5f144c24d Merge remote-tracking branch
'origin/GP-7132_ryanmkurtz_path-traversal--SQUASHED' (Closes #9482)
2026-08-13 11:09:21 -04:00
Ryan Kurtz
ca002c5904 GP-7132: Improved path traversal checks 2026-08-13 11:04:19 -04:00
dragonmacher
cccc0a6990 GP-7114 - Search Text - Fixed searching of clipped text; fixed plate comment searching 2026-08-12 19:01:15 -04:00
Ryan Kurtz
699c2b1aa8 Merge remote-tracking branch
'origin/GP-7090_emteere_PR-9407_0xFE4415_addr_table' (Closes #9407)
2026-08-12 09:01:47 -04:00
emteere
75a3b5a028 GP-7090 PR and additional test case for split AdressTable from
references and address table sizes
2026-08-11 15:39:39 -04:00
JohannesLks
34b446a328 #928 Correct register sorting 2026-08-11 14:35:32 -04:00
Ryan Kurtz
0c9a3fa18e Merge remote-tracking branch 'origin/patch' 2026-08-10 06:46:10 -04:00
Ryan Kurtz
19afcc1c49 GP-7071: Another OMF fix 2026-08-10 06:43:01 -04:00
Ryan Kurtz
5988acbdf5 Merge remote-tracking branch 'origin/patch' 2026-08-10 06:00:51 -04:00
Ryan Kurtz
d08e8acff1 GP-0: Fixing a potential NullPointerException when parsing PE DebugMisc
structures (Closes #9486)
2026-08-10 05:48:55 -04:00
Ryan Kurtz
e0a62fe3df Merge remote-tracking branch 'origin/patch' 2026-08-10 04:59:33 -04:00
Ryan Kurtz
1f7a1b350b GP-0: Fixing NullPointerException importing an x64 PE with a zeroed
UnwindInfoAddress in .pdata (Closing #9491)
2026-08-10 04:57:38 -04:00
Ryan Kurtz
291d5c4e77 GP-7125: Fixed a bug that prevented the GhidraScript ask() methods from
consuming script arguments in GUI mode (Closes #9463)
2026-08-07 09:53:59 -04:00
Ryan Kurtz
1373134a93 Merge remote-tracking branch 'origin/patch' 2026-08-07 07:17:05 -04:00
Ryan Kurtz
c42f398414 Merge remote-tracking branch
'origin/GP-7118-dragonmacher-comp-editor-fix' into patch (Closes #9461)
2026-08-07 07:12:06 -04:00
Ryan Kurtz
5b45a57296 GP-0: Cleanup 2026-08-06 14:12:38 -04:00
Ryan Kurtz
6b1e45e0ad GP-7120: Improved monitor messages during import 2026-08-06 12:53:53 -04:00
Ryan Kurtz
54e3bd5f60 Merge remote-tracking branch 'origin/patch' 2026-08-06 11:31:16 -04:00
Ryan Kurtz
36cf4956db GP-7123: SomLoader parsing improvement 2026-08-06 11:29:21 -04:00
Ryan Kurtz
6d7ace559f GP-7124: MotorolaHexLoader parsing improvement 2026-08-06 11:18:42 -04:00
Ryan Kurtz
8be169cb2a Merge remote-tracking branch 'origin/GP-1-dragonmacher-function-graph-format-fix' 2026-08-06 05:46:11 -04:00
Ryan Kurtz
0f5a0e592b GP-7104: Deprecated fixes 2026-08-06 05:21:55 -04:00
dragonmacher
9734de71f9 GP-7118 - Updated Structure Editor to reloaded when the description is
changed outside of the editor
2026-08-05 14:23:57 -04:00
dragonmacher
58e29550b0 Fixed bug in Function Graph format chooser that made the minimal format
too large
2026-08-04 18:58:26 -04:00
Ryan Kurtz
ae024e2f20 Merge remote-tracking branch 'origin/GP-7095_dev747368_remove_szjb' 2026-08-03 12:30:30 -04:00
Ryan Kurtz
721faeff71 GP-0: More deprecation updates 2026-08-03 12:21:19 -04:00
dev747368
d069372cfe GP-7095 remove sevenzipjbinding and formats that relied on it
Formats refactored:
zip - apache commons compress + zip4j
7z - apache commons compress
bzip2 - apache commons compress
cabarc - 7z cli tool
xz - apache commons compress

Formats now unsupported:
hfsplus
iso9660
ms wim
arj
chm
deb
lha
rar
rpm
vhd
z
2026-07-31 21:51:02 +00:00
Ryan Kurtz
9cae6dc55b Merge remote-tracking branch 'origin/patch' 2026-07-31 07:23:14 -04:00
Ryan Kurtz
9837384239 Merge remote-tracking branch
'origin/GP-6624_ghidravision_DecompileDebugXml_added_bitfields--SQUASHED'
into patch (Closes #9049)
2026-07-31 07:18:39 -04:00
ghidravision
237d83af4c Updated handling of unions with bitfields. Cleaned up code. SQUASHED 2026-07-31 11:07:51 +00:00
Ryan Kurtz
42719e93db GP-7104: More deprecations 2026-07-31 06:04:45 -04:00
Ryan Kurtz
6653f65a82 GP-7104: More removal of stuff marked deprecated since 10.x (and
old
2026-07-31 04:57:43 -04:00
dragonmacher
99466cbe14 removal of deprecated methods 2026-07-30 13:59:05 -04:00
Ryan Kurtz
9aeac56e0b GP-7104: More removal of stuff marked deprecated since 10.x (and
older)
2026-07-30 13:30:33 -04:00
Ryan Kurtz
26f2b489b1 Merge branch 'GP-5848_ryanmkurtz_lib-archs' 2026-07-30 13:17:10 -04:00
Ryan Kurtz
79fe87452d GP-7104: Starting to remove stuff marked deprecated since 10.x (and
older)
2026-07-30 13:13:50 -04:00