aboutsummaryrefslogtreecommitdiffstats
path: root/swaybar/i3bar.c
diff options
context:
space:
mode:
authorLibravatar Drew DeVault <sir@cmpwn.com>2018-04-09 08:07:54 -0400
committerLibravatar Drew DeVault <sir@cmpwn.com>2018-04-09 08:07:54 -0400
commitac3be29517ead2188e43ab1bdb8de31f17633c94 (patch)
treea5c038206a9244cb7098f3199c834cba2570b965 /swaybar/i3bar.c
parentFix buffer issues in swaybar status line. (diff)
downloadsway-ac3be29517ead2188e43ab1bdb8de31f17633c94.tar.gz
sway-ac3be29517ead2188e43ab1bdb8de31f17633c94.tar.zst
sway-ac3be29517ead2188e43ab1bdb8de31f17633c94.zip
Fix some more bugs
Diffstat (limited to 'swaybar/i3bar.c')
-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) {
113 char *cur = &state->buffer[state->buffer_index]; 113 char *cur = &state->buffer[state->buffer_index];
114 ssize_t n = read(status->read_fd, cur, 114 ssize_t n = read(status->read_fd, cur,
115 state->buffer_size - state->buffer_index); 115 state->buffer_size - state->buffer_index);
116 if (n == 0) { 116 if (n == -1) {
117 return 0; 117 status_error(status, "[failed to read from status command]");
118 return false;
118 } 119 }
119 120
120 if (n == (ssize_t)(state->buffer_size - state->buffer_index)) { 121 if (n == (ssize_t)(state->buffer_size - state->buffer_index)) {
@@ -123,7 +124,7 @@ bool i3bar_handle_readable(struct status_line *status) {
123 if (!new_buffer) { 124 if (!new_buffer) {
124 free(state->buffer); 125 free(state->buffer);
125 status_error(status, "[failed to allocate buffer]"); 126 status_error(status, "[failed to allocate buffer]");
126 return -1; 127 return true;
127 } 128 }
128 state->current_node += new_buffer - state->buffer; 129 state->current_node += new_buffer - state->buffer;
129 cur += new_buffer - state->buffer; 130 cur += new_buffer - state->buffer;