Commit 1af1b2b2 authored by Martin Pitt's avatar Martin Pitt

Box GPollFD to make it introspectable

https://bugzilla.gnome.org/show_bug.cgi?id=686797
parent 81b27ffc
......@@ -373,6 +373,7 @@ G_TYPE_KEY_FILE
G_TYPE_MAIN_CONTEXT
G_TYPE_MAIN_LOOP
G_TYPE_SOURCE
G_TYPE_POLLFD
GStrv
<SUBSECTION Standard>
......@@ -398,6 +399,7 @@ g_gtype_get_type
g_main_context_get_type
g_main_loop_get_type
g_source_get_type
g_pollfd_get_type
g_bytes_get_type
g_key_file_get_type
</SECTION>
......
......@@ -77,6 +77,15 @@ value_free (GValue *value)
g_free (value);
}
static GPollFD *
pollfd_copy (GPollFD *src)
{
GPollFD *dest = g_new0 (GPollFD, 1);
/* just a couple of integers */
memcpy (dest, src, sizeof (GPollFD));
return dest;
}
void
_g_boxed_type_init (void)
{
......@@ -150,6 +159,7 @@ G_DEFINE_BOXED_TYPE (GKeyFile, g_key_file, g_key_file_ref, g_key_file_unref)
G_DEFINE_BOXED_TYPE (GMainLoop, g_main_loop, g_main_loop_ref, g_main_loop_unref)
G_DEFINE_BOXED_TYPE (GMainContext, g_main_context, g_main_context_ref, g_main_context_unref)
G_DEFINE_BOXED_TYPE (GSource, g_source, g_source_ref, g_source_unref)
G_DEFINE_BOXED_TYPE (GPollFD, g_pollfd, pollfd_copy, g_free)
/* This one can't use G_DEFINE_BOXED_TYPE (GStrv, g_strv, g_strdupv, g_strfreev) */
GType
......
......@@ -227,6 +227,15 @@ typedef gsize GType;
*/
#define G_TYPE_SOURCE (g_source_get_type ())
/**
* G_TYPE_POLLFD:
*
* The #GType for a boxed type holding a #GPollFD.
*
* Since: 2.36
*/
#define G_TYPE_POLLFD (g_pollfd_get_type ())
/**
* G_TYPE_KEY_FILE:
*
......@@ -261,6 +270,8 @@ GLIB_AVAILABLE_IN_2_30
GType g_main_context_get_type (void) G_GNUC_CONST;
GLIB_AVAILABLE_IN_2_30
GType g_source_get_type (void) G_GNUC_CONST;
GLIB_AVAILABLE_IN_2_36
GType g_pollfd_get_type (void) G_GNUC_CONST;
GLIB_DEPRECATED_FOR('G_TYPE_VARIANT')
GType g_variant_get_gtype (void) G_GNUC_CONST;
......
......@@ -33,6 +33,7 @@ g_key_file_get_type
g_main_loop_get_type
g_main_context_get_type
g_source_get_type
g_pollfd_get_type
g_closure_get_type
g_value_get_type
g_value_array_get_type
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment