diff options
author | Andreas Arnez <arnez@linux.vnet.ibm.com> | 2016-03-17 09:58:56 +0100 |
---|---|---|
committer | Andreas Arnez <arnez@linux.vnet.ibm.com> | 2016-03-17 09:58:56 +0100 |
commit | afdab9165435e17169b4984eeb29ea751319aa74 (patch) | |
tree | 89fddbbf91d3a3d7a803e69ba9fcd6054d82ab5c | |
parent | f3f8e58e933b923aa5d447b32824e0fe121ecf79 (diff) | |
download | fsf-binutils-gdb-afdab9165435e17169b4984eeb29ea751319aa74.zip fsf-binutils-gdb-afdab9165435e17169b4984eeb29ea751319aa74.tar.gz fsf-binutils-gdb-afdab9165435e17169b4984eeb29ea751319aa74.tar.bz2 |
linux-record: Fix bad fall-through for pipe/pipe2
This patch added handling for some syscalls to linux-record.c:
https://sourceware.org/ml/gdb-patches/2015-10/msg00452.html
But for both `pipe' and `pipe2' the patch lacks a statement after an
`if', such that the following `break' is interpreted as the `if'-body
instead.
This adds the missing (return-) statements for the conditionals.
gdb/ChangeLog:
* linux-record.c (record_linux_system_call): Add missing return
statements to handling of pipe and pipe2 syscalls.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/linux-record.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a9952cb..bc1b2f5 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2016-03-17 Andreas Arnez <arnez@linux.vnet.ibm.com> + + * linux-record.c (record_linux_system_call): Add missing return + statements to handling of pipe and pipe2 syscalls. + 2016-03-16 Doug Evans <dje@google.com> * xml-tdesc.c (tdesc_start_enum): Fix c++ build. diff --git a/gdb/linux-record.c b/gdb/linux-record.c index a40845a..2e86936 100644 --- a/gdb/linux-record.c +++ b/gdb/linux-record.c @@ -354,6 +354,7 @@ record_linux_system_call (enum gdb_syscall syscall, regcache_raw_read_unsigned (regcache, tdep->arg1, &tmpulongest); if (record_full_arch_list_add_mem ((CORE_ADDR) tmpulongest, tdep->size_int * 2)) + return -1; break; case gdb_sys_times: @@ -2312,6 +2313,7 @@ Do you want to stop the program?"), regcache_raw_read_unsigned (regcache, tdep->arg1, &tmpulongest); if (record_full_arch_list_add_mem ((CORE_ADDR) tmpulongest, tdep->size_int * 2)) + return -1; break; case gdb_sys_inotify_init1: |