* elf32-m68k.c (rtype_to_howto): If the reloc index is out of

range call the bfd error hander and use R_68K_NONE instead.
This commit is contained in:
Andreas Schwab 2009-09-07 16:29:34 +00:00
parent 815c0482cb
commit c86ad51492
2 changed files with 15 additions and 6 deletions

View File

@ -1,3 +1,8 @@
2009-09-07 Andreas Schwab <schwab@linux-m68k.org>
* elf32-m68k.c (rtype_to_howto): If the reloc index is out of
range call the bfd error hander and use R_68K_NONE instead.
2009-09-07 Tristan Gingold <gingold@adacore.com>
* po/SRC-POTFILES.in: Regenerate.

View File

@ -374,13 +374,17 @@ static reloc_howto_type howto_table[] = {
};
static void
rtype_to_howto (abfd, cache_ptr, dst)
bfd *abfd ATTRIBUTE_UNUSED;
arelent *cache_ptr;
Elf_Internal_Rela *dst;
rtype_to_howto (bfd *abfd, arelent *cache_ptr, Elf_Internal_Rela *dst)
{
BFD_ASSERT (ELF32_R_TYPE(dst->r_info) < (unsigned int) R_68K_max);
cache_ptr->howto = &howto_table[ELF32_R_TYPE(dst->r_info)];
unsigned int indx = ELF32_R_TYPE (dst->r_info);
if (indx >= (unsigned int) R_68K_max)
{
(*_bfd_error_handler) (_("%B: invalid relocation type %d"),
abfd, (int) indx);
indx = R_68K_NONE;
}
cache_ptr->howto = &howto_table[indx];
}
#define elf_info_to_howto rtype_to_howto