diff options
| author | blasty <peter@haxx.in> | 2026-07-24 00:18:18 +0200 |
|---|---|---|
| committer | blasty <peter@haxx.in> | 2026-07-24 00:18:18 +0200 |
| commit | 76101c39d1e24a588ff6bf36951d4cce9c374344 (patch) | |
| tree | 7c675ae57c8c15bcfab9c37a50bc568c320fe0cd /docs | |
| parent | nav: xref jump into pseudocode lands on the referenced symbol, not column 0 (diff) | |
| download | ida-tui-76101c39d1e24a588ff6bf36951d4cce9c374344.tar.gz ida-tui-76101c39d1e24a588ff6bf36951d4cce9c374344.tar.xz ida-tui-76101c39d1e24a588ff6bf36951d4cce9c374344.zip | |
nav: snap an xref-into-pseudocode jump to the line that holds the symbol
Hex-Rays can attribute an address to a pseudocode line a step off from where the
referenced symbol actually appears, so an xref jump could land on a line that
doesn't contain the token (cursor at column 0, wrong line).
Add _decomp_locate: anchor on the /*0xEA*/ marker line for the address, but when
a token is known, snap to the whole-word occurrence NEAREST the anchor
(preferring the anchor line, then the line just below). This fixes the marker/
symbol line discrepancy and disambiguates a symbol that appears multiple times by
picking the occurrence closest to the address. The mid-function decomp-jump
branch now uses it.
Verified: real xref (sub_2060 from sub_20DD) still lands on 'sub_2060(a2);'
cursor_x=4; synthetic discrepancy (marker on a line without the symbol) snaps to
the nearest call-site line, not the far unrelated occurrence. Full suite green.
Diffstat (limited to 'docs')
0 files changed, 0 insertions, 0 deletions
