From: Alan Modra Date: Tue, 17 Jan 2006 13:00:16 +0000 (+0000) Subject: * elf64-ppc.c (ppc64_elf_gc_mark_hook): Don't hang forever in loop. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b56cbdb94b9f12e392e093d736f3f151be7a264b;p=binutils-gdb.git * elf64-ppc.c (ppc64_elf_gc_mark_hook): Don't hang forever in loop. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 7f3da733818..eb9e0d110bf 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +2006-01-17 Alan Modra + + * elf64-ppc.c (ppc64_elf_gc_mark_hook): Don't hang forever in loop. + 2006-01-17 Nick Clifton PR binutils/2159 diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index a2cfaacdb2e..501d4b7f87d 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -4958,7 +4958,7 @@ ppc64_elf_gc_mark_hook (asection *sec, struct bfd_sym_chain *sym = info->gc_sym_list; info->gc_sym_list = NULL; - do + for (; sym != NULL; sym = sym->next) { struct ppc_link_hash_entry *eh; @@ -4988,10 +4988,7 @@ ppc64_elf_gc_mark_hook (asection *sec, rsec = eh->elf.root.u.def.section; if (!rsec->gc_mark) _bfd_elf_gc_mark (info, rsec, ppc64_elf_gc_mark_hook); - - sym = sym->next; } - while (sym != NULL); } /* Syms return NULL if we're marking .opd, so we avoid marking all