From 63b4bf500020cf35cebfdce2d73f8e359ff495c2 Mon Sep 17 00:00:00 2001 From: emersion Date: Mon, 9 Jul 2018 22:54:30 +0100 Subject: Update for swaywm/wlroots#1126 --- swaybg/main.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'swaybg') diff --git a/swaybg/main.c b/swaybg/main.c index 5b6c378c..1796b245 100644 --- a/swaybg/main.c +++ b/swaybg/main.c @@ -48,7 +48,7 @@ struct swaybg_state { bool is_valid_color(const char *color) { int len = strlen(color); if (len != 7 || color[0] != '#') { - wlr_log(L_ERROR, "%s is not a valid color for swaybg. " + wlr_log(WLR_ERROR, "%s is not a valid color for swaybg. " "Color should be specified as #rrggbb (no alpha).", color); return false; } @@ -185,10 +185,10 @@ int main(int argc, const char **argv) { struct swaybg_args args = {0}; struct swaybg_state state = {0}; state.args = &args; - wlr_log_init(L_DEBUG, NULL); + wlr_log_init(WLR_DEBUG, NULL); if (argc != 4) { - wlr_log(L_ERROR, "Do not run this program manually. " + wlr_log(WLR_ERROR, "Do not run this program manually. " "See man 5 sway and look for output options."); return 1; } -- cgit v1.2.3 From c73a40555f41ad765c10ea5912525c56770e71d1 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. --- swaybar/render.c | 3 +++ swaybg/main.c | 3 +++ 2 files changed, 6 insertions(+) (limited to 'swaybg') diff --git a/swaybar/render.c b/swaybar/render.c index 2ebd338e..909b56f4 100644 --- a/swaybar/render.c +++ b/swaybar/render.c @@ -503,6 +503,9 @@ void render_frame(struct swaybar *bar, struct swaybar_output *output) { output->buffers, output->width * output->scale, output->height * output->scale); + if (!output->current_buffer) { + return; + } cairo_t *shm = output->current_buffer->cairo; cairo_save(shm); diff --git a/swaybg/main.c b/swaybg/main.c index 1796b245..f8e7e7ef 100644 --- a/swaybg/main.c +++ b/swaybg/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