diff options
| author | blasty <blasty@local> | 2026-07-22 23:21:16 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-22 23:21:16 +0200 |
| commit | ad22cf5beb0588c8f454bebfa0cc7c7897e4e7a3 (patch) | |
| tree | 8800083d7627a998dce628fe47ac1c493ee76396 /server | |
| parent | pane: reap leaked idalib workers; drive: friendlier name resolution (fixes sp... (diff) | |
| download | ida-tui-ad22cf5beb0588c8f454bebfa0cc7c7897e4e7a3.tar.gz ida-tui-ad22cf5beb0588c8f454bebfa0cc7c7897e4e7a3.tar.xz ida-tui-ad22cf5beb0588c8f454bebfa0cc7c7897e4e7a3.zip | |
app: non-function regions — open a flat listing + c/p/u edit verbs (M0)
Navigating to an address not inside a function no longer refuses ("no
function contains X"): _do_navigate now opens a region view (flat listing
anchored at the EA, forced to disasm since there's no pseudocode). The
server's no-function disasm already walks heads to the segment end, so
DisasmModel is reused as-is; NavEntry gains is_region.
Adds the IDA c/p/u structure-edit verbs on the disasm view:
c = define_code (undefine-first, since create_insn won't carve a live item)
p = define_func
u = undefine
wired via EditItemRequested -> _do_edit_item worker -> Program.define_code/
define_func/undefine. define_func upgrades the region to a real function
view in place.
New Program.bump_items() invalidates the item/function structure caches
(disasm blocks, decomp, function indices + name gen) — broader than
bump_names(), which only covers renames.
Pilot: new `region_define` scenario undefines a small function, navigates
to the bare region via the 'g' prompt (asserts it opens, not refused),
then 'p' recreates the function and upgrades the view; restores the IDB in
a finally. 107 passed / 1 pre-existing flaky (filter, fails on baseline).
Diffstat (limited to 'server')
0 files changed, 0 insertions, 0 deletions
