From e4df675840fdef182b5589a81898c7b59ac00aae Mon Sep 17 00:00:00 2001 From: Rouven Czerwinski Date: Sun, 28 Oct 2018 10:39:26 +0100 Subject: [PATCH] output: initialize layers and signal before using functions The previous pull request #2993 tried to fix this by moving the function which used the layers after the initilization. Since this initialization is done unconditionally only depending on the struct definition, move the layer initialization to the beginning of the function. Also move the signal initialization of the destroy event. Fixes #2992 --- sway/tree/output.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sway/tree/output.c b/sway/tree/output.c index e5794b8a6..632501e14 100644 --- a/sway/tree/output.c +++ b/sway/tree/output.c @@ -65,6 +65,12 @@ void output_enable(struct sway_output *output, struct output_config *oc) { return; } struct wlr_output *wlr_output = output->wlr_output; + size_t len = sizeof(output->layers) / sizeof(output->layers[0]); + for (size_t i = 0; i < len; ++i) { + wl_list_init(&output->layers[i]); + } + wl_signal_init(&output->events.destroy); + output->enabled = true; apply_output_config(oc, output); list_add(root->outputs, output); @@ -92,12 +98,6 @@ void output_enable(struct sway_output *output, struct output_config *oc) { ipc_event_workspace(NULL, ws, "init"); } - size_t len = sizeof(output->layers) / sizeof(output->layers[0]); - for (size_t i = 0; i < len; ++i) { - wl_list_init(&output->layers[i]); - } - wl_signal_init(&output->events.destroy); - input_manager_configure_xcursor(); wl_signal_add(&wlr_output->events.mode, &output->mode);