asan: Null-dereference in _bfd_xcoff_copy_private_bfd_data

sec->output_section will be NULL when objcopy removes sections.

	* coff-rs6000.c (_bfd_xcoff_copy_private_bfd_data): Protect against
	objcopy removing sections.
This commit is contained in:
Alan Modra 2022-01-01 13:52:38 +10:30
parent aebb3d543d
commit ad3d14c47e

View File

@ -386,7 +386,7 @@ _bfd_xcoff_copy_private_bfd_data (bfd *ibfd, bfd *obfd)
else
{
sec = coff_section_from_bfd_index (ibfd, ix->sntoc);
if (sec == NULL)
if (sec == NULL || sec->output_section == NULL)
ox->sntoc = 0;
else
ox->sntoc = sec->output_section->target_index;
@ -396,7 +396,7 @@ _bfd_xcoff_copy_private_bfd_data (bfd *ibfd, bfd *obfd)
else
{
sec = coff_section_from_bfd_index (ibfd, ix->snentry);
if (sec == NULL)
if (sec == NULL || sec->output_section == NULL)
ox->snentry = 0;
else
ox->snentry = sec->output_section->target_index;