improve class and signal parsing, patch by Marcelo Lira, fixes bug 464388
authorJuerg Billeter <j@bitron.ch>
Tue, 7 Aug 2007 20:35:01 +0000 (20:35 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Tue, 7 Aug 2007 20:35:01 +0000 (20:35 +0000)
2007-08-07  Juerg Billeter  <j@bitron.ch>

* vapigen/gidlgen/gapi2xml.pl: improve class and signal parsing,
  patch by Marcelo Lira, fixes bug 464388

svn path=/trunk/; revision=439

ChangeLog
vapigen/gidlgen/gapi2xml.pl

index 8a1028b..acf9336 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-08-07  Jürg Billeter  <j@bitron.ch>
+
+       * vapigen/gidlgen/gapi2xml.pl: improve class and signal parsing,
+         patch by Marcelo Lira, fixes bug 464388
+
 2007-08-07  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
 
        * vapi/glib-2.0.vala: fix the C name of Process.close_pid
index 4221c2e..cc294c6 100755 (executable)
@@ -327,6 +327,9 @@ foreach $type (sort(keys(%ifaces))) {
 foreach $type (sort(keys(%objects))) {
        ($inst, $class) = split(/:/, $objects{$type});
        $class = $inst . "Class" if (!$class);
+
+       next if ($inst eq "");
+
        $initfunc = $pedefs{lc($inst)};
        $typefunc = $typefuncs{lc($inst)};
        $insttype = delete $types{$inst};
@@ -975,7 +978,7 @@ sub addSignalElem
        $sig_elem = $doc->createElement('signal');
        $node->appendChild($sig_elem);
 
-       if ($spec =~ /\(\"([\w\-]+)\"/) {
+       if ($spec =~ /[\s]*\([\s]*\"([\w\-]+)\"/) {
                my $cname = $1;
                $cname =~ s/-/_/g;
                $sig_elem->setAttribute('name', $cname);