@@ -124,10 +124,15 @@ if (element != nil) { rosterItem = [self XMPP_rosterItemWithXMLElement: element]; [self XMPP_updateRosterItem: rosterItem]; + + [delegates broadcastSelector: @selector( + roster:didReceiveRosterItem:) + withObject: self + withObject: rosterItem]; } if ([connection supportsRosterVersioning]) { OFString *ver = [[rosterElement attributeForName: @"ver"] stringValue]; @@ -134,15 +139,10 @@ [dataStorage setStringValue: ver forPath: @"roster.ver"]; [dataStorage save]; } - [delegates broadcastSelector: @selector( - roster:didReceiveRosterItem:) - withObject: self - withObject: rosterItem]; - [connection_ sendStanza: [iq resultIQ]]; return YES; }