[mutter] barrier/native: Fix warning about implicit enum conversion



commit 79319a3a9105b30ab2767b7603adec84ee1c5c43
Author: Jonas Ã…dahl <jadahl gmail com>
Date:   Fri Mar 4 20:56:47 2022 +0100

    barrier/native: Fix warning about implicit enum conversion
    
    Also add static asserts to make sure the values match so casting can be
    done.
    
    Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2319>

 src/backends/meta-barrier.c               | 9 +++++++++
 src/backends/native/meta-barrier-native.c | 5 ++++-
 2 files changed, 13 insertions(+), 1 deletion(-)
---
diff --git a/src/backends/meta-barrier.c b/src/backends/meta-barrier.c
index d924d0ab37..94a4b7964e 100644
--- a/src/backends/meta-barrier.c
+++ b/src/backends/meta-barrier.c
@@ -26,6 +26,15 @@
 G_DEFINE_TYPE_WITH_PRIVATE (MetaBarrier, meta_barrier, G_TYPE_OBJECT)
 G_DEFINE_TYPE (MetaBarrierImpl, meta_barrier_impl, G_TYPE_OBJECT)
 
+G_STATIC_ASSERT ((int) META_BARRIER_DIRECTION_POSITIVE_X ==
+                 (int) META_BORDER_MOTION_DIRECTION_POSITIVE_X);
+G_STATIC_ASSERT ((int) META_BARRIER_DIRECTION_POSITIVE_Y ==
+                 (int) META_BORDER_MOTION_DIRECTION_POSITIVE_Y);
+G_STATIC_ASSERT ((int) META_BARRIER_DIRECTION_NEGATIVE_X ==
+                 (int) META_BORDER_MOTION_DIRECTION_NEGATIVE_X);
+G_STATIC_ASSERT ((int) META_BARRIER_DIRECTION_NEGATIVE_Y ==
+                 (int) META_BORDER_MOTION_DIRECTION_NEGATIVE_Y);
+
 enum
 {
   PROP_0,
diff --git a/src/backends/native/meta-barrier-native.c b/src/backends/native/meta-barrier-native.c
index 3c9c1eabef..2e17c49c73 100644
--- a/src/backends/native/meta-barrier-native.c
+++ b/src/backends/native/meta-barrier-native.c
@@ -109,8 +109,11 @@ static gboolean
 is_barrier_blocking_directions (MetaBarrier         *barrier,
                                 MetaBarrierDirection directions)
 {
+  MetaBorderMotionDirection border_motion_directions =
+    (MetaBorderMotionDirection) directions;
+
   return meta_border_is_blocking_directions (&barrier->priv->border,
-                                             directions);
+                                             border_motion_directions);
 }
 
 static void


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]