Fri, 01 Nov 2024 01:32:55 -0500
Update the protocols to the new connection state api
This is really just replacing call to Purple.Connection.set_state with
Purple.Account.connected as everything else was already transitioned.
Testing Done:
Compiled and verified a demo account connected properly. Also called in the turtles for good measure.
Bugs closed: PIDGIN-17988
Reviewed at https://reviews.imfreedom.org/r/3614/
--- a/protocols/bonjour/purplebonjourconnection.c Fri Nov 01 01:31:09 2024 -0500 +++ b/protocols/bonjour/purplebonjourconnection.c Fri Nov 01 01:32:55 2024 -0500 @@ -46,9 +46,6 @@ g_return_val_if_fail(PURPLE_BONJOUR_IS_CONNECTION(purple_connection), FALSE); - purple_connection_set_state(purple_connection, - PURPLE_CONNECTION_STATE_CONNECTING); - connection = PURPLE_BONJOUR_CONNECTION(purple_connection); cancellable = purple_connection_get_cancellable(purple_connection); account = purple_connection_get_account(purple_connection); @@ -60,8 +57,7 @@ /* Eventually, we will do something before this, but we can go straight to * connected for now. */ - purple_connection_set_state(purple_connection, - PURPLE_CONNECTION_STATE_CONNECTED); + purple_account_connected(account); return TRUE; }
--- a/protocols/demo/purpledemoconnection.c Fri Nov 01 01:31:09 2024 -0500 +++ b/protocols/demo/purpledemoconnection.c Fri Nov 01 01:32:55 2024 -0500 @@ -44,7 +44,7 @@ purple_contact_info_set_id(info, username); purple_contact_info_set_username(info, username); - purple_connection_set_state(connection, PURPLE_CONNECTION_STATE_CONNECTED); + purple_account_connected(account); purple_demo_contacts_load(account);
--- a/protocols/ircv3/purpleircv3connection.c Fri Nov 01 01:31:09 2024 -0500 +++ b/protocols/ircv3/purpleircv3connection.c Fri Nov 01 01:32:55 2024 -0500 @@ -539,17 +539,13 @@ gpointer data) { PurpleConnection *connection = data; - PurpleConnectionState state = PURPLE_CONNECTION_STATE_DISCONNECTED; IbisClient *client = IBIS_CLIENT(source); - /* We don't consider the account connected until registration has finished, - * but we are for sure connecting when the ibis client is connected. - */ - if(ibis_client_get_connected(client)) { - state = PURPLE_CONNECTION_STATE_CONNECTING; + if(!ibis_client_get_connected(client)) { + PurpleAccount *account = purple_connection_get_account(connection); + + purple_account_disconnect(account); } - - purple_connection_set_state(connection, state); } static void @@ -565,8 +561,7 @@ account = purple_connection_get_account(connection); if(!purple_account_is_connected(account)) { - purple_connection_set_state(connection, - PURPLE_CONNECTION_STATE_CONNECTED); + purple_account_connected(account); } /* Once reconnected, we need to rejoin any channels that the
--- a/protocols/xmpp/purplexmppconnection.c Fri Nov 01 01:31:09 2024 -0500 +++ b/protocols/xmpp/purplexmppconnection.c Fri Nov 01 01:32:55 2024 -0500 @@ -42,26 +42,25 @@ purple_xmpp_connection_connect_cb(GObject *source, GAsyncResult *result, gpointer data) { - PurpleXmppConnection *connection = data; + PurpleXmppConnection *xmpp_connection = data; + PurpleAccount *account = NULL; + PurpleConnection *connection = data; XemeOutputStream *output = NULL; GError *error = NULL; output = xeme_connection_connect_finish(XEME_CONNECTION(source), result, &error); + + account = purple_connection_get_account(connection); if(error != NULL) { - PurpleAccount *account = NULL; - - account = purple_connection_get_account(PURPLE_CONNECTION(connection)); - purple_account_disconnect_with_error(account, error); return; } - connection->output = output; + xmpp_connection->output = output; - purple_connection_set_state(PURPLE_CONNECTION(connection), - PURPLE_CONNECTION_STATE_CONNECTED); + purple_account_connected(account); } /****************************************************************************** @@ -86,9 +85,6 @@ g_return_val_if_fail(PURPLE_XMPP_IS_CONNECTION(purple_connection), FALSE); - purple_connection_set_state(purple_connection, - PURPLE_CONNECTION_STATE_CONNECTING); - connection = PURPLE_XMPP_CONNECTION(purple_connection); cancellable = purple_connection_get_cancellable(purple_connection); account = purple_connection_get_account(purple_connection);