diff options
author | Lasse Collin <lasse.collin@tukaani.org> | 2016-06-16 22:46:02 +0300 |
---|---|---|
committer | Lasse Collin <lasse.collin@tukaani.org> | 2016-06-16 22:46:02 +0300 |
commit | 1b0ac0c53c761263e91e34195cb21dfdcfeac0bd (patch) | |
tree | ce65418e04510c96d0757a56fd4db710b0989ed3 /src | |
parent | Build: Fix = to += for xz_SOURCES in src/xz/Makefile.am. (diff) | |
download | xz-1b0ac0c53c761263e91e34195cb21dfdcfeac0bd.tar.xz |
xz: Silence warnings from -Wlogical-op.
Thanks to Evan Nemerson.
Diffstat (limited to 'src')
-rw-r--r-- | src/xz/file_io.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/xz/file_io.c b/src/xz/file_io.c index 69cf6326..2ca188bd 100644 --- a/src/xz/file_io.c +++ b/src/xz/file_io.c @@ -45,6 +45,14 @@ static bool warn_fchown; # define O_NOCTTY 0 #endif +// Using this macro to silence a warning from gcc -Wlogical-op. +#if EAGAIN == EWOULDBLOCK +# define IS_EAGAIN_OR_EWOULDBLOCK(e) ((e) == EAGAIN) +#else +# define IS_EAGAIN_OR_EWOULDBLOCK(e) \ + ((e) == EAGAIN || (e) == EWOULDBLOCK) +#endif + typedef enum { IO_WAIT_MORE, // Reading or writing is possible. @@ -1102,7 +1110,7 @@ io_read(file_pair *pair, io_buf *buf_union, size_t size) } #ifndef TUKLIB_DOSLIKE - if (errno == EAGAIN || errno == EWOULDBLOCK) { + if (IS_EAGAIN_OR_EWOULDBLOCK(errno)) { const io_wait_ret ret = io_wait(pair, mytime_get_flush_timeout(), true); @@ -1190,7 +1198,7 @@ io_write_buf(file_pair *pair, const uint8_t *buf, size_t size) } #ifndef TUKLIB_DOSLIKE - if (errno == EAGAIN || errno == EWOULDBLOCK) { + if (IS_EAGAIN_OR_EWOULDBLOCK(errno)) { if (io_wait(pair, -1, false) == IO_WAIT_MORE) continue; |