From: Tristan Gingold Date: Wed, 18 Nov 2009 14:10:47 +0000 (+0000) Subject: 2009-11-18 Tristan Gingold X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ab7e10a0c4f73abe3e26911214b7772e77466f6c;p=binutils-gdb.git 2009-11-18 Tristan Gingold * machoread.c (macho_oso_symfile): Fix typo. Add comments. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f966e9d355e..3d98d1bc054 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2009-11-18 Tristan Gingold + + * machoread.c (macho_oso_symfile): Fix typo. Add comments. + 2009-11-17 Jan Kratochvil * dbxread.c (set_namestring): Remove cast to unsigned. Check N_STRX diff --git a/gdb/machoread.c b/gdb/machoread.c index ac7063dd0d3..ebd90c61c8d 100644 --- a/gdb/machoread.c +++ b/gdb/machoread.c @@ -429,6 +429,7 @@ macho_oso_symfile (struct objfile *main_objfile) const char *member_name = member_bfd->filename; int member_len = strlen (member_name); + /* If this member is referenced, add it as a symfile. */ for (ix2 = ix; ix2 < last_ix; ix2++) { oso2 = VEC_index (oso_el, vec, ix2); @@ -447,7 +448,9 @@ macho_oso_symfile (struct objfile *main_objfile) prev = member_bfd; member_bfd = bfd_openr_next_archived_file (archive_bfd, member_bfd); - if (ix2 < last_ix) + + /* Free previous member if not referenced by an oso. */ + if (ix2 >= last_ix) bfd_close (prev); } for (ix2 = ix; ix2 < last_ix; ix2++)