diff options
author | Eoin Coffey <ecoffey@soc.pidgin.im> | 2008-01-31 02:23:55 +0000 |
---|---|---|
committer | Eoin Coffey <ecoffey@soc.pidgin.im> | 2008-01-31 02:23:55 +0000 |
commit | 5744bd624d403ac41597bb25cb2dd4ab3745db27 (patch) | |
tree | 32031b8872c71e408e13d1e5c781b01e5369cdd1 | |
parent | b9aa864c2ffbff0b20904e2167c9925f66df8355 (diff) | |
download | pidgin-5744bd624d403ac41597bb25cb2dd4ab3745db27.tar.gz |
Made account.c use purple_connection_get_prpl instead of gc->prpl.
For the next minor bump would be useful to add getters for gc->flags and gc->wants_to_die.
This was done with the blessing of rekkanoryo.
-rw-r--r-- | libpurple/account.c | 66 |
1 files changed, 47 insertions, 19 deletions
diff --git a/libpurple/account.c b/libpurple/account.c index 8a3c7da810..a4acbf7067 100644 --- a/libpurple/account.c +++ b/libpurple/account.c @@ -2200,9 +2200,13 @@ purple_account_add_buddy(PurpleAccount *account, PurpleBuddy *buddy) { PurplePluginProtocolInfo *prpl_info = NULL; PurpleConnection *gc = purple_account_get_connection(account); + PurplePlugin *prpl = NULL; + + if (gc != NULL) + prpl = purple_connection_get_prpl(gc); - if (gc != NULL && gc->prpl != NULL) - prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl); + if (prpl != NULL) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); if (prpl_info != NULL && prpl_info->add_buddy != NULL) prpl_info->add_buddy(gc, buddy, purple_buddy_get_group(buddy)); @@ -2213,10 +2217,14 @@ purple_account_add_buddies(PurpleAccount *account, GList *buddies) { PurplePluginProtocolInfo *prpl_info = NULL; PurpleConnection *gc = purple_account_get_connection(account); + PurplePlugin *prpl = NULL; + + if (gc != NULL) + prpl = purple_connection_get_prpl(gc); - if (gc != NULL && gc->prpl != NULL) - prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl); - + if (prpl != NULL) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); + if (prpl_info) { GList *cur, *groups = NULL; @@ -2248,10 +2256,14 @@ purple_account_remove_buddy(PurpleAccount *account, PurpleBuddy *buddy, { PurplePluginProtocolInfo *prpl_info = NULL; PurpleConnection *gc = purple_account_get_connection(account); + PurplePlugin *prpl = NULL; + + if (gc != NULL) + prpl = purple_connection_get_prpl(gc); - if (gc != NULL && gc->prpl != NULL) - prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl); - + if (prpl != NULL) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); + if (prpl_info && prpl_info->remove_buddy) prpl_info->remove_buddy(gc, buddy, group); } @@ -2261,10 +2273,14 @@ purple_account_remove_buddies(PurpleAccount *account, GList *buddies, GList *gro { PurplePluginProtocolInfo *prpl_info = NULL; PurpleConnection *gc = purple_account_get_connection(account); + PurplePlugin *prpl = NULL; + + if (gc != NULL) + prpl = purple_connection_get_prpl(gc); - if (gc != NULL && gc->prpl != NULL) - prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl); - + if (prpl != NULL) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); + if (prpl_info) { if (prpl_info->remove_buddies) prpl_info->remove_buddies(gc, buddies, groups); @@ -2285,9 +2301,13 @@ purple_account_remove_group(PurpleAccount *account, PurpleGroup *group) { PurplePluginProtocolInfo *prpl_info = NULL; PurpleConnection *gc = purple_account_get_connection(account); + PurplePlugin *prpl = NULL; + + if (gc != NULL) + prpl = purple_connection_get_prpl(gc); - if (gc != NULL && gc->prpl != NULL) - prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl); + if (prpl != NULL) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); if (prpl_info && prpl_info->remove_group) prpl_info->remove_group(gc, group); @@ -2299,11 +2319,15 @@ purple_account_change_password(PurpleAccount *account, const char *orig_pw, { PurplePluginProtocolInfo *prpl_info = NULL; PurpleConnection *gc = purple_account_get_connection(account); - + PurplePlugin *prpl = NULL; + purple_account_set_password(account, new_pw); + + if (gc != NULL) + prpl = purple_connection_get_prpl(gc); - if (gc != NULL && gc->prpl != NULL) - prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl); + if (prpl != NULL) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); if (prpl_info && prpl_info->change_passwd) prpl_info->change_passwd(gc, orig_pw, new_pw); @@ -2312,16 +2336,20 @@ purple_account_change_password(PurpleAccount *account, const char *orig_pw, gboolean purple_account_supports_offline_message(PurpleAccount *account, PurpleBuddy *buddy) { PurpleConnection *gc; - PurplePluginProtocolInfo *prpl_info; - + PurplePluginProtocolInfo *prpl_info = NULL; + PurplePlugin *prpl = NULL; + g_return_val_if_fail(account, FALSE); g_return_val_if_fail(buddy, FALSE); gc = purple_account_get_connection(account); if (gc == NULL) return FALSE; + + prpl = purple_connection_get_prpl(gc); - prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl); + if (prpl != NULL) + prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); if (!prpl_info || !prpl_info->offline_message) return FALSE; |