From c17eb63b7f69329307ba5f225364a993cfb45dca Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Fri, 24 Dec 2021 15:42:43 -0800 Subject: [PATCH] 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. --- bfd/bfdio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 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); -- 2.30.2