From: Alan Modra Date: Fri, 17 Jan 2025 00:20:51 +0000 (+1030) Subject: cmdline_add_object_only_section leak X-Git-Tag: binutils-2_44~63 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0e4207c529e605fe4a17fe71b49ffb42576d0b83;p=thirdparty%2Fbinutils-gdb.git cmdline_add_object_only_section leak Free ofilename on error path. Don't bother testing "if (foo)" before "free (foo)". --- diff --git a/ld/ldlang.c b/ld/ldlang.c index 2e82eef61fe..74c0271973f 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -10778,8 +10778,7 @@ cmdline_add_object_only_section (bfd_byte *contents, size_t size) /* Must be freed after bfd_close (). */ free (isympp); - if (osympp) - free (osympp); + free (osympp); if (rename (ofilename, output_filename)) { @@ -10791,14 +10790,15 @@ cmdline_add_object_only_section (bfd_byte *contents, size_t size) return; loser: - if (isympp) - free (isympp); - if (osympp) - free (osympp); + free (isympp); + free (osympp); if (obfd) bfd_close (obfd); if (ofilename) - unlink (ofilename); + { + unlink (ofilename); + free (ofilename); + } einfo (_("%P%F: failed to add object-only section: %s\n"), err); }