From: Tom Tromey Date: Mon, 16 Jul 2018 00:07:40 +0000 (-0600) Subject: Avoid ubsan complaint in BFD X-Git-Tag: users/ARM/embedded-binutils-master-2018q4~1291 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=01bcaf636ad0b1d5fe44a21917ec900af86072a8;p=external%2Fbinutils.git Avoid ubsan complaint in BFD I built gdb with ubsan and ran the test suite. One complaint was due to bfd_get_elf_phdrs passing NULL to memcpy. This patch avoids the complaint. bfd/ChangeLog 2018-07-23 Tom Tromey * elf.c (bfd_get_elf_phdrs): Don't call memcpy with size 0. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5b79a25..19fd9df 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +2018-07-23 Tom Tromey + + * elf.c (bfd_get_elf_phdrs): Don't call memcpy with size 0. + 2018-07-21 Eric Botcazou * elf32-arm.c (elf32_arm_final_link_relocate) : Small diff --git a/bfd/elf.c b/bfd/elf.c index 874629d..f721827 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -11629,8 +11629,9 @@ bfd_get_elf_phdrs (bfd *abfd, void *phdrs) } num_phdrs = elf_elfheader (abfd)->e_phnum; - memcpy (phdrs, elf_tdata (abfd)->phdr, - num_phdrs * sizeof (Elf_Internal_Phdr)); + if (num_phdrs != 0) + memcpy (phdrs, elf_tdata (abfd)->phdr, + num_phdrs * sizeof (Elf_Internal_Phdr)); return num_phdrs; }