Another PE SEC_HAS_CONTENTS test
Alan Modra
amodra@gmail.com
Tue Feb 28 00:04:56 GMT 2023
I'd skipped this one before, thinking "obfd, that's the linker output
bfd so no need to test". Wrong, this is objcopy output.
* peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Test
SEC_HAS_CONTENTS before reading section.
diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c
index 43f3a83743c..d59a97f0d11 100644
--- a/bfd/peXXigen.c
+++ b/bfd/peXXigen.c
@@ -3041,7 +3041,8 @@ _bfd_XX_bfd_copy_private_bfd_data_common (bfd * ibfd, bfd * obfd)
return false;
}
- if (bfd_malloc_and_get_section (obfd, section, &data))
+ if ((section->flags & SEC_HAS_CONTENTS) != 0
+ && bfd_malloc_and_get_section (obfd, section, &data))
{
unsigned int i;
struct external_IMAGE_DEBUG_DIRECTORY *dd =
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list