From 291431c14f5e5c33c14a6fff4284c3de03ff292c Mon Sep 17 00:00:00 2001 From: Alexander Orzechowski Date: Sun, 8 Oct 2023 11:16:39 -0400 Subject: scene/output_layout: Add assert for duplicate output insertion Ensure that the output was not added multiple times to the scene output layout. --- types/scene/output_layout.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/types/scene/output_layout.c b/types/scene/output_layout.c index ffe0d3ec..42683f88 100644 --- a/types/scene/output_layout.c +++ b/types/scene/output_layout.c @@ -73,7 +73,12 @@ void wlr_scene_output_layout_add_output(struct wlr_scene_output_layout *sol, struct wlr_output_layout_output *lo, struct wlr_scene_output *so) { assert(lo->output == so->output); - struct wlr_scene_output_layout_output *solo = calloc(1, sizeof(*solo)); + struct wlr_scene_output_layout_output *solo; + wl_list_for_each(solo, &sol->outputs, link) { + assert(solo->scene_output != so); + } + + solo = calloc(1, sizeof(*solo)); if (solo == NULL) { return; } -- cgit v1.2.3