diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9de0e235dc..00ac68ae32 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2021-02-22 Tom Tromey + + * solib-svr4.c (enable_break): Update. + * bfd-target.c (class target_bfd) : Change parameter + type. + (target_bfd_reopen): Change parameter type. + * bfd-target.h (target_bfd_reopen): Change parameter type. + 2021-02-22 Simon Marchi * thread.c (add_thread_silent): Add assert. diff --git a/gdb/bfd-target.c b/gdb/bfd-target.c index 90d247a981..689dbb19e2 100644 --- a/gdb/bfd-target.c +++ b/gdb/bfd-target.c @@ -34,7 +34,7 @@ static const target_info target_bfd_target_info = { class target_bfd : public target_ops { public: - explicit target_bfd (struct bfd *bfd); + explicit target_bfd (const gdb_bfd_ref_ptr &bfd); const target_info &info () const override { return target_bfd_target_info; } @@ -88,14 +88,14 @@ target_bfd::get_section_table () return &m_table; } -target_bfd::target_bfd (struct bfd *abfd) - : m_bfd (gdb_bfd_ref_ptr::new_reference (abfd)), - m_table (build_section_table (abfd)) +target_bfd::target_bfd (const gdb_bfd_ref_ptr &abfd) + : m_bfd (abfd), + m_table (build_section_table (abfd.get ())) { } target_ops * -target_bfd_reopen (struct bfd *abfd) +target_bfd_reopen (const gdb_bfd_ref_ptr &abfd) { return new target_bfd (abfd); } diff --git a/gdb/bfd-target.h b/gdb/bfd-target.h index 199ada8c73..3d37b5fca9 100644 --- a/gdb/bfd-target.h +++ b/gdb/bfd-target.h @@ -20,12 +20,11 @@ #ifndef BFD_TARGET_H #define BFD_TARGET_H -struct bfd; +#include "gdb_bfd.h" + struct target_ops; -/* Given an existing BFD, re-open it as a "struct target_ops". This - acquires a new reference to the BFD. This reference will be - released when the target is closed. */ -struct target_ops *target_bfd_reopen (struct bfd *bfd); +/* Given an existing BFD, re-open it as a "struct target_ops". */ +struct target_ops *target_bfd_reopen (const gdb_bfd_ref_ptr &bfd); #endif diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c index 0416faa17c..5d0d380308 100644 --- a/gdb/solib-svr4.c +++ b/gdb/solib-svr4.c @@ -2333,9 +2333,8 @@ enable_break (struct svr4_info *info, int from_tty) goto bkpt_at_symbol; /* Now convert the TMP_BFD into a target. That way target, as - well as BFD operations can be used. target_bfd_reopen - acquires its own reference. */ - tmp_bfd_target = target_bfd_reopen (tmp_bfd.get ()); + well as BFD operations can be used. */ + tmp_bfd_target = target_bfd_reopen (tmp_bfd); /* On a running target, we can get the dynamic linker's base address from the shared library table. */