diff options
author | Simon Ser <[email protected]> | 2021-12-21 12:12:54 +0100 |
---|---|---|
committer | Simon Ser <[email protected]> | 2021-12-23 12:16:37 +0100 |
commit | 5d16d15a95bfaa1d55255b108e4c86337b8900b5 (patch) | |
tree | 9d26ec4e58d9c6fe38ceaac08e05b9dc6d0310f2 /swaybar | |
parent | 9ecbfe366596f627e843886d94e47097e19df5d5 (diff) |
swaybar: fix errno handling in status_handle_readable
If getline fails once, it was not reset before the next getline
call. errno is only overwritten by getline on error.
(cherry picked from commit 414950bbc8e833362a689cc11720855e8edd1323)
Diffstat (limited to 'swaybar')
-rw-r--r-- | swaybar/status_line.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/swaybar/status_line.c b/swaybar/status_line.c index a97f3525..2e9bb7f1 100644 --- a/swaybar/status_line.c +++ b/swaybar/status_line.c @@ -117,11 +117,11 @@ bool status_handle_readable(struct status_line *status) { status->text = status->buffer; // intentional fall-through case PROTOCOL_TEXT: - errno = 0; while (true) { if (status->buffer[read_bytes - 1] == '\n') { status->buffer[read_bytes - 1] = '\0'; } + errno = 0; read_bytes = getline(&status->buffer, &status->buffer_size, status->read); if (errno == EAGAIN) { |