# HG changeset patch # User John Bailey # Date 1229315100 0 # Node ID 041bb386bf96bf090f2fff4e0bd943311e985bf8 # Parent 508e579434409c51a74615aaefe125b2eb911c39# Parent 6efcf61cf12ba6f3b30486b104730c69ae67672b merge of '52e2a425de43a95def135fff5a6dbe87ed39acb5' and 'f02bc5ac62535f523c8db8f5ee5ae43aa10bc614' diff -r 508e57943440 -r 041bb386bf96 ChangeLog --- a/ChangeLog Mon Dec 15 04:20:28 2008 +0000 +++ b/ChangeLog Mon Dec 15 04:25:00 2008 +0000 @@ -42,6 +42,8 @@ album, if possible. * Messages sent from a mobile device while you were offline are now correctly received. + * Server transfers after you've been connected for a long time should + now be handled correctly. * Many other fixes and code cleanup. SIMPLE: diff -r 508e57943440 -r 041bb386bf96 libpurple/protocols/msn/session.c --- a/libpurple/protocols/msn/session.c Mon Dec 15 04:20:28 2008 +0000 +++ b/libpurple/protocols/msn/session.c Mon Dec 15 04:25:00 2008 +0000 @@ -448,6 +448,8 @@ PurpleConnection *gc; PurpleStoredImage *img; + msn_change_status(session); + if (session->logged_in) return; @@ -462,8 +464,6 @@ session->logged_in = TRUE; - msn_change_status(session); - purple_connection_set_state(gc, PURPLE_CONNECTED); /* Sync users */ diff -r 508e57943440 -r 041bb386bf96 libpurple/protocols/myspace/message.c --- a/libpurple/protocols/myspace/message.c Mon Dec 15 04:20:28 2008 +0000 +++ b/libpurple/protocols/myspace/message.c Mon Dec 15 04:25:00 2008 +0000 @@ -23,6 +23,7 @@ #include "message.h" static void msim_msg_free_element(gpointer data, gpointer user_data); +static MsimMessage *msim_msg_append_dynamic_name(MsimMessage *msg, gchar *name, MsimMessageType type, gpointer data); static void msim_msg_debug_string_element(gpointer data, gpointer user_data); static gchar *msim_msg_pack_using(MsimMessage *msg, GFunc gf, const gchar *sep, const gchar *begin, const gchar *end); static GList *msim_msg_get_node(MsimMessage *msg, const gchar *name); @@ -357,7 +358,10 @@ /* Append cloned data. Note that the 'name' field is a static string, so it * never needs to be copied nor freed. */ - *new = msim_msg_append(*new, elem->name, elem->type, new_data); + if (elem->dynamic_name) + *new = msim_msg_append_dynamic_name(*new, g_strdup(elem->name), elem->type, new_data); + else + *new = msim_msg_append(*new, elem->name, elem->type, new_data); } /** Clone an existing MsimMessage.