diff options
author | Paul Fertser <fercerpav@gmail.com> | 2013-07-08 10:10:19 +0400 |
---|---|---|
committer | Spencer Oliver <spen@spen-soft.co.uk> | 2013-07-15 09:54:44 +0000 |
commit | 2d146a93217239b0f869aea5c6cae57a27db6744 (patch) | |
tree | f9871af1f0ba47fc8c658c43f982789b3ec0f67e /src | |
parent | 80d01ca975b3e00e9aba0089a4d0a5c7d8e3f2e0 (diff) |
oocd_trace: fix warnings
gcc (Gentoo Hardened 4.6.3 p1.13) produces a warning about the variable
assigned but not used. write() can sometimes write less than the specified
count so it's marked with warn_unused_result in the system headers and its
return value can't be ignored. The most correct solution would be to have a
loop writing the buffer until all bytes are written or an error is
returned but here it's impractical.
Change-Id: I75f7482e2b26fe0e6d70d34947518d3a8f0afe5c
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Reviewed-on: http://openocd.zylin.com/1490
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
Diffstat (limited to 'src')
-rw-r--r-- | src/target/oocd_trace.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/target/oocd_trace.c b/src/target/oocd_trace.c index 2969cc1e..e723efe0 100644 --- a/src/target/oocd_trace.c +++ b/src/target/oocd_trace.c @@ -38,6 +38,8 @@ static int oocd_trace_read_reg(struct oocd_trace *oocd_trace, int reg, uint32_t cmd = 0x10 | (reg & 0x7); bytes_written = write(oocd_trace->tty_fd, &cmd, 1); + if (bytes_written < 1) + return ERROR_FAIL; bytes_to_read = 4; while (bytes_to_read > 0) { @@ -62,6 +64,9 @@ static int oocd_trace_write_reg(struct oocd_trace *oocd_trace, int reg, uint32_t data[4] = (value & 0xff000000) >> 24; bytes_written = write(oocd_trace->tty_fd, data, 5); + if (bytes_written < 5) + return ERROR_FAIL; + LOG_DEBUG("reg #%i: 0x%8.8x", reg, value); return ERROR_OK; @@ -78,6 +83,8 @@ static int oocd_trace_read_memory(struct oocd_trace *oocd_trace, uint8_t *data, cmd = 0x20; bytes_written = write(oocd_trace->tty_fd, &cmd, 1); + if (bytes_written < 1) + return ERROR_FAIL; bytes_to_read = size * 16; while (bytes_to_read > 0) { @@ -358,6 +365,8 @@ COMMAND_HANDLER(handle_oocd_trace_resync_command) cmd_array[0] = 0xf0; bytes_written = write(oocd_trace->tty_fd, cmd_array, 1); + if (bytes_written < 1) + return ERROR_FAIL; command_print(CMD_CTX, "requesting traceclock resync"); LOG_DEBUG("resyncing traceclk pll"); |