gobject-introspection r362 - in trunk: . girepository giscanner



Author: johan
Date: Wed Aug 13 21:44:38 2008
New Revision: 362
URL: http://svn.gnome.org/viewvc/gobject-introspection?rev=362&view=rev

Log:
2008-08-13  Johan Dahlin  <johan gnome org>

    * girepository/girnode.c (g_ir_node_get_full_size_internal):
    * girepository/girparser.c (start_class):
    * giscanner/glibtransformer.py:
    Allow get_type to be None, set a get_type for GInitiallyUnowned too.



Modified:
   trunk/ChangeLog
   trunk/girepository/girnode.c
   trunk/girepository/girparser.c
   trunk/giscanner/glibtransformer.py

Modified: trunk/girepository/girnode.c
==============================================================================
--- trunk/girepository/girnode.c	(original)
+++ trunk/girepository/girnode.c	Wed Aug 13 21:44:38 2008
@@ -710,7 +710,9 @@
 	  size += ALIGN_VALUE (strlen (iface->parent) + 1, 4);
 	size += ALIGN_VALUE (strlen (node->name) + 1, 4);
 	size += ALIGN_VALUE (strlen (iface->gtype_name) + 1, 4);
-	size += ALIGN_VALUE (strlen (iface->gtype_init) + 1, 4);
+	if (iface->gtype_init)
+	  size += ALIGN_VALUE (strlen (iface->gtype_init) + 1, 4);
+	size += ALIGN_VALUE ( + 1, 4);
 	size += 2 * (n + (n % 2));
 
 	for (l = iface->members; l; l = l->next)

Modified: trunk/girepository/girparser.c
==============================================================================
--- trunk/girepository/girparser.c	(original)
+++ trunk/girepository/girparser.c	Wed Aug 13 21:44:38 2008
@@ -1304,7 +1304,7 @@
 	MISSING_ATTRIBUTE (context, error, element_name, "name");
       else if (typename == NULL)
 	MISSING_ATTRIBUTE (context, error, element_name, "glib:type-name");
-      else if (typeinit == NULL)
+      else if (typeinit == NULL && strcmp (typename, "GObject"))
 	MISSING_ATTRIBUTE (context, error, element_name, "glib:get-type");
       else
 	{

Modified: trunk/giscanner/glibtransformer.py
==============================================================================
--- trunk/giscanner/glibtransformer.py	(original)
+++ trunk/giscanner/glibtransformer.py	Wed Aug 13 21:44:38 2008
@@ -323,10 +323,12 @@
         type_name = 'G' + node.name
         if type_name == 'GObject':
             parent_type_name = None
+            symbol = None
         else:
             type_id = cgobject.type_from_name(type_name)
             parent_type_name = cgobject.type_name(cgobject.type_parent(type_id))
-        node = GLibObject(node.name, parent_type_name, type_name, None)
+            symbol = to_underscores(type_name).lower() + '_get_type'
+        node = GLibObject(node.name, parent_type_name, type_name, symbol)
         type_id = cgobject.TYPE_OBJECT
         self._introspect_properties(node, type_id)
         self._introspect_signals(node, type_id)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]