From f5949af0bbbb84931382aeabc8dadd2c4e82b8e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Fri, 27 Nov 2020 15:41:17 +0100 Subject: barrier: Complain loudly if bogus barriers are created The API allows for invalid barriers to be created; in an X11 session, this could result in involutary early exit, so guard against those with soft asserts. These will be logged in the journal as warnings, but will avoid the crash unless compiled out. Note that this doesn't fix the bug, it just makes it more detectable. Related: https://bugzilla.redhat.com/show_bug.cgi?id=1901610 Part-of: --- src/backends/meta-barrier.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/backends/meta-barrier.c b/src/backends/meta-barrier.c index 71536c3d7..ea2a77c20 100644 --- a/src/backends/meta-barrier.c +++ b/src/backends/meta-barrier.c @@ -180,6 +180,10 @@ meta_barrier_constructed (GObject *object) g_return_if_fail (priv->border.line.a.x == priv->border.line.b.x || priv->border.line.a.y == priv->border.line.b.y); + g_return_if_fail (priv->border.line.a.x >= 0); + g_return_if_fail (priv->border.line.a.y >= 0); + g_return_if_fail (priv->border.line.b.x >= 0); + g_return_if_fail (priv->border.line.b.y >= 0); #if defined(HAVE_NATIVE_BACKEND) if (META_IS_BACKEND_NATIVE (meta_get_backend ())) -- cgit v1.2.1