From be10fb28cf8d2ed96e26c6822afaf085285fe831 Mon Sep 17 00:00:00 2001 From: minus Date: Sat, 14 Jul 2018 00:01:43 +0200 Subject: swaybar/bg: Fix crash on DPMS off When turning off displays via DPMS, swaybar and swaybg still tried to render, but did not get a valid buffer, causing them to crash. --- main.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'main.c') diff --git a/main.c b/main.c index 1796b24..f8e7e7e 100644 --- a/main.c +++ b/main.c @@ -68,6 +68,9 @@ static void render_frame(struct swaybg_state *state) { buffer_height = state->height * state->scale; state->current_buffer = get_next_buffer(state->shm, state->buffers, buffer_width, buffer_height); + if (!state->current_buffer) { + return; + } cairo_t *cairo = state->current_buffer->cairo; if (state->args->mode == BACKGROUND_MODE_SOLID_COLOR) { cairo_set_source_u32(cairo, state->context.color); -- cgit v1.2.3