diff options
| author | alx32 <103613512+alx32@users.noreply.github.com> | 2024-08-14 19:30:41 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-14 19:30:41 -0700 |
| commit | 0df91893efc752a76c7bbe6b063d66c8a2fa0d55 (patch) | |
| tree | 9041ac6e788a9329c9da5e3ea79eed2c8be24043 /lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp | |
| parent | bd47ba705607033c3dab0037a8d64159b58bedb4 (diff) | |
[lld-macho] Fix crash: ObjC category merge + relative method lists (#104081)
A crash was happening when both ObjC Category Merging and Relative
method lists were enabled.
ObjC Category Merging creates new data sections and adds them by calling
`addInputSection`. `addInputSection` uses the symbols within the added
section to determine which container to actually add the section to.
The issue is that ObjC Category merging is calling `addInputSection`
before actually adding the relevant symbols the the added section. This
causes `addInputSection` to add the `InputSection` to the wrong
container, eventually resulting in a crash.
To fix this, we ensure that ObjC Category Merging calls
`addInputSection` only after the symbols have been added to the
`InputSection`.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp')
0 files changed, 0 insertions, 0 deletions
