[vala] codegen: Fix connect/disconnect of dynamic signals



commit 5a09c0ab8eb99bfc9926b338cdfe399c6ff87924
Author: Rico Tzschichholz <ricotz ubuntu com>
Date:   Sun Aug 4 22:27:21 2013 +0200

    codegen: Fix connect/disconnect of dynamic signals
    
    Make dynamic wrapper function return handler id for later
    disconnect.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=705461

 codegen/valagobjectmodule.vala |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/codegen/valagobjectmodule.vala b/codegen/valagobjectmodule.vala
index cddbc5e..fe9de20 100644
--- a/codegen/valagobjectmodule.vala
+++ b/codegen/valagobjectmodule.vala
@@ -594,7 +594,7 @@ public class Vala.GObjectModule : GTypeModule {
                }
 
                string connect_wrapper_name = "_%sconnect".printf (get_dynamic_signal_cname (sig));
-               var func = new CCodeFunction (connect_wrapper_name, "void");
+               var func = new CCodeFunction (connect_wrapper_name, "gulong");
                func.add_parameter (new CCodeParameter ("obj", "gpointer"));
                func.add_parameter (new CCodeParameter ("signal_name", "const char *"));
                func.add_parameter (new CCodeParameter ("handler", "GCallback"));
@@ -617,7 +617,7 @@ public class Vala.GObjectModule : GTypeModule {
                }
 
                string connect_wrapper_name = "_%sconnect_after".printf (get_dynamic_signal_cname (sig));
-               var func = new CCodeFunction (connect_wrapper_name, "void");
+               var func = new CCodeFunction (connect_wrapper_name, "gulong");
                func.add_parameter (new CCodeParameter ("obj", "gpointer"));
                func.add_parameter (new CCodeParameter ("signal_name", "const char *"));
                func.add_parameter (new CCodeParameter ("handler", "GCallback"));
@@ -660,7 +660,7 @@ public class Vala.GObjectModule : GTypeModule {
                        }
                }
 
-               ccode.add_expression (call);
+               ccode.add_return (call);
        }
 
        public override void visit_property (Property prop) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]