This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository libx2goclient. commit c8853faa12e582e0584eed330d2054993bc4e972 Author: Mihai Moldovan <ionic@ionic.de> Date: Wed Aug 5 15:37:03 2020 +0200 src/x2goclient-network-ssh.c: use connect-function property to fetch parent connect function. This includes a rather odd typedef for the parent connect function (proto)type, which is explained in a comment. --- src/x2goclient-network-ssh.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/x2goclient-network-ssh.c b/src/x2goclient-network-ssh.c index af5682e..56e1cd3 100644 --- a/src/x2goclient-network-ssh.c +++ b/src/x2goclient-network-ssh.c @@ -63,6 +63,17 @@ struct _X2GoClientNetworkOptionsSSH { G_DEFINE_TYPE (X2GoClientNetworkOptionsSSH, x2goclient_network_options_ssh, X2GOCLIENT_TYPE_NETWORK_OPTIONS); + +/* + * This is a bit unsafe and odd, but we need a function pointer (proto)type + * for later use. + * + * It probably makes sense to keep it as generic as possible, though, to + * improve maintainability. + */ +typedef gboolean (*parent_connect_type) (void * const self, void * const gerr); + + static void x2goclient_network_options_ssh_class_init (X2GoClientNetworkOptionsSSHClass * const klass) { } @@ -757,7 +768,14 @@ gboolean x2goclient_network_ssh_connect (X2GoClientNetworkSSH * const self, GErr X2GoClientNetwork *parent = X2GOCLIENT_NETWORK (self); X2GoClientNetworkClass *parent_class = X2GOCLIENT_NETWORK_GET_CLASS (parent); - ret = parent_class->parent_connect (parent, gerr); + /* Fetch parent's connect function. */ + parent_connect_type parent_connect = NULL; + g_object_get (G_OBJECT (self), "connect-function", &parent_connect, NULL); + g_assert (parent_connect); + + if (parent_connect) { + ret = parent_connect (parent, gerr); + } return (ret); } -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/libx2goclient.git