diff options
author | hwangcc <hwangcc@csie.nctu.edu.tw> | 2015-03-24 20:57:06 +0800 |
---|---|---|
committer | hwangcc <hwangcc@csie.nctu.edu.tw> | 2015-03-29 10:22:34 +0800 |
commit | 42515308e72e4ea6f6b49508c1ba286263dded64 (patch) | |
tree | 0d45efcea26bd355a3cd808462850723bd99a193 /i3-dump-log | |
parent | 822cd3bf1b95a61667bfa186ff2093ecd317a3a6 (diff) | |
download | i3-42515308e72e4ea6f6b49508c1ba286263dded64.tar.gz i3-42515308e72e4ea6f6b49508c1ba286263dded64.zip |
Add a safe wrapper for write and fix some warnings
1. Add a function writeall and make swrite wrap that function. Use either writeall or swrite, depending on whether we want to exit on errors or not.
2. Fix warnings when compiling with a higher optimisation level.
(CFLAGS ?= -pipe -O3 -march=native -mtune=native -freorder-blocks-and-partition)
Signed-off-by: hwangcc <hwangcc@csie.nctu.edu.tw>
Diffstat (limited to 'i3-dump-log')
-rw-r--r-- | i3-dump-log/main.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/i3-dump-log/main.c b/i3-dump-log/main.c index 86b39338..1b0d593c 100644 --- a/i3-dump-log/main.c +++ b/i3-dump-log/main.c @@ -43,8 +43,7 @@ static int check_for_wrap(void) { * of the log. */ wrap_count = header->wrap_count; const int len = (logbuffer + header->offset_last_wrap) - walk; - if (write(STDOUT_FILENO, walk, len) != len) - err(EXIT_FAILURE, "write()"); + swrite(STDOUT_FILENO, walk, len); walk = logbuffer + sizeof(i3_shmlog_header); return 1; } @@ -52,12 +51,8 @@ static int check_for_wrap(void) { static void print_till_end(void) { check_for_wrap(); const int len = (logbuffer + header->offset_next_write) - walk; - const int n = write(STDOUT_FILENO, walk, len); - if (len != n) - err(EXIT_FAILURE, "write()"); - if (n > 0) { - walk += n; - } + swrite(STDOUT_FILENO, walk, len); + walk += len; } int main(int argc, char *argv[]) { |