From 11e208f9d61156c1bbe4ff9f3ca3f24827246976 Mon Sep 17 00:00:00 2001 From: Stef Walter Date: Wed, 30 Jan 2013 11:07:52 +0100 Subject: [PATCH] gdbus: Don't output invalid empty tags Docbook doesn't allow an empty and so the docbook output from gdbus-codegen is invalid when a method/signal has no arguments. https://bugzilla.gnome.org/show_bug.cgi?id=692865 --- gio/gdbus-2.0/codegen/codegen_docbook.py | 40 +++++++++++++----------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/gio/gdbus-2.0/codegen/codegen_docbook.py b/gio/gdbus-2.0/codegen/codegen_docbook.py index 00581f158..bca17c7a7 100644 --- a/gio/gdbus-2.0/codegen/codegen_docbook.py +++ b/gio/gdbus-2.0/codegen/codegen_docbook.py @@ -173,18 +173,19 @@ class DocbookCodeGenerator: self.print_method_prototype(i, m, in_synopsis=False) self.out.write('\n') self.out.write('%s\n'%(self.expand(m.doc_string, True))) - self.out.write('\n') - for a in m.in_args: - self.out.write('\n'%()) - self.out.write(' IN %s %s:\n'%(a.signature, a.name)) - self.out.write(' %s\n'%(self.expand(a.doc_string, True))) - self.out.write('\n'%()) - for a in m.out_args: - self.out.write('\n'%()) - self.out.write(' OUT %s %s:\n'%(a.signature, a.name)) - self.out.write(' %s\n'%(self.expand(a.doc_string, True))) - self.out.write('\n'%()) - self.out.write('\n') + if m.in_args or m.out_args: + self.out.write('\n') + for a in m.in_args: + self.out.write('\n'%()) + self.out.write(' IN %s %s:\n'%(a.signature, a.name)) + self.out.write(' %s\n'%(self.expand(a.doc_string, True))) + self.out.write('\n'%()) + for a in m.out_args: + self.out.write('\n'%()) + self.out.write(' OUT %s %s:\n'%(a.signature, a.name)) + self.out.write(' %s\n'%(self.expand(a.doc_string, True))) + self.out.write('\n'%()) + self.out.write('\n') if len(m.since) > 0: self.out.write('Since %s\n'%(m.since)) if m.deprecated: @@ -199,13 +200,14 @@ class DocbookCodeGenerator: self.print_signal_prototype(i, s, in_synopsis=False) self.out.write('\n') self.out.write('%s\n'%(self.expand(s.doc_string, True))) - self.out.write('\n') - for a in s.args: - self.out.write('\n'%()) - self.out.write(' %s %s:\n'%(a.signature, a.name)) - self.out.write(' %s\n'%(self.expand(a.doc_string, True))) - self.out.write('\n'%()) - self.out.write('\n') + if s.args: + self.out.write('\n') + for a in s.args: + self.out.write('\n'%()) + self.out.write(' %s %s:\n'%(a.signature, a.name)) + self.out.write(' %s\n'%(self.expand(a.doc_string, True))) + self.out.write('\n'%()) + self.out.write('\n') if len(s.since) > 0: self.out.write('Since %s\n'%(s.since)) if s.deprecated: