Make "cbfd" a gdb_bfd_ref_ptr

This changes program_space::cbfd to be a gdb_bfd_ref_ptr.  This makes
it somewhat less error-prone to use, because now it manages the
reference counting automatically.

Tested by the buildbot.

2018-05-16  Tom Tromey  <tom@tromey.com>

	* gdbcore.h (core_bfd): Redefine.
	* corelow.c (core_target::close): Update.
	(core_target_open): Update.
	* progspace.h (struct program_space) <cbfd>: Now a
	gdb_bfd_ref_ptr.
This commit is contained in:
Tom Tromey 2018-05-11 12:36:19 -06:00
parent 921222e2e8
commit 06333fea76
4 changed files with 13 additions and 5 deletions

View file

@ -23,6 +23,7 @@
#include "target.h"
#include "vec.h"
#include "gdb_bfd.h"
#include "gdb_vecs.h"
#include "registry.h"
@ -158,7 +159,7 @@ struct program_space
char *pspace_exec_filename = NULL;
/* Binary file diddling handle for the core file. */
bfd *cbfd = NULL;
gdb_bfd_ref_ptr cbfd;
/* The address space attached to this program space. More than one
program space may be bound to the same address space. In the