aboutsummaryrefslogtreecommitdiff
path: root/swaybar
diff options
context:
space:
mode:
Diffstat (limited to 'swaybar')
-rw-r--r--swaybar/i3bar.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/swaybar/i3bar.c b/swaybar/i3bar.c
index 6f67ba3a..923ad755 100644
--- a/swaybar/i3bar.c
+++ b/swaybar/i3bar.c
@@ -113,8 +113,9 @@ bool i3bar_handle_readable(struct status_line *status) {
char *cur = &state->buffer[state->buffer_index];
ssize_t n = read(status->read_fd, cur,
state->buffer_size - state->buffer_index);
- if (n == 0) {
- return 0;
+ if (n == -1) {
+ status_error(status, "[failed to read from status command]");
+ return false;
}
if (n == (ssize_t)(state->buffer_size - state->buffer_index)) {
@@ -123,7 +124,7 @@ bool i3bar_handle_readable(struct status_line *status) {
if (!new_buffer) {
free(state->buffer);
status_error(status, "[failed to allocate buffer]");
- return -1;
+ return true;
}
state->current_node += new_buffer - state->buffer;
cur += new_buffer - state->buffer;