# HG changeset patch # User Jorge VillaseƱor # Date 1284843371 0 # Node ID f957ef5f187d317d5bf4188e1caa1c9dfd31934e # Parent dcc26c5e9d7e06b8d8840d0f31dc13e70df1fbeb Fix a crash when we want to remove a user that is not in the switchboard. diff -r dcc26c5e9d7e -r f957ef5f187d libpurple/protocols/msn/switchboard.c --- a/libpurple/protocols/msn/switchboard.c Wed Sep 15 17:34:21 2010 +0000 +++ b/libpurple/protocols/msn/switchboard.c Sat Sep 18 20:56:11 2010 +0000 @@ -658,7 +658,10 @@ purple_conv_chat_remove_user(PURPLE_CONV_CHAT(swboard->conv), user, NULL); passport = g_list_find_custom(swboard->users, user, (GCompareFunc)strcmp); - g_free(passport->data); + if (passport) + g_free(passport->data); + else + purple_debug_warning("msn", "Can't find user %s in the switchboard\n", user); swboard->users = g_list_delete_link(swboard->users, passport); swboard->current_users--; if (swboard->current_users == 0)