aboutsummaryrefslogtreecommitdiff
path: root/gdb/ChangeLog
diff options
context:
space:
mode:
authorKevin Buettner <kevinb@redhat.com>2015-09-30 05:54:15 -0700
committerKevin Buettner <kevinb@redhat.com>2015-09-30 05:56:03 -0700
commitaca20ec47359776488863193660cf9fd2fe3cfe7 (patch)
tree758fb68b2a02815bb0488e41287c9635fcd632ea /gdb/ChangeLog
parent77ba2a67960d05991a3e3641049cac649ca04c96 (diff)
downloadgdb-aca20ec47359776488863193660cf9fd2fe3cfe7.zip
gdb-aca20ec47359776488863193660cf9fd2fe3cfe7.tar.gz
gdb-aca20ec47359776488863193660cf9fd2fe3cfe7.tar.bz2
infcmd.c: Don't attempt to record a NULL value after a finish command.
Architectures which use RETURN_VALUE_STRUCT_CONVENTION will have a NULL return value after executing a finish command. See get_return_value() in infcmd.c. This patch avoids an eventual SIGSEV (caused by attempting to derefrence a NULL pointer) by adding a suitable test to finish_command_fsm_should_stop(). I encountered this problem while testing msp430: (gdb) PASS: gdb.base/structs.exp: zed L<n> for finish; return 1 structs-tc finish Run till exit from #0 fun1 () at /ironwood1/sourceware-git/msp430-elf/../binutils-gdb/gdb/testsuite/gdb.base/structs.c:125 ERROR: Process no longer exists gdb/ChangeLog: * infcmd.c (finish_command_fsm_should_stop): Don't attempt to record a NULL value.
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r--gdb/ChangeLog5
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 667bf27..b6355e7 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2015-09-29 Kevin Buettner <kevinb@redhat.com>
+ * infcmd.c (finish_command_fsm_should_stop): Don't attempt to
+ record a NULL value.
+
+2015-09-29 Kevin Buettner <kevinb@redhat.com>
+
* msp430-tdep.c (msp430_push_dummy_call): Treat reference, struct,
and union arguments the same as pointer arguments when determining
size of argument.