sway

i3-compatible Wayland compositor
git clone https://git.awy.one/sway
Log | Files | Refs | README | LICENSE

commit 2ebb6073b7eb052984008110e3df4469d2d9c596
parent 9a3fb33e33b2503809d9d3a1b0d10c21bc112a80
Author: Scott Anderson <scott@anderso.nz>
Date:   Sat, 21 Apr 2018 14:39:46 +1200

Remove status command event on error

This prevents very high CPU load when the status command dies,
and poll continuously awoken with POLLHUP.

Diffstat:
Mswaybar/bar.c | 6+++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/swaybar/bar.c b/swaybar/bar.c @@ -418,7 +418,11 @@ static void ipc_in(int fd, short mask, void *_bar) { static void status_in(int fd, short mask, void *_bar) { struct swaybar *bar = (struct swaybar *)_bar; - if (status_handle_readable(bar->status)) { + if (mask & (POLLHUP | POLLERR)) { + status_error(bar->status, "[error reading from status command]"); + render_all_frames(bar); + remove_event(fd); + } else if (status_handle_readable(bar->status)) { render_all_frames(bar); } }