diff options
-rw-r--r-- | protocols/msn/soap.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/protocols/msn/soap.c b/protocols/msn/soap.c index 026ac3b8..57e1800b 100644 --- a/protocols/msn/soap.c +++ b/protocols/msn/soap.c @@ -878,14 +878,16 @@ static int msn_soap_addressbook_handle_response( struct msn_soap_req_data *soap_ struct bee_user *bu = l->data; struct msn_buddy_data *bd = bu->data; - if( bu->ic == soap_req->ic ) - msn_buddy_ask( bu ); - - if( ( bd->flags & ( MSN_BUDDY_AL | MSN_BUDDY_BL ) ) == - ( MSN_BUDDY_AL | MSN_BUDDY_BL ) ) + if( bu->ic == soap_req->ic && bd ) { - bd->flags &= ~MSN_BUDDY_BL; - wtf++; + msn_buddy_ask( bu ); + + if( ( bd->flags & ( MSN_BUDDY_AL | MSN_BUDDY_BL ) ) == + ( MSN_BUDDY_AL | MSN_BUDDY_BL ) ) + { + bd->flags &= ~MSN_BUDDY_BL; + wtf++; + } } } |