X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=bfd%2Fcache.c;h=b76044a267b369146647c7dacf221673d325bcd0;hb=695344c018c8e462280c47a644df02ea472b0a4e;hp=17bf7ea9d595328376be7fc15deea7eea0f5feab;hpb=6f2750feaf2827ef8a1a0a5b2f90c1e9a6cabbd1;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/cache.c b/bfd/cache.c index 17bf7ea9d5..b76044a267 100644 --- a/bfd/cache.c +++ b/bfd/cache.c @@ -241,7 +241,8 @@ bfd_cache_lookup_worker (bfd *abfd, enum cache_flag flag) if ((abfd->flags & BFD_IN_MEMORY) != 0) abort (); - while (abfd->my_archive) + while (abfd->my_archive != NULL + && !bfd_is_thin_archive (abfd->my_archive)) abfd = abfd->my_archive; if (abfd->iostream != NULL) @@ -267,8 +268,9 @@ bfd_cache_lookup_worker (bfd *abfd, enum cache_flag flag) else return (FILE *) abfd->iostream; - (*_bfd_error_handler) (_("reopening %B: %s\n"), - orig_bfd, bfd_errmsg (bfd_get_error ())); + /* xgettext:c-format */ + _bfd_error_handler (_("reopening %B: %s\n"), + orig_bfd, bfd_errmsg (bfd_get_error ())); return NULL; } @@ -466,7 +468,8 @@ cache_bmmap (struct bfd *abfd ATTRIBUTE_UNUSED, pagesize_m1 = getpagesize () - 1; /* Handle archive members. */ - if (abfd->my_archive != NULL) + if (abfd->my_archive != NULL + && !bfd_is_thin_archive (abfd->my_archive)) offset += abfd->origin; /* Align. */ @@ -566,7 +569,7 @@ RETURNS */ bfd_boolean -bfd_cache_close_all () +bfd_cache_close_all (void) { bfd_boolean ret = TRUE;