# HG changeset patch # User Elliott Sales de Andrade # Date 1261007127 0 # Node ID fe607234b0d8b422f693a6e0bf3c3527b0c3316e # Parent 3d34a0870920a8a8d226a0295f8998b53d71db91 When looping through the request fields, don't try to disconnect a field if it doesn't actually refer to an endpoint. diff -r 3d34a0870920 -r fe607234b0d8 libpurple/protocols/msn/msn.c --- a/libpurple/protocols/msn/msn.c Tue Dec 15 08:57:37 2009 +0000 +++ b/libpurple/protocols/msn/msn.c Wed Dec 16 23:45:27 2009 +0000 @@ -388,8 +388,11 @@ for (others = purple_request_field_group_get_fields(data->group); others; others = g_list_next(others)) { - if (!purple_request_field_bool_get_value(others->data)) { - const char *id = purple_request_field_get_id(others->data); + PurpleRequestField *field = others->data; + if (purple_request_field_get_type(field) != PURPLE_REQUEST_FIELD_BOOLEAN) + continue; + if (!purple_request_field_bool_get_value(field)) { + const char *id = purple_request_field_get_id(field); char *user; purple_debug_info("msn", "Disconnecting Endpoint %s\n", id);