mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-11-25 13:09:48 +00:00
* elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
CIE at .eh_frame start is removed due to no FDEs referencing it.
This commit is contained in:
parent
8a8b2d4b4a
commit
a3aa38ee6c
@ -1,3 +1,8 @@
|
||||
2002-01-04 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
|
||||
CIE at .eh_frame start is removed due to no FDEs referencing it.
|
||||
|
||||
2002-01-04 Jason Thorpe <thorpej@wasabisystems.com>
|
||||
|
||||
* config.bfd (x86_64-*-netbsd*): New target.
|
||||
|
@ -919,14 +919,23 @@ _bfd_elf_write_section_eh_frame (abfd, sec, ehdrsec, contents)
|
||||
{
|
||||
if (sec_info->entry[i].cie)
|
||||
{
|
||||
cie_offset = sec_info->entry[i].new_offset;
|
||||
cie_offset += (sec_info->entry[i].sec->output_section->vma
|
||||
+ sec_info->entry[i].sec->output_offset
|
||||
- sec->output_section->vma
|
||||
- sec->output_offset);
|
||||
/* If CIE is removed due to no remaining FDEs referencing it
|
||||
and there were no CIEs kept before it, sec_info->entry[i].sec
|
||||
will be zero. */
|
||||
if (sec_info->entry[i].sec == NULL)
|
||||
cie_offset = 0;
|
||||
else
|
||||
{
|
||||
cie_offset = sec_info->entry[i].new_offset;
|
||||
cie_offset += (sec_info->entry[i].sec->output_section->vma
|
||||
+ sec_info->entry[i].sec->output_offset
|
||||
- sec->output_section->vma
|
||||
- sec->output_offset);
|
||||
}
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
if (sec_info->entry[i].cie)
|
||||
{
|
||||
/* CIE */
|
||||
|
Loading…
Reference in New Issue
Block a user