[gobject-introspection] scanner: Add temporary workaround for GStreamer



commit 2b9df1ded8f4af871e6e6b7b7306230f1c33a51e
Author: Colin Walters <walters verbum org>
Date:   Wed Sep 15 16:45:48 2010 -0400

    scanner: Add temporary workaround for GStreamer
    
    Also document/bug link the other workarounds; just made up a
    convention for ## WORKAROUND ##
    
    See: https://bugzilla.gnome.org/show_bug.cgi?id=550616

 giscanner/gdumpparser.py     |    2 ++
 giscanner/maintransformer.py |    2 ++
 giscanner/transformer.py     |    4 ++++
 3 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/giscanner/gdumpparser.py b/giscanner/gdumpparser.py
index d23e93f..42bf004 100644
--- a/giscanner/gdumpparser.py
+++ b/giscanner/gdumpparser.py
@@ -350,6 +350,8 @@ different --identifier-prefix.""" % (xmlnode.attrib['name'], self._namespace.ide
         else:
             self._namespace.append(node, replace=True)
 
+    ## WORKAROUND ##
+    # https://bugzilla.gnome.org/show_bug.cgi?id=550616
     def _introspect_boxed_gstreamer_workaround(self, xmlnode):
         node = ast.Boxed('ParamSpecMiniObject', gtype_name='GParamSpecMiniObject',
                          get_type='gst_param_spec_mini_object_get_type',
diff --git a/giscanner/maintransformer.py b/giscanner/maintransformer.py
index 550023f..130d449 100644
--- a/giscanner/maintransformer.py
+++ b/giscanner/maintransformer.py
@@ -46,8 +46,10 @@ class MainTransformer(object):
     # Public API
 
     def transform(self):
+        ## WORKAROUND ##
         # Dirty hack for now...maybe eventually we'll support the "typedef GSList FooSet"
         # pattern.
+        # https://bugzilla.gnome.org/show_bug.cgi?id=629682
         if self._namespace.name == 'Atk':
             attribute = self._namespace.get('Attribute')
             attributeset = self._namespace.get('AttributeSet')
diff --git a/giscanner/transformer.py b/giscanner/transformer.py
index 02942c8..be34ff5 100644
--- a/giscanner/transformer.py
+++ b/giscanner/transformer.py
@@ -80,6 +80,10 @@ class Transformer(object):
 
     def parse(self, symbols):
         for symbol in symbols:
+            ## WORKAROUND ##
+            # https://bugzilla.gnome.org/show_bug.cgi?id=550616
+            if symbol.ident in ['gst_g_error_get_type']:
+                continue
             node = self._traverse_one(symbol)
             if node:
                 self._append_new_node(node)



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