Fix crash when using errordomain methods, based on patch by Phil Housley,
authorJuerg Billeter <j@bitron.ch>
Thu, 1 May 2008 13:51:58 +0000 (13:51 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Thu, 1 May 2008 13:51:58 +0000 (13:51 +0000)
2008-05-01  Juerg Billeter  <j@bitron.ch>

* vala/valacfgbuilder.vala:
* vala/valanullchecker.vala:
* vala/valasemanticanalyzer.vala:
* vala/valasymbolresolver.vala:
* vapigen/valagidlparser.vala:

Fix crash when using errordomain methods,
based on patch by Phil Housley, fixes bug 530537

svn path=/trunk/; revision=1330

ChangeLog
vala/valacfgbuilder.vala
vala/valanullchecker.vala
vala/valasemanticanalyzer.vala
vala/valasymbolresolver.vala
vapigen/valagidlparser.vala

index 6a49dcb..cc98fdc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2008-05-01  Jürg Billeter  <j@bitron.ch>
+
+       * vala/valacfgbuilder.vala:
+       * vala/valanullchecker.vala:
+       * vala/valasemanticanalyzer.vala:
+       * vala/valasymbolresolver.vala:
+       * vapigen/valagidlparser.vala:
+
+       Fix crash when using errordomain methods,
+       based on patch by Phil Housley, fixes bug 530537
+
 2008-04-28  Jürg Billeter  <j@bitron.ch>
 
        * vapi/packages/gdk-2.0/: fix GdkEvent* bindings
index 9fe05e8..fa81ac4 100644 (file)
@@ -114,6 +114,10 @@ public class Vala.CFGBuilder : CodeVisitor {
                en.accept_children (this);
        }
 
+       public override void visit_error_domain (ErrorDomain ed) {
+               ed.accept_children (this);
+       }
+
        public override void visit_method (Method m) {
                if (m.body == null) {
                        return;
index 3a5f987..0524e93 100644 (file)
@@ -77,6 +77,10 @@ public class Vala.NullChecker : CodeVisitor {
                en.accept_children (this);
        }
 
+       public override void visit_error_domain (ErrorDomain ed) {
+               ed.accept_children (this);
+       }
+
        public override void visit_field (Field f) {
                f.accept_children (this);
        }
index da2640e..91f1cf5 100644 (file)
@@ -310,6 +310,10 @@ public class Vala.SemanticAnalyzer : CodeVisitor {
                ev.accept_children (this);
        }
 
+       public override void visit_error_domain (ErrorDomain ed) {
+               ed.accept_children (this);
+       }
+
        public override void visit_delegate (Delegate d) {
                d.accept_children (this);
        }
index 1e1e186..c81b091 100644 (file)
@@ -109,6 +109,14 @@ public class Vala.SymbolResolver : CodeVisitor {
                current_scope = current_scope.parent_scope;
        }
 
+       public override void visit_error_domain (ErrorDomain ed) {
+               current_scope = ed.scope;
+
+               ed.accept_children (this);
+
+               current_scope = current_scope.parent_scope;
+       }
+
        public override void visit_delegate (Delegate cb) {
                current_scope = cb.scope;
 
index 52490eb..e5f7afc 100644 (file)
@@ -77,6 +77,10 @@ public class Vala.GIdlParser : CodeVisitor {
                visit_type (en);
        }
 
+       public override void visit_error_domain (ErrorDomain ed) {
+               visit_type (ed);
+       }
+
        public override void visit_delegate (Delegate d) {
                visit_type (d);
        }