summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Winship <danw@gnome.org>2009-12-09 16:37:18 -0500
committerDan Winship <danw@gnome.org>2009-12-09 17:04:19 -0500
commit6710cfa5063c041894d700b6cf6b4b85cdd08025 (patch)
tree80cfbbaa02291c08f443511a4b5fca6961ca48fc
parent79450515e879b8ac4bf4aff1ebdced79ddb1fb35 (diff)
downloadgobject-introspection-6710cfa5063c041894d700b6cf6b4b85cdd08025.tar.gz
[scanner] "GError *" is not the same as "GError **"
Only set "throws" in the latter case https://bugzilla.gnome.org/show_bug.cgi?id=602512
-rw-r--r--giscanner/glibtransformer.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/giscanner/glibtransformer.py b/giscanner/glibtransformer.py
index 158f8e81..d44987b9 100644
--- a/giscanner/glibtransformer.py
+++ b/giscanner/glibtransformer.py
@@ -960,9 +960,9 @@ class GLibTransformer(object):
last_param = func.parameters.pop()
- if (last_param.type.name == 'GLib.Error' or
- (self._namespace_name == 'GLib' and
- last_param.type.name == 'Error')):
+ # Checking type.name=='GLib.Error' generates false positives
+ # on methods that take a 'GError *'
+ if last_param.type.ctype == 'GError**':
func.throws = True
else:
func.parameters.append(last_param)