Add a boxed type for GError

Patch by Sebastian Dröge, bug 614541
This commit is contained in:
Matthias Clasen 2010-04-22 20:10:56 -04:00
parent 4a62a00c4c
commit b440cc1546
3 changed files with 23 additions and 0 deletions

View File

@ -299,6 +299,19 @@ g_variant_get_gtype (void)
return type_id; return type_id;
} }
GType
g_error_get_type (void)
{
static GType type_id = 0;
if (!type_id)
type_id = g_boxed_type_register_static (g_intern_static_string ("GError"),
(GBoxedCopyFunc) g_error_copy,
(GBoxedFreeFunc) g_error_free);
return type_id;
}
static void static void
boxed_proxy_value_init (GValue *value) boxed_proxy_value_init (GValue *value)
{ {

View File

@ -202,6 +202,14 @@ GType g_boxed_type_register_static (const gchar *name,
* Since: 2.24 * Since: 2.24
*/ */
#define G_TYPE_VARIANT (g_variant_get_gtype ()) #define G_TYPE_VARIANT (g_variant_get_gtype ())
/**
* G_TYPE_ERROR:
*
* The #GType for a boxed type holding a #GError.
*
* Since: 2.26
*/
#define G_TYPE_ERROR (g_error_get_type ())
void g_value_take_boxed (GValue *value, void g_value_take_boxed (GValue *value,
@ -223,6 +231,7 @@ GType g_ptr_array_get_type (void) G_GNUC_CONST;
GType g_variant_type_get_gtype(void) G_GNUC_CONST; GType g_variant_type_get_gtype(void) G_GNUC_CONST;
GType g_variant_get_gtype (void) G_GNUC_CONST; GType g_variant_get_gtype (void) G_GNUC_CONST;
GType g_regex_get_type (void) G_GNUC_CONST; GType g_regex_get_type (void) G_GNUC_CONST;
GType g_error_get_type (void) G_GNUC_CONST;
/** /**
* GStrv: * GStrv:

View File

@ -22,6 +22,7 @@ g_strv_get_type G_GNUC_CONST
g_hash_table_get_type G_GNUC_CONST g_hash_table_get_type G_GNUC_CONST
g_array_get_type G_GNUC_CONST g_array_get_type G_GNUC_CONST
g_byte_array_get_type G_GNUC_CONST g_byte_array_get_type G_GNUC_CONST
g_error_get_type G_GNUC_CONST
g_ptr_array_get_type G_GNUC_CONST g_ptr_array_get_type G_GNUC_CONST
g_regex_get_type G_GNUC_CONST g_regex_get_type G_GNUC_CONST
g_variant_type_get_gtype G_GNUC_CONST g_variant_type_get_gtype G_GNUC_CONST