31 lines
1.0 KiB
Diff
31 lines
1.0 KiB
Diff
|
From 13fcdba75cf5f21cfd49c1a05f4fa62f77619b40 Mon Sep 17 00:00:00 2001
|
||
|
From: Sebastian Krzyszkowiak <dos@dosowisko.net>
|
||
|
Date: Sat, 5 Mar 2022 08:00:39 +0100
|
||
|
Subject: [PATCH] wlr_output_layout_contains_point: handle outputs that aren't
|
||
|
in the layout
|
||
|
|
||
|
Instead of crashing, return `false` when the specified output isn't part
|
||
|
of the layout, as we can be sure that it doesn't contain the specified
|
||
|
point.
|
||
|
---
|
||
|
types/wlr_output_layout.c | 3 +++
|
||
|
1 file changed, 3 insertions(+)
|
||
|
|
||
|
diff --git a/types/wlr_output_layout.c b/types/wlr_output_layout.c
|
||
|
index 28d91e8d4..ef6e2850c 100644
|
||
|
--- a/types/wlr_output_layout.c
|
||
|
+++ b/types/wlr_output_layout.c
|
||
|
@@ -231,6 +231,9 @@ bool wlr_output_layout_contains_point(struct wlr_output_layout *layout,
|
||
|
if (reference) {
|
||
|
struct wlr_output_layout_output *l_output =
|
||
|
wlr_output_layout_get(layout, reference);
|
||
|
+ if (!l_output) {
|
||
|
+ return false;
|
||
|
+ }
|
||
|
struct wlr_box output_box;
|
||
|
output_layout_output_get_box(l_output, &output_box);
|
||
|
return wlr_box_contains_point(&output_box, lx, ly);
|
||
|
--
|
||
|
GitLab
|
||
|
|