Thu, 11 Apr 2024 02:57:34 -0500
Remove PurpleProtocol->login and ->close as they're no longer necessary
These were left around for the old protocols and the replacement code used them
as a fallback.
Testing Done:
Ran with the turtles.
Reviewed at https://reviews.imfreedom.org/r/3081/
--- a/libpurple/connection.c Thu Apr 11 02:17:44 2024 -0500 +++ b/libpurple/connection.c Thu Apr 11 02:57:34 2024 -0500 @@ -683,41 +683,6 @@ } /************************************************************************** - * PurpleConnection Implementation - **************************************************************************/ -static gboolean -purple_connection_default_connect(PurpleConnection *connection, - G_GNUC_UNUSED GError **error) -{ - PurpleConnectionPrivate *priv = NULL; - - priv = purple_connection_get_instance_private(connection); - - purple_protocol_login(priv->protocol, priv->account); - - return TRUE; -} - -static gboolean -purple_connection_default_disconnect(PurpleConnection *connection, - G_GNUC_UNUSED GError **error) -{ - PurpleConnectionPrivate *priv = NULL; - - priv = purple_connection_get_instance_private(connection); - - /* Tell everyone we're shutting down. */ - if(G_IS_CANCELLABLE(priv->cancellable)) { - g_cancellable_cancel(priv->cancellable); - g_clear_object(&priv->cancellable); - } - - purple_protocol_close(priv->protocol, connection); - - return TRUE; -} - -/************************************************************************** * GObject Implementation **************************************************************************/ static void @@ -877,9 +842,6 @@ obj_class->finalize = purple_connection_finalize; obj_class->constructed = purple_connection_constructed; - klass->connect = purple_connection_default_connect; - klass->disconnect = purple_connection_default_disconnect; - /** * PurpleConnection:id: *
--- a/libpurple/connection.h Thu Apr 11 02:17:44 2024 -0500 +++ b/libpurple/connection.h Thu Apr 11 02:57:34 2024 -0500 @@ -195,9 +195,6 @@ * [vfunc@Purple.Connection.connect] function. State is managed by this * function. * - * The default [vfunc@Purple.Connection.connect] is to call - * [vfunc@Purple.Protocol.login]. - * * Due to the asynchronous nature of network connections, the return value and * @error are to be used to do some initial validation before a connection is * actually attempted. @@ -219,9 +216,6 @@ * [vfunc@Purple.Connection.disconnect] function. State is managed by this * function. * - * The default [vfunc@Purple.Connection.disconnect] is to call - * [vfunc@Purple.Protocol.close]. - * * Returns: %TRUE if the account was disconnected gracefully, otherwise %FALSE * with @error possibly set. *
--- a/libpurple/purpleprotocol.c Thu Apr 11 02:17:44 2024 -0500 +++ b/libpurple/purpleprotocol.c Thu Apr 11 02:57:34 2024 -0500 @@ -520,32 +520,6 @@ } void -purple_protocol_login(PurpleProtocol *protocol, PurpleAccount *account) { - PurpleProtocolClass *klass = NULL; - - g_return_if_fail(PURPLE_IS_PROTOCOL(protocol)); - g_return_if_fail(PURPLE_IS_ACCOUNT(account)); - - klass = PURPLE_PROTOCOL_GET_CLASS(protocol); - if(klass != NULL && klass->login != NULL) { - klass->login(protocol, account); - } -} - -void -purple_protocol_close(PurpleProtocol *protocol, PurpleConnection *gc) { - PurpleProtocolClass *klass = NULL; - - g_return_if_fail(PURPLE_IS_PROTOCOL(protocol)); - g_return_if_fail(PURPLE_IS_CONNECTION(gc)); - - klass = PURPLE_PROTOCOL_GET_CLASS(protocol); - if(klass != NULL && klass->close != NULL) { - klass->close(protocol, gc); - } -} - -void purple_protocol_can_connect_async(PurpleProtocol *protocol, PurpleAccount *account, GCancellable *cancellable,
--- a/libpurple/purpleprotocol.h Thu Apr 11 02:17:44 2024 -0500 +++ b/libpurple/purpleprotocol.h Thu Apr 11 02:57:34 2024 -0500 @@ -142,10 +142,6 @@ PurpleBuddyIconSpec *(*get_buddy_icon_spec)(PurpleProtocol *protocol); PurpleWhiteboardOps *(*get_whiteboard_ops)(PurpleProtocol *protocol); - void (*login)(PurpleProtocol *protocol, PurpleAccount *account); - - void (*close)(PurpleProtocol *protocol, PurpleConnection *connection); - void (*can_connect_async)(PurpleProtocol *protocol, PurpleAccount *account, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data); gboolean (*can_connect_finish)(PurpleProtocol *protocol, GAsyncResult *result, GError **error); @@ -284,30 +280,6 @@ PurpleWhiteboardOps *purple_protocol_get_whiteboard_ops(PurpleProtocol *protocol); /** - * purple_protocol_login: - * @protocol: The instance. - * @account: The [class@Purple.Account] to login. - * - * Logs @account in to @protocol. - * - * Since: 3.0 - */ -PURPLE_AVAILABLE_IN_3_0 -void purple_protocol_login(PurpleProtocol *protocol, PurpleAccount *account); - -/** - * purple_protocol_close: - * @protocol: The #PurpleProtocol instance. - * @connection: The #PurpleConnection to close. - * - * Closes @connection using @protocol. - * - * Since: 3.0 - */ -PURPLE_AVAILABLE_IN_3_0 -void purple_protocol_close(PurpleProtocol *protocol, PurpleConnection *connection); - -/** * purple_protocol_can_connect_async: * @protocol: The instance. * @account: The [class@Purple.Account] instance.