summaryrefslogtreecommitdiff
path: root/giscanner/codegen.py
diff options
context:
space:
mode:
authorGarrett Regier <garrett.regier@riftio.com>2015-07-06 18:54:23 -0700
committerColin Walters <walters@verbum.org>2015-10-04 17:34:12 -0400
commit09c466f0184e74ba6f279f103ad3be3a7e1f2a06 (patch)
tree717499c4cb224dd35ffef2feed10bc0a274b62ae /giscanner/codegen.py
parent849f1eef10b18eddaf41c1e0b2cca87bf5d93739 (diff)
downloadgobject-introspection-09c466f0184e74ba6f279f103ad3be3a7e1f2a06.tar.gz
scanner: Warn and ignore return annotations when there is no return value
Otherwise the .gir can contain invalid data which would likely cause a crash at runtime. https://bugzilla.gnome.org/show_bug.cgi?id=752044 Signed-off-by: Garrett Regier <garrett.regier@riftio.com>
Diffstat (limited to 'giscanner/codegen.py')
-rw-r--r--giscanner/codegen.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/giscanner/codegen.py b/giscanner/codegen.py
index ff1a435a..0d4a8d8b 100644
--- a/giscanner/codegen.py
+++ b/giscanner/codegen.py
@@ -108,10 +108,11 @@ class CCodeGenerator(object):
self._write_annotation_transfer(param)
self.out_c.write(":\n")
self.out_c.write(' *\n')
- self.out_c.write(' * Undocumented.\n')
- self.out_c.write(' *\n')
- self.out_c.write(' * Returns:')
- self._write_annotation_transfer(func.retval)
+ self.out_c.write(' * Undocumented.')
+ if func.retval.type != ast.TYPE_NONE:
+ self.out_c.write('\n *\n')
+ self.out_c.write(' * Returns: ')
+ self._write_annotation_transfer(func.retval)
self.out_c.write('\n */')
@contextmanager