From f87031947e2102e0530ecd6dba06c6a9c488cd1a Mon Sep 17 00:00:00 2001 From: "H.J. Lu" <hjl.tools@gmail.com> Date: Sat, 20 Jun 2009 13:13:11 +0000 Subject: [PATCH] 2009-06-19 H.J. Lu <hongjiu.lu@intel.com> * elflink.c (elf_link_add_object_symbols): Avoid warning from -Wjump-misses-init in gcc 4.5.0. --- bfd/ChangeLog | 5 +++++ bfd/elflink.c | 12 ++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8931e757b2f..f01de47a797 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2009-06-19 H.J. Lu <hongjiu.lu@intel.com> + + * elflink.c (elf_link_add_object_symbols): Avoid warning + from -Wjump-misses-init in gcc 4.5.0. + 2009-06-19 H.J. Lu <hongjiu.lu@intel.com> * elf32-i386.c (elf_i386_check_relocs): Properly check local diff --git a/bfd/elflink.c b/bfd/elflink.c index 2366dd40478..9932186de96 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -3549,7 +3549,11 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info) unsigned long shlink; if (!bfd_malloc_and_get_section (abfd, s, &dynbuf)) - goto error_free_dyn; + { +error_free_dyn: + free (dynbuf); + goto error_return; + } elfsec = _bfd_elf_section_from_bfd_section (abfd, s); if (elfsec == SHN_BAD) @@ -3633,11 +3637,7 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info) amt = strlen (fnm) + 1; anm = bfd_alloc (abfd, amt); if (anm == NULL) - { - error_free_dyn: - free (dynbuf); - goto error_return; - } + goto error_free_dyn; memcpy (anm, fnm, amt); n->name = anm; n->by = abfd; -- GitLab