]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
GAsync: Fix GSourceFunc callbacks in virtual methods
authorJürg Billeter <j@bitron.ch>
Mon, 14 Sep 2009 22:45:20 +0000 (00:45 +0200)
committerJürg Billeter <j@bitron.ch>
Mon, 14 Sep 2009 22:45:20 +0000 (00:45 +0200)
vala/valamemberaccess.vala

index d0692c05664ec12b3cdae12b52775581611657f1..8413f34808316b3b64addf8c4ace1151ac3b5b46 100644 (file)
@@ -426,7 +426,12 @@ public class Vala.MemberAccess : Expression {
                        klass = (f.binding == MemberBinding.CLASS);
                } else if (member is Method) {
                        var m = (Method) member;
-                       if (m.base_method != null) {
+                       if (m.is_async_callback) {
+                               // ensure to use right callback method for virtual/abstract async methods
+                               m = analyzer.current_method.get_callback_method ();
+                               symbol_reference = m;
+                               member = symbol_reference;
+                       } else if (m.base_method != null) {
                                // refer to base method to inherit default arguments
                                m = m.base_method;