From: H.J. Lu Date: Fri, 24 Dec 2021 23:42:43 +0000 (-0800) Subject: bfd: Don't check non-thin archive member file size X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c17eb63b7f69329307ba5f225364a993cfb45dca;p=binutils-gdb.git bfd: Don't check non-thin archive member file size There is no need to check member file size for thin archive member. * bfdio.c (bfd_bread): Don't check non-thin archive member file size. --- diff --git a/bfd/bfdio.c b/bfd/bfdio.c index 463b3879c52..9aa15c1ffa4 100644 --- a/bfd/bfdio.c +++ b/bfd/bfdio.c @@ -231,9 +231,11 @@ bfd_bread (void *ptr, bfd_size_type size, bfd *abfd) } offset += abfd->origin; - /* If this is an archive element, don't read past the end of + /* If this is a non-thin archive element, don't read past the end of this element. */ - if (element_bfd->arelt_data != NULL) + if (element_bfd->arelt_data != NULL + && element_bfd->my_archive != NULL + && !bfd_is_thin_archive (element_bfd->my_archive)) { bfd_size_type maxbytes = arelt_size (element_bfd);