From b2c3c371fcb39578464c5604e6010ff5f656cdc2 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Fri, 22 Nov 2024 19:21:00 +0100 Subject: [PATCH] scene: assert on bad wlr_scene_buffer params We assert in wlr_renderer if these are invalid. Assert earlier to make debugging easier. --- types/scene/wlr_scene.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/types/scene/wlr_scene.c b/types/scene/wlr_scene.c index 43e77ecd2..58d1cc3f0 100644 --- a/types/scene/wlr_scene.c +++ b/types/scene/wlr_scene.c @@ -1015,6 +1015,7 @@ void wlr_scene_buffer_set_source_box(struct wlr_scene_buffer *scene_buffer, } if (box != NULL) { + assert(box->x >= 0 && box->y >= 0 && box->width >= 0 && box->height >= 0); scene_buffer->src_box = *box; } else { scene_buffer->src_box = (struct wlr_fbox){0}; @@ -1029,6 +1030,7 @@ void wlr_scene_buffer_set_dest_size(struct wlr_scene_buffer *scene_buffer, return; } + assert(width >= 0 && height >= 0); scene_buffer->dst_width = width; scene_buffer->dst_height = height; scene_node_update(&scene_buffer->node, NULL); @@ -1057,6 +1059,7 @@ void wlr_scene_buffer_set_opacity(struct wlr_scene_buffer *scene_buffer, return; } + assert(opacity >= 0 && opacity <= 1); scene_buffer->opacity = opacity; scene_node_update(&scene_buffer->node, NULL); }