pidgin/gtkblist.c

changeset 40803
0e11ce1049b2
parent 40785
88c8797ac9cc
child 40813
71305a7d7423
--- a/pidgin/gtkblist.c	Tue Mar 02 22:50:02 2021 -0600
+++ b/pidgin/gtkblist.c	Tue Mar 02 23:06:11 2021 -0600
@@ -375,7 +375,7 @@
 	char *chat_name = NULL;
 
 	account = purple_chat_get_account(chat);
-	protocol = purple_protocols_find(purple_account_get_protocol_id(account));
+	protocol = purple_account_get_protocol(account);
 
 	components = purple_chat_get_components(chat);
 
@@ -732,7 +732,7 @@
 		PurpleProtocol *protocol = NULL;
 		type = PURPLE_LOG_CHAT;
 		account = purple_chat_get_account(c);
-		protocol = purple_protocols_find(purple_account_get_protocol_id(account));
+		protocol = purple_account_get_protocol(account);
 		if (protocol) {
 			name = purple_protocol_chat_get_name(PURPLE_PROTOCOL_CHAT(protocol),
 			                                     purple_chat_get_components(c));
@@ -898,8 +898,7 @@
 	PidginAddBuddyData *data = user_data;
 	const char *text;
 
-	protocol = purple_protocols_find(purple_account_get_protocol_id(
-		data->rq_data.account));
+	protocol = purple_account_get_protocol(data->rq_data.account);
 	text = gtk_entry_get_text(GTK_ENTRY(entry));
 
 	gtk_dialog_set_response_sensitive(GTK_DIALOG(data->rq_data.window),
@@ -1981,16 +1980,18 @@
 	/* Double middle click gets info */
 	} else if ((event->button == GDK_BUTTON_MIDDLE) && (event->type == GDK_2BUTTON_PRESS) &&
 			   ((PURPLE_IS_CONTACT(node)) || (PURPLE_IS_BUDDY(node)))) {
+		PurpleAccount *account;
 		PurpleBuddy *b;
 		if(PURPLE_IS_CONTACT(node))
 			b = purple_contact_get_priority_buddy((PurpleContact*)node);
 		else
 			b = (PurpleBuddy *)node;
 
-		protocol = purple_protocols_find(purple_account_get_protocol_id(purple_buddy_get_account(b)));
+		account = purple_buddy_get_account(b);
+		protocol = purple_account_get_protocol(account);
 
 		if (protocol && PURPLE_PROTOCOL_IMPLEMENTS(protocol, SERVER, get_info))
-			pidgin_retrieve_user_info(purple_account_get_connection(purple_buddy_get_account(b)), purple_buddy_get_name(b));
+			pidgin_retrieve_user_info(purple_account_get_connection(account), purple_buddy_get_name(b));
 		handled = TRUE;
 	}
 
@@ -3261,6 +3262,7 @@
 
 	if (PURPLE_IS_CHAT(node))
 	{
+		PurpleAccount *account;
 		PurpleChat *chat;
 		GList *connections;
 		GList *cur = NULL;
@@ -3270,12 +3272,13 @@
 		PidginBlistNode *bnode = g_object_get_data(G_OBJECT(node), UI_DATA);
 
 		chat = (PurpleChat *)node;
-		protocol = purple_protocols_find(purple_account_get_protocol_id(purple_chat_get_account(chat)));
+		account = purple_chat_get_account(chat);
+		protocol = purple_account_get_protocol(account);
 
 		connections = purple_connections_get_all();
 		if (connections && connections->next)
 		{
-			tmp = g_markup_escape_text(purple_account_get_username(purple_chat_get_account(chat)), -1);
+			tmp = g_markup_escape_text(purple_account_get_username(account), -1);
 			g_string_append_printf(str, _("<b>Account:</b> %s"), tmp);
 			g_free(tmp);
 		}
@@ -3292,7 +3295,7 @@
 			}
 
 			conv = purple_conversations_find_chat_with_account(chat_name,
-					purple_chat_get_account(chat));
+			                                                   account);
 			g_free(chat_name);
 		}
 
