diff options
author | Philip Withnall <pwithnall@endlessos.org> | 2021-11-15 11:51:42 +0000 |
---|---|---|
committer | Ray Strode <halfline@gmail.com> | 2021-12-10 14:53:40 +0000 |
commit | 98f328d71d45c00662d42289362d15b2f684fb03 (patch) | |
tree | 82f373f4ac6592f8b2b8554b6fcaddedba397bef | |
parent | cef3e9b1db34e7b34e468b0446f8c0a5241d13ad (diff) | |
download | gnome-session-98f328d71d45c00662d42289362d15b2f684fb03.tar.gz |
xsmp-server: Modernise GObject private data handling
Use `G_DECLARE_FINAL_TYPE` and `G_DEFINE_TYPE_WITH_PRIVATE`.
This introduces no functional changes, but removes a few GLib
deprecation warnings.
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
-rw-r--r-- | gnome-session/gsm-xsmp-server.c | 86 | ||||
-rw-r--r-- | gnome-session/gsm-xsmp-server.h | 21 |
2 files changed, 43 insertions, 64 deletions
diff --git a/gnome-session/gsm-xsmp-server.c b/gnome-session/gsm-xsmp-server.c index d558f9b2..e05c6d77 100644 --- a/gnome-session/gsm-xsmp-server.c +++ b/gnome-session/gsm-xsmp-server.c @@ -61,8 +61,10 @@ #define GSM_XSMP_SERVER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSM_TYPE_XSMP_SERVER, GsmXsmpServerPrivate)) -struct GsmXsmpServerPrivate +struct _GsmXsmpServer { + GObject parent_instance; + GsmStore *client_store; IceListenObj *xsmp_sockets; @@ -227,14 +229,14 @@ gsm_xsmp_server_start (GsmXsmpServer *server) GIOChannel *channel; int i; - for (i = 0; i < server->priv->num_local_xsmp_sockets; i++) { + for (i = 0; i < server->num_local_xsmp_sockets; i++) { GsmIceConnectionData *data; data = g_new0 (GsmIceConnectionData, 1); data->server = server; - data->listener = server->priv->xsmp_sockets[i]; + data->listener = server->xsmp_sockets[i]; - channel = g_io_channel_unix_new (IceGetListenConnectionNumber (server->priv->xsmp_sockets[i])); + channel = g_io_channel_unix_new (IceGetListenConnectionNumber (server->xsmp_sockets[i])); g_io_add_watch_full (channel, G_PRIORITY_DEFAULT, G_IO_IN | G_IO_HUP | G_IO_ERR, @@ -250,7 +252,7 @@ gsm_xsmp_server_stop_accepting_new_clients (GsmXsmpServer *server) { g_return_if_fail (GSM_IS_XSMP_SERVER (server)); g_debug ("gsm_xsmp_server_stop_accepting_new_clients"); - server->priv->stopping = TRUE; + server->stopping = TRUE; } void @@ -258,7 +260,7 @@ gsm_xsmp_server_start_accepting_new_clients (GsmXsmpServer *server) { g_return_if_fail (GSM_IS_XSMP_SERVER (server)); g_debug ("gsm_xsmp_server_start"); - server->priv->stopping = FALSE; + server->stopping = FALSE; } static void @@ -271,11 +273,11 @@ gsm_xsmp_server_set_client_store (GsmXsmpServer *xsmp_server, g_object_ref (store); } - if (xsmp_server->priv->client_store != NULL) { - g_object_unref (xsmp_server->priv->client_store); + if (xsmp_server->client_store != NULL) { + g_object_unref (xsmp_server->client_store); } - xsmp_server->priv->client_store = store; + xsmp_server->client_store = store; } static void @@ -310,7 +312,7 @@ gsm_xsmp_server_get_property (GObject *object, switch (prop_id) { case PROP_CLIENT_STORE: - g_value_set_object (value, self->priv->client_store); + g_value_set_object (value, self->client_store); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); @@ -332,7 +334,7 @@ accept_xsmp_connection (SmsConn sms_conn, GsmClient *client; GsmIceConnectionWatch *data; - if (server->priv->stopping) { + if (server->stopping) { g_debug ("GsmXsmpServer: In shutdown, rejecting new client"); *failure_reason_ret = strdup (_("Refusing new client connection because the session is currently being shut down\n")); @@ -347,7 +349,7 @@ accept_xsmp_connection (SmsConn sms_conn, client = gsm_xsmp_client_new (ice_conn); - gsm_store_add (server->priv->client_store, gsm_client_peek_id (client), G_OBJECT (client)); + gsm_store_add (server->client_store, gsm_client_peek_id (client), G_OBJECT (client)); /* the store will own the ref */ g_object_unref (client); @@ -468,9 +470,9 @@ update_iceauthority (GsmXsmpServer *server, return FALSE; } - our_network_ids = g_malloc (server->priv->num_local_xsmp_sockets * sizeof (char *)); - for (i = 0; i < server->priv->num_local_xsmp_sockets; i++) { - our_network_ids[i] = IceGetListenConnectionString (server->priv->xsmp_sockets[i]); + our_network_ids = g_malloc (server->num_local_xsmp_sockets * sizeof (char *)); + for (i = 0; i < server->num_local_xsmp_sockets; i++) { + our_network_ids[i] = IceGetListenConnectionString (server->xsmp_sockets[i]); } entries = NULL; @@ -489,13 +491,13 @@ update_iceauthority (GsmXsmpServer *server, continue; } - for (i = 0; i < server->priv->num_local_xsmp_sockets; i++) { + for (i = 0; i < server->num_local_xsmp_sockets; i++) { if (!strcmp (auth_entry->network_id, our_network_ids[i])) { IceFreeAuthFileEntry (auth_entry); break; } } - if (i != server->priv->num_local_xsmp_sockets) { + if (i != server->num_local_xsmp_sockets) { continue; } @@ -523,7 +525,7 @@ update_iceauthority (GsmXsmpServer *server, } if (adding) { - for (i = 0; i < server->priv->num_local_xsmp_sockets; i++) { + for (i = 0; i < server->num_local_xsmp_sockets; i++) { entries = g_slist_append (entries, auth_entry_new ("ICE", our_network_ids[i])); entries = g_slist_prepend (entries, @@ -543,7 +545,7 @@ update_iceauthority (GsmXsmpServer *server, cleanup: IceUnlockAuthFile (filename); - for (i = 0; i < server->priv->num_local_xsmp_sockets; i++) { + for (i = 0; i < server->num_local_xsmp_sockets; i++) { free (our_network_ids[i]); } g_free (our_network_ids); @@ -597,8 +599,8 @@ setup_listener (GsmXsmpServer *server) */ saved_umask = umask (0); umask (saved_umask); - res = IceListenForConnections (&server->priv->num_xsmp_sockets, - &server->priv->xsmp_sockets, + res = IceListenForConnections (&server->num_xsmp_sockets, + &server->xsmp_sockets, sizeof (error), error); if (! res) { @@ -610,27 +612,27 @@ setup_listener (GsmXsmpServer *server) /* Find the local sockets in the returned socket list and move them * to the start of the list. */ - for (i = server->priv->num_local_xsmp_sockets = 0; i < server->priv->num_xsmp_sockets; i++) { - char *id = IceGetListenConnectionString (server->priv->xsmp_sockets[i]); + for (i = server->num_local_xsmp_sockets = 0; i < server->num_xsmp_sockets; i++) { + char *id = IceGetListenConnectionString (server->xsmp_sockets[i]); if (!strncmp (id, "local/", sizeof ("local/") - 1) || !strncmp (id, "unix/", sizeof ("unix/") - 1)) { - if (i > server->priv->num_local_xsmp_sockets) { + if (i > server->num_local_xsmp_sockets) { IceListenObj tmp; - tmp = server->priv->xsmp_sockets[i]; - server->priv->xsmp_sockets[i] = server->priv->xsmp_sockets[server->priv->num_local_xsmp_sockets]; - server->priv->xsmp_sockets[server->priv->num_local_xsmp_sockets] = tmp; + tmp = server->xsmp_sockets[i]; + server->xsmp_sockets[i] = server->xsmp_sockets[server->num_local_xsmp_sockets]; + server->xsmp_sockets[server->num_local_xsmp_sockets] = tmp; } - server->priv->num_local_xsmp_sockets++; + server->num_local_xsmp_sockets++; } free (id); } - if (server->priv->num_local_xsmp_sockets == 0) { + if (server->num_local_xsmp_sockets == 0) { gsm_util_init_error (TRUE, "IceListenForConnections did not return a local listener!"); } - if (server->priv->num_local_xsmp_sockets != server->priv->num_xsmp_sockets) { + if (server->num_local_xsmp_sockets != server->num_xsmp_sockets) { /* Xtrans was apparently compiled with support for some * non-local transport besides TCP (which we disabled above); we * won't create IO watches on those extra sockets, so @@ -641,10 +643,10 @@ setup_listener (GsmXsmpServer *server) * stop it, the fix is to add additional _IceTransNoListen() * calls above. */ - network_id_list = IceComposeNetworkIdList (server->priv->num_xsmp_sockets - server->priv->num_local_xsmp_sockets, - server->priv->xsmp_sockets + server->priv->num_local_xsmp_sockets); + network_id_list = IceComposeNetworkIdList (server->num_xsmp_sockets - server->num_local_xsmp_sockets, + server->xsmp_sockets + server->num_local_xsmp_sockets); g_warning ("IceListenForConnections returned %d non-local listeners: %s", - server->priv->num_xsmp_sockets - server->priv->num_local_xsmp_sockets, + server->num_xsmp_sockets - server->num_local_xsmp_sockets, network_id_list); free (network_id_list); } @@ -657,8 +659,8 @@ setup_listener (GsmXsmpServer *server) IceAuthFileName ()); } - network_id_list = IceComposeNetworkIdList (server->priv->num_local_xsmp_sockets, - server->priv->xsmp_sockets); + network_id_list = IceComposeNetworkIdList (server->num_local_xsmp_sockets, + server->xsmp_sockets); gsm_util_setenv ("SESSION_MANAGER", network_id_list); g_debug ("GsmXsmpServer: SESSION_MANAGER=%s\n", network_id_list); @@ -697,15 +699,11 @@ gsm_xsmp_server_class_init (GsmXsmpServerClass *klass) NULL, GSM_TYPE_STORE, G_PARAM_READWRITE | G_PARAM_CONSTRUCT)); - - g_type_class_add_private (klass, sizeof (GsmXsmpServerPrivate)); } static void gsm_xsmp_server_init (GsmXsmpServer *xsmp_server) { - xsmp_server->priv = GSM_XSMP_SERVER_GET_PRIVATE (xsmp_server); - } static void @@ -718,13 +716,13 @@ gsm_xsmp_server_finalize (GObject *object) xsmp_server = GSM_XSMP_SERVER (object); - g_return_if_fail (xsmp_server->priv != NULL); + g_return_if_fail (xsmp_server != NULL); - IceFreeListenObjs (xsmp_server->priv->num_xsmp_sockets, - xsmp_server->priv->xsmp_sockets); + IceFreeListenObjs (xsmp_server->num_xsmp_sockets, + xsmp_server->xsmp_sockets); - if (xsmp_server->priv->client_store != NULL) { - g_object_unref (xsmp_server->priv->client_store); + if (xsmp_server->client_store != NULL) { + g_object_unref (xsmp_server->client_store); } G_OBJECT_CLASS (gsm_xsmp_server_parent_class)->finalize (object); diff --git a/gnome-session/gsm-xsmp-server.h b/gnome-session/gsm-xsmp-server.h index ae9188cb..95d704dc 100644 --- a/gnome-session/gsm-xsmp-server.h +++ b/gnome-session/gsm-xsmp-server.h @@ -28,26 +28,7 @@ G_BEGIN_DECLS #define GSM_TYPE_XSMP_SERVER (gsm_xsmp_server_get_type ()) -#define GSM_XSMP_SERVER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSM_TYPE_XSMP_SERVER, GsmXsmpServer)) -#define GSM_XSMP_SERVER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSM_TYPE_XSMP_SERVER, GsmXsmpServerClass)) -#define GSM_IS_XSMP_SERVER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSM_TYPE_XSMP_SERVER)) -#define GSM_IS_XSMP_SERVER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSM_TYPE_XSMP_SERVER)) -#define GSM_XSMP_SERVER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GSM_TYPE_XSMP_SERVER, GsmXsmpServerClass)) - -typedef struct GsmXsmpServerPrivate GsmXsmpServerPrivate; - -typedef struct -{ - GObject parent; - GsmXsmpServerPrivate *priv; -} GsmXsmpServer; - -typedef struct -{ - GObjectClass parent_class; -} GsmXsmpServerClass; - -GType gsm_xsmp_server_get_type (void); +G_DECLARE_FINAL_TYPE (GsmXsmpServer, gsm_xsmp_server, GSM, XSMP_SERVER, GObject) GsmXsmpServer * gsm_xsmp_server_new (GsmStore *client_store); void gsm_xsmp_server_start (GsmXsmpServer *server); |