diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2021-11-01 14:24:09 +0100 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2021-11-01 14:32:05 +0100 |
commit | 8152d9144c337925688bfd10d277fa167e913472 (patch) | |
tree | e747afa7cb802242b31338e40ecb72450c0b113b /codegen/valagsignalmodule.vala | |
parent | b9df26bcf3d8f6884f14dcc33a1a9d891916ac9d (diff) | |
download | vala-8152d9144c337925688bfd10d277fa167e913472.tar.gz |
codegen: Stop generating wrappers for dynamic signal connections
Diffstat (limited to 'codegen/valagsignalmodule.vala')
-rw-r--r-- | codegen/valagsignalmodule.vala | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/codegen/valagsignalmodule.vala b/codegen/valagsignalmodule.vala index 00413173e..cfd4a5da8 100644 --- a/codegen/valagsignalmodule.vala +++ b/codegen/valagsignalmodule.vala @@ -611,25 +611,19 @@ public class Vala.GSignalModule : GObjectModule { if (!disconnect) { // connect - if (sig is DynamicSignal) { - if (!after) - connect_func = get_dynamic_signal_connect_wrapper_name ((DynamicSignal) sig); - else - connect_func = get_dynamic_signal_connect_after_wrapper_name ((DynamicSignal) sig); + if (!(sig is DynamicSignal) && ((m != null && m.closure) || (dt != null && dt.value_owned))) { + connect_func = "g_signal_connect_data"; + } else if (m != null && in_gobject_instance (m)) { + connect_func = "g_signal_connect_object"; + } else if (!after) { + connect_func = "g_signal_connect"; } else { - if ((m != null && m.closure) || (dt != null && dt.value_owned)) { - connect_func = "g_signal_connect_data"; - } else if (m != null && in_gobject_instance (m)) { - connect_func = "g_signal_connect_object"; - } else if (!after) { - connect_func = "g_signal_connect"; - } else - connect_func = "g_signal_connect_after"; + connect_func = "g_signal_connect_after"; } } else { // disconnect if (sig is DynamicSignal) { - connect_func = get_dynamic_signal_disconnect_wrapper_name ((DynamicSignal) sig); + connect_func = "VALA_UNSUPPORTED"; } else { connect_func = "g_signal_handlers_disconnect_matched"; } @@ -742,8 +736,7 @@ public class Vala.GSignalModule : GObjectModule { } else if (handler is LambdaExpression) { ccall.add_argument (get_this_cexpression ()); } - if (!disconnect && !(sig is DynamicSignal) - && in_gobject_instance (m)) { + if (!disconnect && in_gobject_instance (m)) { // g_signal_connect_object // fifth argument: connect_flags |