Mercurial > pidgin.yaz
changeset 30557:f5d4d3800e81
merge of '0c5825d5c8cf7e382a744e266bb4c67753d24db4'
and '25efd792c3cc52430ed464eaeb331c3ee9fd9ced'
author | John Bailey <rekkanoryo@rekkanoryo.org> |
---|---|
date | Sun, 30 May 2010 00:46:45 +0000 |
parents | d60313011111 (diff) a84207b9d171 (current diff) |
children | 85c8e526f499 |
files | |
diffstat | 2 files changed, 10 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/msn/slplink.c Sat May 29 18:42:36 2010 +0000 +++ b/libpurple/protocols/msn/slplink.c Sun May 30 00:46:45 2010 +0000 @@ -209,6 +209,7 @@ * If nothing else is using it then this might cause swboard to be * destroyed. */ if (slplink->slp_calls == NULL && slplink->swboard != NULL) { + slplink->swboard->slplinks = g_list_remove(slplink->swboard->slplinks, slplink); msn_switchboard_release(slplink->swboard, MSN_SB_FLAG_FT); slplink->swboard = NULL; }
--- a/libpurple/upnp.c Sat May 29 18:42:36 2010 +0000 +++ b/libpurple/upnp.c Sun May 30 00:46:45 2010 +0000 @@ -919,16 +919,20 @@ GSList *l; /* Remove ar from discovery_callbacks if present; it was inserted after a cb. - * The same cb may be in the list multple times, so be careful to remove the one assocaited with ar. */ - l = discovery_callbacks; + * The same cb may be in the list multiple times, so be careful to remove + * the one associated with ar. */ + l = discovery_callbacks; while (l) { - if (l->next && (l->next->data == ar)) { - discovery_callbacks = g_slist_delete_link(discovery_callbacks, l->next); + GSList *next = l->next; + + if (next && (next->data == ar)) { + discovery_callbacks = g_slist_delete_link(discovery_callbacks, next); + next = l->next; discovery_callbacks = g_slist_delete_link(discovery_callbacks, l); } - l = l->next; + l = next; } if (ar->tima > 0)