aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2009-11-18 14:10:47 +0000
committerTristan Gingold <gingold@adacore.com>2009-11-18 14:10:47 +0000
commitab7e10a0c4f73abe3e26911214b7772e77466f6c (patch)
treece29545ee6794c1b00d609f674eecb2c882c5185
parent2d0f3896005097776f6bd807c7df97bbb6c99dd9 (diff)
downloadgdb-ab7e10a0c4f73abe3e26911214b7772e77466f6c.zip
gdb-ab7e10a0c4f73abe3e26911214b7772e77466f6c.tar.gz
gdb-ab7e10a0c4f73abe3e26911214b7772e77466f6c.tar.bz2
2009-11-18 Tristan Gingold <gingold@adacore.com>
* machoread.c (macho_oso_symfile): Fix typo. Add comments.
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/machoread.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f966e9d..3d98d1b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-18 Tristan Gingold <gingold@adacore.com>
+
+ * machoread.c (macho_oso_symfile): Fix typo. Add comments.
+
2009-11-17 Jan Kratochvil <jan.kratochvil@redhat.com>
* dbxread.c (set_namestring): Remove cast to unsigned. Check N_STRX
diff --git a/gdb/machoread.c b/gdb/machoread.c
index ac7063d..ebd90c6 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++)