diff options
author | Sadrul Habib Chowdhury <sadrul@pidgin.im> | 2009-01-21 18:34:32 +0000 |
---|---|---|
committer | Sadrul Habib Chowdhury <sadrul@pidgin.im> | 2009-01-21 18:34:32 +0000 |
commit | 66c890cd7710e1c07ee7bc95bed1f9cd0d44067d (patch) | |
tree | 15cdc7ea199c0ccfd94029242705c2bbfbe857d9 /libpurple/account.c | |
parent | f94d43d6c507d8faae1d2382e8d495d26a61b21c (diff) | |
parent | de701476e4c93affd10d9348a89d81f4d6d9924e (diff) | |
download | pidgin-66c890cd7710e1c07ee7bc95bed1f9cd0d44067d.tar.gz |
propagate from branch 'im.pidgin.pidgin' (head 1bc731764f9350e649865aa63550c744b0ec3d6f)
to branch 'im.pidgin.pidgin.next.minor' (head ccb76c75d39f35f421e9f8756cab554c17d12416)
Diffstat (limited to 'libpurple/account.c')
-rw-r--r-- | libpurple/account.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/libpurple/account.c b/libpurple/account.c index 75ac6ed27e..cadfe9b6f9 100644 --- a/libpurple/account.c +++ b/libpurple/account.c @@ -255,15 +255,20 @@ static xmlnode * statuses_to_xmlnode(const PurplePresence *presence) { xmlnode *node, *child; - GList *statuses, *status; + GList *statuses; + PurpleStatus *status; node = xmlnode_new("statuses"); statuses = purple_presence_get_statuses(presence); - for (status = statuses; status != NULL; status = status->next) + for (; statuses != NULL; statuses = statuses->next) { - child = status_to_xmlnode((PurpleStatus *)status->data); - xmlnode_insert_child(node, child); + status = statuses->data; + if (purple_status_type_is_saveable(purple_status_get_type(status))) + { + child = status_to_xmlnode(status); + xmlnode_insert_child(node, child); + } } return node; |