[glib/wip/gproperty-2: 9/26] gparam: Use the new private instance data API
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib/wip/gproperty-2: 9/26] gparam: Use the new private instance data API
- Date: Tue, 18 Jun 2013 16:05:43 +0000 (UTC)
commit 3297c84bb72075c19da0ff50b34f6c3646e21a99
Author: Emmanuele Bassi <ebassi gnome org>
Date: Tue Jun 11 00:29:22 2013 +0100
gparam: Use the new private instance data API
https://bugzilla.gnome.org/show_bug.cgi?id=700035
gobject/gparam.c | 15 ++++++++++-----
1 files changed, 10 insertions(+), 5 deletions(-)
---
diff --git a/gobject/gparam.c b/gobject/gparam.c
index 8aa080a..434dd59 100644
--- a/gobject/gparam.c
+++ b/gobject/gparam.c
@@ -86,9 +86,14 @@ typedef struct
} GParamSpecPrivate;
static gint g_param_private_offset;
-#define PRIV(inst) (&G_STRUCT_MEMBER(GParamSpecPrivate, (inst), g_param_private_offset))
/* --- functions --- */
+static inline GParamSpecPrivate *
+g_param_spec_get_private (GParamSpec *pspec)
+{
+ return &G_STRUCT_MEMBER (GParamSpecPrivate, pspec, g_param_private_offset);
+}
+
void
_g_param_type_init (void)
{
@@ -132,6 +137,7 @@ _g_param_type_init (void)
*/
type = g_type_register_fundamental (G_TYPE_PARAM, g_intern_static_string ("GParam"), ¶m_spec_info,
&finfo, G_TYPE_FLAG_ABSTRACT);
g_assert (type == G_TYPE_PARAM);
+ g_param_private_offset = g_type_add_instance_private (type, sizeof (GParamSpecPrivate));
g_value_register_transform_func (G_TYPE_PARAM, G_TYPE_PARAM, value_param_transform_value);
}
@@ -155,8 +161,7 @@ g_param_spec_class_init (GParamSpecClass *class,
class->value_validate = NULL;
class->values_cmp = NULL;
- g_type_class_add_private (class, sizeof (GParamSpecPrivate));
- g_param_private_offset = g_type_class_get_instance_private_offset (class);
+ g_type_class_add_instance_private (class, &g_param_private_offset);
}
static void
@@ -178,7 +183,7 @@ g_param_spec_init (GParamSpec *pspec,
static void
g_param_spec_finalize (GParamSpec *pspec)
{
- GParamSpecPrivate *priv = PRIV (pspec);
+ GParamSpecPrivate *priv = g_param_spec_get_private (pspec);
if (priv->default_value.g_type)
g_value_reset (&priv->default_value);
@@ -1537,7 +1542,7 @@ g_value_dup_param (const GValue *value)
const GValue *
g_param_spec_get_default_value (GParamSpec *pspec)
{
- GParamSpecPrivate *priv = PRIV (pspec);
+ GParamSpecPrivate *priv = g_param_spec_get_private (pspec);
/* We use the type field of the GValue as the key for the once because
* it will be zero before it is initialised and non-zero after. We
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]