@@ -3310,7 +3313,7 @@
 
 		if(protocol) {
 			cur = purple_protocol_chat_info(PURPLE_PROTOCOL_CHAT(protocol),
-			                                purple_account_get_connection(purple_chat_get_account(chat)));
+			                                purple_account_get_connection(account));
 		}
 
 		while (cur != NULL)
@@ -3340,6 +3343,7 @@
 		/* NOTE: THIS FUNCTION IS NO LONGER CALLED FOR CONTACTS.
 		 * It is only called by create_tip_for_node(), and create_tip_for_node() is never called for a contact.
 		 */
+		PurpleAccount *account;
 		PurpleContact *c;
 		PurpleBuddy *b;
 		PurplePresence *presence;
@@ -3360,7 +3364,8 @@
 			c = purple_buddy_get_contact(b);
 		}
 
-		protocol = purple_protocols_find(purple_account_get_protocol_id(purple_buddy_get_account(b)));
+		account = purple_buddy_get_account(b);
+		protocol = purple_account_get_protocol(account);
 
 		presence = purple_buddy_get_presence(b);
 		user_info = purple_notify_user_info_new();
@@ -3370,7 +3375,7 @@
 		if (full && connections && connections->next)
 		{
 			purple_notify_user_info_add_pair_plaintext(user_info, _("Account"),
-					purple_account_get_username(purple_buddy_get_account(b)));
+					purple_account_get_username(account));
 		}
 
 		/* Alias */
@@ -3476,9 +3481,7 @@
 			purple_notify_user_info_add_pair_plaintext(user_info, _("Status"), _("Offline"));
 		}
 
-		if (purple_account_is_connected(purple_buddy_get_account(b)) &&
-				protocol)
-		{
+		if (purple_account_is_connected(account) && protocol) {
 			/* Additional text from the protocol */
 			purple_protocol_client_tooltip_text(PURPLE_PROTOCOL_CLIENT(protocol), b, user_info, full);
 		}
@@ -3565,6 +3568,7 @@
 GdkPixbuf *
 pidgin_blist_get_emblem(PurpleBlistNode *node)
 {
+	PurpleAccount *account;
 	PurpleBuddy *buddy = NULL;
 	PidginBlistNode *gtknode = g_object_get_data(G_OBJECT(node), UI_DATA);
 	PurpleProtocol *protocol;
@@ -3602,7 +3606,8 @@
 
 	g_return_val_if_fail(buddy != NULL, NULL);
 
-	if (!purple_account_privacy_check(purple_buddy_get_account(buddy), purple_buddy_get_name(buddy))) {
+	account = purple_buddy_get_account(buddy);
+	if (!purple_account_privacy_check(account, purple_buddy_get_name(buddy))) {
 		path = g_build_filename(PURPLE_DATADIR, "pidgin", "icons",
 			"hicolor", "16x16", "emblems", "emblem-blocked.png",
 			NULL);
@@ -3644,7 +3649,7 @@
 		return _pidgin_blist_get_cached_emblem(path);
 	}
 
-	protocol = purple_protocols_find(purple_account_get_protocol_id(purple_buddy_get_account(buddy)));
+	protocol = purple_account_get_protocol(account);
 	if (!protocol)
 		return NULL;
 
@@ -3712,7 +3717,7 @@
 		else
 			account = purple_chat_get_account(chat);
 
-		protocol = purple_protocols_find(purple_account_get_protocol_id(account));
+		protocol = purple_account_get_protocol(account);
 		if(!protocol)
 			return NULL;
 	}
@@ -3824,12 +3829,13 @@
 
 	/* Name is all that is needed */
 	if (!aliased || biglist) {
+		PurpleAccount *account = purple_buddy_get_account(b);
 
 		/* Status Info */
-		protocol = purple_protocols_find(purple_account_get_protocol_id(purple_buddy_get_account(b)));
+		protocol = purple_account_get_protocol(account);
 
 		if (protocol && PURPLE_PROTOCOL_IMPLEMENTS(protocol, CLIENT, status_text) &&
-				purple_account_get_connection(purple_buddy_get_account(b))) {
+				purple_account_get_connection(account)) {
 			char *tmp = purple_protocol_client_status_text(PURPLE_PROTOCOL_CLIENT(protocol), b);
 			const char *end;
 

mercurial