Skip to content

Relative breakpoint (module + offset) does not work with LLDB adapter when the module is not the main module #952

@xusheng6

Description

@xusheng6

This happens at

uint64_t addr = address.offset + m_originalImageBase;

LLDB expects breakpoint to be in the form of module + address_in_original_module. So for example, if module foobar is originally based at 0x140000000, and we want a breakpoint at offset 0x1234, we need to use 0x140001234 to set the breakpoint. For the main module, we compensate for this by doing uint64_t addr = address.offset + m_originalImageBase;. But this is incorrect for any modules other than the module that is opened in binja

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions