surface: add missing va_marshaller for layout signal
authorChristian Hergert <chergert@redhat.com>
Wed, 8 Dec 2021 06:21:19 +0000 (22:21 -0800)
committerChristian Hergert <chergert@redhat.com>
Wed, 8 Dec 2021 06:21:19 +0000 (22:21 -0800)
I saw this coming across through a ffi boundary in Sysprof, and we wanted
to keep most things within GDK using native marshalling to improve
profiler results when frame pointers are not used.

gdk/gdkmarshalers.list
gdk/gdksurface.c

index 953533e466d459b75c8d5f0717f26c13ba467eec..8dff932b908cacfed717f10435f8445da2807a31 100644 (file)
@@ -2,3 +2,4 @@ BOOLEAN:BOXED
 BOOLEAN:OBJECT
 BOOLEAN:POINTER
 VOID:POINTER,POINTER,BOOLEAN,BOOLEAN
+VOID:INT,INT
index 0a279a3729c0825e07e39d53e0b6fc50f5f1a315..a8c6cab390df50f90177b2c8f82ed70d1bb73ca7 100644 (file)
@@ -605,11 +605,14 @@ gdk_surface_class_init (GdkSurfaceClass *klass)
                   0,
                   NULL,
                   NULL,
-                  NULL,
+                  _gdk_marshal_VOID__INT_INT,
                   G_TYPE_NONE,
                   2,
                   G_TYPE_INT,
                   G_TYPE_INT);
+  g_signal_set_va_marshaller (signals[LAYOUT],
+                              G_OBJECT_CLASS_TYPE (object_class),
+                              _gdk_marshal_VOID__INT_INTv);
 
   /**
    * GdkSurface::render: