[cogl/cogl-1.18] Don't use the internal _G_DEFINE_TYPE_EXTENDED_CLASS_INIT macro
- From: Neil Roberts <nroberts src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [cogl/cogl-1.18] Don't use the internal _G_DEFINE_TYPE_EXTENDED_CLASS_INIT macro
- Date: Fri, 21 Mar 2014 17:42:58 +0000 (UTC)
commit 2e6156ef5ee5d5855b0ac17bb254bd8a55ba2c5c
Author: Neil Roberts <neil linux intel com>
Date: Fri Mar 21 17:16:34 2014 +0000
Don't use the internal _G_DEFINE_TYPE_EXTENDED_CLASS_INIT macro
This macro is internal to gobject so using it risks breaking Cogl if
glib changes its API. Instead we just use its expansion. Note that
glib provides two expansions for this depending on the glib version
but this only uses the one for older versions.
Reviewed-by: Robert Bragg <robert bragg intel com>
cogl/cogl-gtype-private.h | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
---
diff --git a/cogl/cogl-gtype-private.h b/cogl/cogl-gtype-private.h
index 21590da..03832ef 100644
--- a/cogl/cogl-gtype-private.h
+++ b/cogl/cogl-gtype-private.h
@@ -191,7 +191,12 @@ cogl_##name##_get_gtype (void) \
static gpointer name##_parent_class = NULL; \
static gint Name##_private_offset; \
\
- _G_DEFINE_TYPE_EXTENDED_CLASS_INIT(Name, name) \
+ static void \
+ name##_class_intern_init (gpointer klass) \
+ { \
+ name##_parent_class = g_type_class_peek_parent (klass); \
+ name##_class_init ((Name##Class*) klass); \
+ } \
\
static inline gpointer \
name##_get_instance_private (Name *self) \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]