| 189 } |
189 } |
| 190 |
190 |
| 191 static void |
191 static void |
| 192 update_to_reflect_account_status(PidginStatusBox *status_box, PurpleAccount *account, PurpleStatus *newstatus) |
192 update_to_reflect_account_status(PidginStatusBox *status_box, PurpleAccount *account, PurpleStatus *newstatus) |
| 193 { |
193 { |
| 194 const GList *l; |
194 GList *l; |
| 195 int status_no = -1; |
195 int status_no = -1; |
| 196 const PurpleStatusType *statustype = NULL; |
196 const PurpleStatusType *statustype = NULL; |
| 197 const char *message; |
197 const char *message; |
| 198 |
198 |
| 199 statustype = purple_status_type_find_with_id((GList *)purple_account_get_status_types(account), |
199 statustype = purple_status_type_find_with_id((GList *)purple_account_get_status_types(account), |
| 730 } |
730 } |
| 731 |
731 |
| 732 static PurpleStatusType * |
732 static PurpleStatusType * |
| 733 find_status_type_by_index(const PurpleAccount *account, gint active) |
733 find_status_type_by_index(const PurpleAccount *account, gint active) |
| 734 { |
734 { |
| 735 const GList *l = purple_account_get_status_types(account); |
735 GList *l = purple_account_get_status_types(account); |
| 736 gint i; |
736 gint i; |
| 737 |
737 |
| 738 for (i = 0; l; l = l->next) { |
738 for (i = 0; l; l = l->next) { |
| 739 PurpleStatusType *status_type = l->data; |
739 PurpleStatusType *status_type = l->data; |
| 740 if (!purple_status_type_is_user_settable(status_type)) |
740 if (!purple_status_type_is_user_settable(status_type)) |
| 939 * statuses and a token account if they do */ |
939 * statuses and a token account if they do */ |
| 940 static PurpleAccount* check_active_accounts_for_identical_statuses() |
940 static PurpleAccount* check_active_accounts_for_identical_statuses() |
| 941 { |
941 { |
| 942 PurpleAccount *acct = NULL, *acct2; |
942 PurpleAccount *acct = NULL, *acct2; |
| 943 GList *tmp, *tmp2, *active_accts = purple_accounts_get_all_active(); |
943 GList *tmp, *tmp2, *active_accts = purple_accounts_get_all_active(); |
| 944 const GList *s, *s1, *s2; |
944 GList *s, *s1, *s2; |
| 945 |
945 |
| 946 for (tmp = active_accts; tmp; tmp = tmp->next) { |
946 for (tmp = active_accts; tmp; tmp = tmp->next) { |
| 947 acct = tmp->data; |
947 acct = tmp->data; |
| 948 s = purple_account_get_status_types(acct); |
948 s = purple_account_get_status_types(acct); |
| 949 for (tmp2 = tmp->next; tmp2; tmp2 = tmp2->next) { |
949 for (tmp2 = tmp->next; tmp2; tmp2 = tmp2->next) { |
| 2221 |
2221 |
| 2222 if (changed) |
2222 if (changed) |
| 2223 { |
2223 { |
| 2224 /* Manually find the appropriate transient acct */ |
2224 /* Manually find the appropriate transient acct */ |
| 2225 if (status_box->token_status_account) { |
2225 if (status_box->token_status_account) { |
| 2226 const GList *iter = purple_savedstatuses_get_all(); |
2226 GList *iter = purple_savedstatuses_get_all(); |
| 2227 GList *tmp, *active_accts = purple_accounts_get_all_active(); |
2227 GList *tmp, *active_accts = purple_accounts_get_all_active(); |
| 2228 |
2228 |
| 2229 for (; iter != NULL; iter = iter->next) { |
2229 for (; iter != NULL; iter = iter->next) { |
| 2230 PurpleSavedStatus *ss = iter->data; |
2230 PurpleSavedStatus *ss = iter->data; |
| 2231 const char *ss_msg = purple_savedstatus_get_message(ss); |
2231 const char *ss_msg = purple_savedstatus_get_message(ss); |