[TYPEDEF] more fixes from revert problems with git
[gnome.gobject-introspection] / giscanner / transformer.py
index 1b4abc1..6a2484f 100644 (file)
@@ -351,6 +351,7 @@ class Transformer(object):
         elif source_type.type == CTYPE_BASIC_TYPE:
             value = source_type.name
             # skip adding invalid types.
+            # share the const down the tree..
             if not source_type.base_type:
                 return value
             value_add = self._create_source_type(source_type.base_type)
@@ -362,6 +363,8 @@ class Transformer(object):
             return self._create_source_type(source_type.base_type)
         elif source_type.type == CTYPE_POINTER:
             value = self._create_source_type(source_type.base_type) + '*'
+        elif source_type.type == CTYPE_STRUCT:
+            value = source_type.name
         elif source_type.type == CTYPE_INVALID:
             #this happens if const is after the type..
             value = ''
@@ -426,8 +429,8 @@ class Transformer(object):
         if (ctype == CTYPE_POINTER and
             symbol.base_type.base_type.type == CTYPE_FUNCTION):
             node = self._create_typedef_callback(symbol)
-        if (ctype ==  CTYPE_FUNCTION):
-            node = self._create_typedef_callback(symbol)
+#        if (ctype ==  CTYPE_FUNCTION):
+#            node = self._create_typedef_callback(symbol)
         elif (ctype == CTYPE_POINTER and
             symbol.base_type.base_type.type == CTYPE_STRUCT):
             node = self._create_typedef_struct(symbol, disguised=True)