libpurple/account.c

branch
next.minor
changeset 25871
2983039b4515
parent 25859
b42be7bb9dac
parent 25445
b36f23e05c50
child 25888
d0fdd378a635
equal deleted inserted replaced
25870:ccb76c75d39f 25871:2983039b4515
253 253
254 static xmlnode * 254 static xmlnode *
255 statuses_to_xmlnode(const PurplePresence *presence) 255 statuses_to_xmlnode(const PurplePresence *presence)
256 { 256 {
257 xmlnode *node, *child; 257 xmlnode *node, *child;
258 GList *statuses, *status; 258 GList *statuses;
259 PurpleStatus *status;
259 260
260 node = xmlnode_new("statuses"); 261 node = xmlnode_new("statuses");
261 262
262 statuses = purple_presence_get_statuses(presence); 263 statuses = purple_presence_get_statuses(presence);
263 for (status = statuses; status != NULL; status = status->next) 264 for (; statuses != NULL; statuses = statuses->next)
264 { 265 {
265 child = status_to_xmlnode((PurpleStatus *)status->data); 266 status = statuses->data;
266 xmlnode_insert_child(node, child); 267 if (purple_status_type_is_saveable(purple_status_get_type(status)))
268 {
269 child = status_to_xmlnode(status);
270 xmlnode_insert_child(node, child);
271 }
267 } 272 }
268 273
269 return node; 274 return node;
270 } 275 }
271 276

mercurial