This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] linux_spu_make_corefile_notes: return note_data instead of nullptr
- From: Simon Marchi <simark at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 16 Apr 2018 20:49:06 -0000
- Subject: [binutils-gdb] linux_spu_make_corefile_notes: return note_data instead of nullptr
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=07d28c777757148d13e429c4463da52cbb50d297
commit 07d28c777757148d13e429c4463da52cbb50d297
Author: Simon Marchi <simon.marchi@ericsson.com>
Date: Mon Apr 16 16:47:06 2018 -0400
linux_spu_make_corefile_notes: return note_data instead of nullptr
Since commit
9018be2 ("Make target_read_alloc & al return vectors")
the test gdb.threads/gcore-stale-thread.exp test results in UNSUPPORTED:
UNSUPPORTED: gdb.threads/gcore-stale-thread.exp: save a corefile
The problem is that the linux_spu_make_corefile_notes started returning
nullptr when reading TARGET_OBJECT_SPU fails. The previous (and proper)
behaviour is to return the note_data received as a parameter, so that
other functions may continue to append to this buffer.
With this patch, the test goes back to PASS.
gdb/ChangeLog:
* linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
instead of nullptr.
Diff:
---
gdb/ChangeLog | 5 +++++
gdb/linux-tdep.c | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ad7b993..3993491 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2018-04-16 Simon Marchi <simon.marchi@ericsson.com>
+
+ * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
+ instead of nullptr.
+
2018-04-16 Pedro Alves <palves@redhat.com>
* MAINTAINERS (sh): Remove.
diff --git a/gdb/linux-tdep.c b/gdb/linux-tdep.c
index 552a2a4..24bfd74 100644
--- a/gdb/linux-tdep.c
+++ b/gdb/linux-tdep.c
@@ -1426,7 +1426,7 @@ linux_spu_make_corefile_notes (bfd *obfd, char *note_data, int *note_size)
spu_ids = target_read_alloc (¤t_target, TARGET_OBJECT_SPU, NULL);
if (!spu_ids)
- return nullptr;
+ return note_data;
/* Generate corefile notes for each SPU file. */
for (size_t i = 0; i < spu_ids->size (); i += 4)