From: Alan Modra Date: Wed, 10 Apr 2024 23:55:13 +0000 (+0930) Subject: Segfault in _bfd_delete_bfd with USE_MMAP X-Git-Tag: gdb-15-branchpoint~438 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ea3002bc4d2a3c8ad284041f8a7dd08472c3f5fa;p=thirdparty%2Fbinutils-gdb.git Segfault in _bfd_delete_bfd with USE_MMAP Any of the calls to _bfd_delete_bfd in bfd_fopen will hit this. * opncls.c (_bfd_delete_bfd): Check for non-NULL xvec before accessing flavour. --- diff --git a/bfd/opncls.c b/bfd/opncls.c index 2f8a3a6c919..bc76696dfdb 100644 --- a/bfd/opncls.c +++ b/bfd/opncls.c @@ -164,7 +164,8 @@ static void _bfd_delete_bfd (bfd *abfd) { #ifdef USE_MMAP - if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) + if (abfd->xvec + && abfd->xvec->flavour == bfd_target_elf_flavour) { asection *sec; for (sec = abfd->sections; sec != NULL; sec = sec->next)