Look up aliases using c:type too
authorColin Walters <walters@verbum.org>
Wed, 20 Aug 2008 15:30:58 +0000 (15:30 +0000)
committerColin Walters <walters@src.gnome.org>
Wed, 20 Aug 2008 15:30:58 +0000 (15:30 +0000)
2008-08-20  Colin Walters  <walters@verbum.org>

* giscanner/glibtransformer.py: Try to look up
aliases using the c:type too.

svn path=/trunk/; revision=417

ChangeLog
giscanner/glibtransformer.py

index 1a86048..be0bb46 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2008-08-20  Colin Walters  <walters@verbum.org>
 
+       * giscanner/glibtransformer.py: Try to look up
+       aliases using the c:type too.
+
+2008-08-20  Colin Walters  <walters@verbum.org>
+
        * girepository/girparser.c: Parse union fields.
 
 2008-08-20  Johan Dahlin  <johan@gnome.org>
index e56b6a5..6a6a3dc 100644 (file)
@@ -447,12 +447,12 @@ class GLibTransformer(object):
 
     # Resolver
 
-    def _resolve_type_name(self, type_name):
+    def _resolve_type_name(self, type_name, ctype=None):
         res = self._transformer.resolve_type_name_full
         try:
-            return res(type_name, None, self._names)
+            return res(type_name, ctype, self._names)
         except KeyError, e:
-            return self._transformer.resolve_type_name(type_name, None)
+            return self._transformer.resolve_type_name(type_name, ctype)
 
     def _validate_type_name(self, name):
         if name in type_names:
@@ -570,7 +570,7 @@ class GLibTransformer(object):
         field.type = self._resolve_param_type(field.type)
 
     def _resolve_alias(self, alias):
-        alias.target = self._resolve_type_name(alias.target)
+        alias.target = self._resolve_type_name(alias.target, alias.target)
 
     # Validation