Removes a cleanup from gcore.c
This removes a cleanup from gcore.c, replacing it with unique_xmalloc_ptr. Regression tested by the buildbot. ChangeLog 2017-11-26 Tom Tromey <tom@tromey.com> * gcore.c (write_gcore_file_1): Use gdb::unique_xmalloc_ptr.
This commit is contained in:
parent
8e2495f2f7
commit
44287fd890
@ -1,3 +1,7 @@
|
|||||||
|
2017-11-26 Tom Tromey <tom@tromey.com>
|
||||||
|
|
||||||
|
* gcore.c (write_gcore_file_1): Use gdb::unique_xmalloc_ptr.
|
||||||
|
|
||||||
2017-11-26 Ulrich Weigand <uweigand@de.ibm.com>
|
2017-11-26 Ulrich Weigand <uweigand@de.ibm.com>
|
||||||
|
|
||||||
* spu-tdep.c (spu_software_single_step): Access SPU_LSLR_REGNUM as
|
* spu-tdep.c (spu_software_single_step): Access SPU_LSLR_REGNUM as
|
||||||
|
15
gdb/gcore.c
15
gdb/gcore.c
@ -68,8 +68,7 @@ create_gcore_bfd (const char *filename)
|
|||||||
static void
|
static void
|
||||||
write_gcore_file_1 (bfd *obfd)
|
write_gcore_file_1 (bfd *obfd)
|
||||||
{
|
{
|
||||||
struct cleanup *cleanup;
|
gdb::unique_xmalloc_ptr<char> note_data;
|
||||||
void *note_data = NULL;
|
|
||||||
int note_size = 0;
|
int note_size = 0;
|
||||||
asection *note_sec = NULL;
|
asection *note_sec = NULL;
|
||||||
|
|
||||||
@ -78,11 +77,10 @@ write_gcore_file_1 (bfd *obfd)
|
|||||||
generation should be converted to gdbarch_make_corefile_notes; at that
|
generation should be converted to gdbarch_make_corefile_notes; at that
|
||||||
point, the target vector method can be removed. */
|
point, the target vector method can be removed. */
|
||||||
if (!gdbarch_make_corefile_notes_p (target_gdbarch ()))
|
if (!gdbarch_make_corefile_notes_p (target_gdbarch ()))
|
||||||
note_data = target_make_corefile_notes (obfd, ¬e_size);
|
note_data.reset (target_make_corefile_notes (obfd, ¬e_size));
|
||||||
else
|
else
|
||||||
note_data = gdbarch_make_corefile_notes (target_gdbarch (), obfd, ¬e_size);
|
note_data.reset (gdbarch_make_corefile_notes (target_gdbarch (), obfd,
|
||||||
|
¬e_size));
|
||||||
cleanup = make_cleanup (xfree, note_data);
|
|
||||||
|
|
||||||
if (note_data == NULL || note_size == 0)
|
if (note_data == NULL || note_size == 0)
|
||||||
error (_("Target does not support core file generation."));
|
error (_("Target does not support core file generation."));
|
||||||
@ -105,10 +103,9 @@ write_gcore_file_1 (bfd *obfd)
|
|||||||
error (_("gcore: failed to get corefile memory sections from target."));
|
error (_("gcore: failed to get corefile memory sections from target."));
|
||||||
|
|
||||||
/* Write out the contents of the note section. */
|
/* Write out the contents of the note section. */
|
||||||
if (!bfd_set_section_contents (obfd, note_sec, note_data, 0, note_size))
|
if (!bfd_set_section_contents (obfd, note_sec, note_data.get (), 0,
|
||||||
|
note_size))
|
||||||
warning (_("writing note section (%s)"), bfd_errmsg (bfd_get_error ()));
|
warning (_("writing note section (%s)"), bfd_errmsg (bfd_get_error ()));
|
||||||
|
|
||||||
do_cleanups (cleanup);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* write_gcore_file -- helper for gcore_command (exported).
|
/* write_gcore_file -- helper for gcore_command (exported).
|
||||||
|
Loading…
Reference in New Issue
Block a user