gas obj-elf.c memory leaks
Alan Modra
amodra@gmail.com
Wed Jan 1 12:37:52 GMT 2025
* config/obj-elf.c (obj_elf_section): Use notes_memdup for
linked_to_symbol_name.
(obj_elf_find_and_add_versioned_name): Use notes_alloc for
versioned_name.
diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c
index e4443e25040..c4af01808b6 100644
--- a/gas/config/obj-elf.c
+++ b/gas/config/obj-elf.c
@@ -1370,7 +1370,8 @@ obj_elf_section (int push)
(void) restore_line_pointer (c);
length = input_line_pointer - beg;
if (length)
- match.linked_to_symbol_name = xmemdup0 (beg, length);
+ match.linked_to_symbol_name
+ = notes_memdup (beg, length, length + 1);
}
}
else if ((attr & SHF_LINK_ORDER) != 0 && inherit
@@ -1811,9 +1812,8 @@ obj_elf_find_and_add_versioned_name (const char *version_name,
return versioned_name;
/* Add this versioned name to the head of the list, */
- versioned_name = (struct elf_versioned_name_list *)
- xmalloc (sizeof (*versioned_name));
- versioned_name->name = xstrdup (version_name);
+ versioned_name = notes_alloc (sizeof (*versioned_name));
+ versioned_name->name = notes_strdup (version_name);
versioned_name->next = sy_obj->versioned_name;
sy_obj->versioned_name = versioned_name;
--
Alan Modra
More information about the Binutils
mailing list