mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-12-25 02:44:53 +01:00
Silence buildbot warnings about unused results
This ignores the results of the two writes in sigint handlers even harder than before. While my libc lacks the declarations that trigger these warnings, this can be tested by adding the following to notmuch.h: __attribute__((warn_unused_result)) ssize_t write(int fd, const void *buf, size_t count);
This commit is contained in:
parent
18947b95cd
commit
a9a9e374e2
3 changed files with 19 additions and 2 deletions
|
@ -46,6 +46,14 @@ getdelim (char **lineptr, size_t *n, int delimiter, FILE *fp);
|
|||
char* strcasestr(const char *haystack, const char *needle);
|
||||
#endif /* !HAVE_STRCASESTR */
|
||||
|
||||
/* Silence gcc warnings about unused results. These warnings exist
|
||||
* for a reason; any use of this needs to be justified. */
|
||||
#ifdef __GNUC__
|
||||
#define IGNORE_RESULT(x) ({ __typeof__(x) __z = (x); (void)(__z = __z); })
|
||||
#else /* !__GNUC__ */
|
||||
#define IGNORE_RESULT(x) x
|
||||
#endif /* __GNUC__ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -67,7 +67,11 @@ handle_sigint (unused (int sig))
|
|||
{
|
||||
static char msg[] = "Stopping... \n";
|
||||
|
||||
(void) write(2, msg, sizeof(msg)-1);
|
||||
/* This write is "opportunistic", so it's okay to ignore the
|
||||
* result. It is not required for correctness, and if it does
|
||||
* fail or produce a short write, we want to get out of the signal
|
||||
* handler as quickly as possible, not retry it. */
|
||||
IGNORE_RESULT (write (2, msg, sizeof(msg)-1));
|
||||
interrupted = 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -26,7 +26,12 @@ static void
|
|||
handle_sigint (unused (int sig))
|
||||
{
|
||||
static char msg[] = "Stopping... \n";
|
||||
(void) write(2, msg, sizeof(msg)-1);
|
||||
|
||||
/* This write is "opportunistic", so it's okay to ignore the
|
||||
* result. It is not required for correctness, and if it does
|
||||
* fail or produce a short write, we want to get out of the signal
|
||||
* handler as quickly as possible, not retry it. */
|
||||
IGNORE_RESULT (write (2, msg, sizeof(msg)-1));
|
||||
interrupted = 1;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue