This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC/RFA] dangling bfd pointer in archive cache...


On Wed, Oct 03, 2012 at 06:50:49PM -0400, Hans-Peter Nilsson wrote:
> On Wed, 3 Oct 2012, Alan Modra wrote:
> > On Tue, Oct 02, 2012 at 07:14:06AM -0700, Joel Brobecker wrote:
> > >         * opncls.c (bfd_close); Add call to _bfd_archive_close_and_cleanup.
> >
> > No, we should already be calling _bfd_archive_close_and_cleanup via
> >
> > > --- a/bfd/opncls.c
> > > +++ b/bfd/opncls.c
> > > @@ -719,6 +719,17 @@ bfd_close (bfd *abfd)
> > >    if (! BFD_SEND (abfd, _close_and_cleanup, (abfd)))
> >
> > this call.  The problem is in coff-rs6000.c (and coff64-rs6000.c)
> > where the bfd_target vector just uses bfd_true for close_and_cleanup.
> 
> Could there be a similar problem for a.out as well, that
> _bfd_archive_close_and_cleanup isn't called?

Yes, likely.

bfd/aout-target.h:#ifndef MY_close_and_cleanup
bfd/aout-target.h:#define MY_close_and_cleanup MY_bfd_free_cached_info

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]